Learning through questioning: it's all about context

Sample Training Topics

We make available training courses in those areas that are specific to our work and to our particular expertise. We do not engage in general training courses in Lianja because Lianja itself provides those courses, and they are the experts in what they do. Our areas of expertise are in the area of managing the hundreds or thousands of information points that have to be manged for your application to be successful. Managing information is, in fact, the big challenge in writing good software. The use of our tools and processes to accomplish this very difficult task are what we teach.

Our courses are designed to put what we teach in context. "How would you..." is the start of learning, because the student has to start thinking. Engagement is the key to making what you learn become yours. We teach by starting with questions. We challenge you, as the course progresses, to work together to come up with solutions. Learning is by doing. 

We design our courses based on the needs of the group being served, keeping in mind any time constraints (1-day, 2-days, 3-days, etc.).

Here are topics that we cover as of the moment. Additional topics will be added (such as the PSP Security Framework; integration with an external reporting engine) as we progress in our roadmap.

  • Using xCase to manage data schema and metadata. xCase (www.xcase.com) is simply the best ERD designer that is also extensible. You will learn to import existing data schema into xCase, how to design and modify data effectively, how to use xCase domains and other xCase features, so that your interaction with data design becomes a pleasure, an interesting design puzzle, rather than an overwhelming mass of information that is largely kept in your head. xCase's unlimited design surfaces and reports also assist you in communicating within your development team, and across development teams.
  • Using PSP4Lianja to integrate your use of xCase with your work reduces the amount of repetitive typing greatly. Very greatly. "Develop with your mind, not your fingers" is one of our mottoes.
    • The MetaData Manager imports your current xCase model. It also allows you to input metadata values for all the attributes that Lianja uses both in the database definitions and in the UI. 
    • The PSP4Lianja extension resides in your application, and can be called up to create/update your app tables schema and metadata from the MetaData Manager. It is also used to populate attribute values in your app's UI reflecting the information from the MetaData Manager.
    • The MetaData Manager can generate your data model for non-Lianja backends. xCase can also do this, with full control over all the various attributes particular to the backend in question. Once that backend attribute information is created, we do a better job of converting data types as you go forward, including the ability to supply pre-, mid- and post-processing programs that munge the data from one version to another.
    • The PSP4Lianja extension integrates with Git, so that you know you are always working on the right branch. You can perform the needed actions to work successfully with Git directly from the extension, including using the diffmerge tool of your choice to merge conflicts.
    • The xCase model can be stored in Git through the MetaData Manager (as ADO XML).
    • The Lianja Schema can be stored in Git through the PSP4Lianja extension.
    • The Lianja Database itself can be stored in Git through the PSP4Lianua extension. This makes sharing a common database with your team quite easy, as any team member can get a test database for that version and recreate it in their workspace through the PSP4Lianja extension.
  • Integrating PSP4Lianja In Mobile Development takes the above topics and places it in the context of actual development. All the development we do is web-based development. When this topic is included, we are likely to start with creating a 3-page mobile app with full use of database and UI attributes. In 6 minutes (not counting the Adobe Build time <s>). Then we go about inspecting all the parts of the app. Then the attendees take the same database and metadata, and build an app using other tables. The attendees are encouraged to try to stump the trainer with "how do I" questions.

As mentioned above, we will be adding other topics that are particular to what we do as we go forward.