Friday, February 08, 2008
Short training courses in OOP's don't help a lot
As I mentioned in the last post, back in the early 80s, companies often conducted training by “VTR” lessons in programming languages, databases like IMS, CICS, often supplemented by audio tapes and written quizzes.
In the 90s, in office parks around all major cities, companies proliferated to offer training in all the hot new languages, most of all Java, which came into being around 1996 but became accepted in production end-user data access systems amazingly quickly.
Typically, a course would be one week, five eight hour days, with many breaks, plenty of coffee-cups and doughnuts (topology pun intended) and things that cause sleepiness and hypoglycemia. There would be plenty of classwork exercises, but not really enough time to do them. Most of the time students who took these had already been exposed to the languages at work – especially for Java and Powerbuilder. For someone with mainframe experience only, say around 1999 or 2000, the pace became fast, and many of the classwork assignments involved being able to figure out how to do something from the “Help.” Because the construction of classes and objects is non-sequential activity, this is hard to get out of the blue. Another good example of a class like this was BEA webserver in 2001. Classes like this always cover a lot of material that the typical analyst may not need in his own job.
Community colleges offer training in pretty much all of these topics. In the fall of 2002, I took courses in XML and C#. The XML course had regular quizzes and a project, which I actually integrated with material from the C# course, with Visual Studio .NET. The C# course grade came entirely from homework. Every week there would be assigned problems, and it turned out that in most cases there were several approaches that could produce acceptable “solutions.” The instructor always had more compact approaches, however, than a student would.
The only way people get good at object oriented program is to “do it,” and get into a project early, code a lot of classes and methods, QA and implement them. Object oriented programming is very difficult to “get” from a course or textbook alone. The knowledge and skill required by Sun for java certifications is very great, and unachievable without a long period of hands on experience. University IT curricula have to be designed to give the students enough volume of hands on experience in a variety of contemporary problems. It’s amazing, however, how quickly Java came to the front of the pack.