In many LIMS systems, “configuring” the system allows those building it to write code to control the templates. In other systems, it’s almost mandatory that some code be written to control the templates. My definition of a “template” is something used to define the real data. So, for example, we build a template for a test that defines a Dissolution Test using HPLC with 20 components in Stage 1. From there, we can use this template whenever we need a real test created in which to put our Dissolution results.
The trend in medium- to large-scale projects is to bring people from the laboratory over to the LIMS project to do this task. The theory behind this is that the people who can best determine how laboratory methods should be represented in LIMS are the people who use those laboratory methods.
The downside to this is that, laboratory employees don’t necessarily have programming skills. Even if they do have these skills, they are unlikely to have skills applicable to the particular LIMS being implemented—unless, of course, this effort is a phase of a bigger, ongoing project.
So, how can this configuration go forward? There are two schools of thought about this:
- Have the “builders” come to the “programmers” whenever they need code. This situation is great for a programmer that wants job security, but it slows the process down. Also, the builders can become frustrated if they believe they could learn to write code as they build the object, rather than wait for a “programmer” to be available.
- Train the “builders” to create their own code. After all, they’re smart people and they can learn to write the minimal bits of code they need for most of their work, obtaining help from the “programmers” when they need complex code. Also, when the project is over and templates are needed later, the “builders” will probably be able to create them without outside assistance.
The second choice is, by far, the most popular choice. The problem then, is how best to get all the template builders up-to-speed on programming.
Setting the Scope
This training is a project, and the scope needs to be set just as you’d set the scope for any other project. First of all, don’t train the builders to be programmers. Just train them to do the programming they need in order to do their jobs. If they become proficient and are interested, they will learn more on their own or take more formal programming training.
If the software vendor has its own programming tool and there is some training available on this tool, do NOT try to because:
- It likely includes much more information than the builders need in order to do their jobs.
- It likely takes several days to complete and, it’s been my experience that customers usually allot no more than a single day for their builders to learn this skill.
- It likely involves a lot of programming terms, which can be more intimidating than helpful. I’ll say more about this in the part 2 of this article.
The Classroom and the Class
When booking a room in which to give this training, remember the following:
- Select a classroom with terminals set up with the LIMS product installed.
- Make sure there is one terminal for each person receiving the training.
- Make sure these computers and LIMS installations all work and that everyone can get into LIMS. Some of the people will arrive expecting to be frustrated. If the class starts out with problems with the machines or software setup, it takes time from the class; people start to get antsy; and the frustrated students get even more frustrated.
- Organize your presentation so it switches back and forth between lecture and examples. Graduate the complexity of the examples, so that the first example is fairly easy and enables the students to build confidence by writing a small amount of code.
Although it might sound ideal to give multiple courses and gear them toward different skill levels, the reality is that most project managers pay for only a single day of training and usually, only a single training room is available in which to hold the class.
Another positive reason for having everyone take the same class, regardless of skill level, is that those who pick up the skills quickly will finish their exercises quickly and help those who have some trouble. The instructor should strongly encourage this practice. It also helps identify those who can help with programming later, after the official programmers have left the project. Getting people accustomed to helping each other out should be considered one of the lessons of this type of course. That way, when they all return to their desks, everyone will have colleagues to go to for help and consultation.=
You may want to split the class if there are simply more people scheduled to attend than there are terminals in the classroom available to them. If you can only fit 20 people in the classroom and 40 need to take the class, you need to book the room for two days and split the group.
In the second part of this article, I’ll focus on the trainer and a few things a manager or project manager needs to address regarding the students of the class.
|