A Lesson We Will Learn Again

If there is a lesson to be learned from the Year 2000 mess, it is that tomorrow’s programmers need to be able to support and modify yesterday’s code. Unfortunately, it looks like we won’t be learning from our past mistakes.

Programming languages that are considered passé or ancient by some developers are still important, if not crucial, for enterprise computing. The Y2K issue rejuvenated interest in finding and retaining COBOL programmers, a line of work that appeared to be a dead-end only a few years ago. Likewise, AS/400 RPG programmers are in particularly short supply right now.

The lack of new programmers with skills in these areas has been creating problems for IBM’s midrange and mainframe customers for some time. But one must ask, is the demand merely a flash that will fade in a couple of years, once post-Y2K problems are sorted out, leaving us with a surplus of COBOL and RPG programmers? Probably not. The reality is that these languages will continue to hold mission-critical status, at least as long as there are mainframes and AS/400s.

Most programmers graduating from college want to get into the industry’s hottest segments: Java, Web and Windows programming. I don’t blame them. Who would want to invest four years of college to take on a career in a market segment that’s not growing and doesn’t have the allure of the Internet. Java programmers are in such hot demand that, in one instance, a recruiter walked up to a stranger wearing a Java hat and asked if the capped individual was looking for a job!

In the end, it appears that "legacy" programming skills will fade away with time, unless another Y2K-like crisis hits the IT industry in the next couple of years.

There is a bright side. Although Java is causing a brain drain from other programming environments, that fact that it has been ported to so many operating systems offers a reprieve from obsolescence for computers that reside on the fringe of the Microsoft-dominated development community.

Regardless of whether Microsoft does or does not derail the concept of a single, unified Java, the availability of a sexy programming environment aboard AS/400s, Unix machines and who-knows-what-else will ensure that those platforms will survive and thrive. In fact, Microsoft’s stumbling progress toward the launch of Windows 2000 is creating opportunities for other platforms that offer scalable alternatives.

The bad news is that neither Java nor Microsoft will make it easy for programmers to rewrite the millions of lines of 20- and 30-year old code that is going to survive the Y2K event. If such a rewrite was easy to accomplish, it would have been done by now.

Given the thorough house cleaning that Y2K has prompted, you can be reasonably sure code that is still in use this time next year has considerable business value. Add in new application integration middleware hitting the market and the use of COM and CORBA for integration, and you can be sure code will live on in whole or in pieces forever. The more important question becomes, how are you going to support it?