Selecting a “sample application” for class labs

Class labs are more effective if they use a scenario that builds up to a sample solution. Attendees leave the class feeling they have built something and have a toolkit useful for their environment. The difficulty comes with selecting the scenario. It has to be complex enough to support labs on advanced topics but simple enough to be readily understood.

I once taught a class on database usage that had a rental car agency as the sample application. It was so complicated that some users complained that they did not attend the class to learn the rental-car business. Others who knew the rental-car business complained the business rules in the sample were wrong. These discussions took away from class time and enjoyment. We ended up selecting another scenario when the class was revised.

My most recent lab creation involved a simple case of “login failure” from linux_secure logs. They were easy to discover and examine. The labs were designed to investigate the situation by looking at other data sources and correlating them to the log records. The use of statistical operators  and data visualization in the product were used to discover how often these failures occurred, which accounts were most frequently involved, which geo locations originated the login request and other clues. I’m not a security expert and knew that this was not a very sophisticated example of systems under attack. But it was simple enough for all attendees to immediately grasp and the experts in the class were kind enough to go along with such an elementary use case. (it was, after all, the first class in the curriculum so it was elementary). I am pleased to say that this scenario was used successfully for years.

Recently I notice the class labs were changed to use an e-commerce example. I believe this was done to align the class labs to the documentation examples. Whether this is a good thing or not has been the subject of debate in my latest consulting engagement. This will be a topic for a future blog post.

 

Education, documentation – What’s the difference?

Are training materials just reformatted documentation sections? I’ve been told at times “just copy the documentation” for training materials.  Other times, coworkers express surprise that I am NOT doing that. Recently at a client site, I was told that the training materials should match the documentation “exactly”. They want the same examples and sample app. Benefit cited was the ability to cut an example out of the documentation and paste it in to the app during class labs (therefore eliminating much of the work in building a lab – and the learning).

This is a big topic which will likely be broken into multiple posts. I’ll start with using the same examples in docs and training.

Cutting an pasting from docs to build training materials

This is done – and needs to happen – when the text is about terminology and product description. Documentation is usually started earlier in a project than training. This means terminology, product benefits, feature benefits and role definitions are already worked out and approved by product management. So why not use these sentences? Consistency in terminology is important to the learning process.

Same examples used in both? I will confess to occasionally doing this when  pressed with a deadline and education readiness is part of the decision to release a new product version. However, having docs and education the same is not a good idea because customers will know this was done and will be disappointed. For example, one customer review said something like: I paid $1000 for this course and it’s the same as the docs – what a ripoff! It seemed this customer had read the docs and wanted more. Most of us will agree that more examples are a good thing. Showing the product can handle multiple applications is a good thing. Keeping customers from getting annoyed and bored is a good thing.

Using the same customer application example

Setting up a sample sandbox with loaded data is complicated with some products. In classes, customers might be using this sandbox or a clone. This can be a big win for education if someone else has set up the lab systems. However, if the sandbox environment is too complicated (as is the case with many demo systems), it will impede learning. The labs have to be simple enough to be understood quickly so that time is not wasted trying to figure or the design and logic of the lab environment. But it can’t be so simple that the class attendees think the software can’t handle complex applications – such as theirs. And you don’t want the lab sessions to devolve into discussions about why the samples are not real-world. (I have had this happen with security examples).

Using the same system for demos, doc examples and education can leave the education department vulnerable to changes in the environment that break labs. And if this is discovered during a class, customers will be unhappy. Docs and education are often on different release schedules and demos can be changed at anytime. In a small company with good communication between departments, this might not be much of a problem. In larger companies or companies with departmental silos, training may not know about the changes until customers discover it.

For these reasons, I believe it is better to have the education build and manage their own lab environment.

 

 

Is it Training or Education?

Who cares? No, really. I get this question all the time when I am talking to clients or interviewing. It’s asked in a kind of tone that indicates the person does not want to offend or look silly. I use the terms interchangeably. Somehow education sounds better than training. Think of education as in “higher education” and training as in “vocational training”. In our society, one is considered better than the other. There is lots written about the distinction if you care to browse the topic.

One broad difference could be that education is about theoretical knowledge and training the practical application of that knowledge. Learning technical subjects includes both theory and practical application. When you learn a new programming language or IT tool, you learn what it is all about and then you use it. In a class, the use of the technology or product is typically done through a set of guided labs mixed in with the lecture.

To avoid the whole wearisome discussion, some tech educators use “learning” to describe the process and “learners” to describe those who take part in classes. Education departments are then called “Learning services” or something like that. I like Education for the department name and training as the services provided by that department. But, really, it’s not a big deal.