My son turns 21 in less than a month. He studies IT and math at a university in The Netherlands. So the rest of my blog is mainly based on what I know from these two things: my son and the Dutch university he attends. I do know, however, that his situation - in respect to the subject of this blog - is not much different from students in a lot of other western countries.
Fortunately, the generation gap between my son and me is quite small, mainly because we share a lot of the same interests. He is interested in what I do professionally, and I try to understand as much as I can from his world: his IT study, on-line Real Time Strategy Games (RTS) and his math study.
However, I remember being surprised when he told me about one of his first assignments--- create an on-line poker game web application, host it on a website of choice and write it in HASKELL. Yes, Haskell! According to Wikipedia (http://en.wikipedia.org/wiki/Haskell_(programming_language) , Haskell is a standardized, general-purpose purely functional programming language, with non-strict semantics and strong static typing. Not exactly the language one would expect an on-line poker-site to be built in. And there were many more surprises; he was learning SQL with SQLite (125k footprint).
Now, please don’t get me wrong. To make students understand a concept by using the two products I mentioned above may be the right thing, but only when positioned as part of a more complete curriculum. He heard no mentioning of industry standards like DB2, Oracle or COBOL -- software that is still the backbone of a large part of today’s business transactions. No mentioning of large scale business computing, the problems of version management when developing multi-tier applications, no project management, nothing on optimization and . . . I could go on.
At one point, I contacted the university and offered them a 2-hour “Here Is What IT Looks Like For Large Corporations” lecture. For free. With real examples from real companies and real people. I even offered to pay for the coffee and cakes. But I never got an opportunity to deliver my brilliant lecture. Soon after this, it dawned on me -- we are teaching students at university to become scientists, not professional IT people. Perhaps there are good reasons for this, with IT being outsourced to other countries and all that. Maybe we need those smart young talents to become developers of the next generation computers and software.
The things my son learns are so far removed from anything that has to do with real life business computing that it is almost scary. And when I look around, it is obvious that we need young people like them to solve the IT business problems of the next decade. We still need people with an academic bent to delve into the complex issues, to understand the real impact of new technology. But in order to do that, they need the right background. And an understanding of real-world problems.
Current IT Infrastructures are built around a myriad of interconnected components as complex as a biotope. Changing the smallest component or link can cause a so-called butterfly effect (in chaos theory described as “the sensitive dependence on initial conditions, where a small change at one place in a nonlinear system can result in large differences to a later state”. (http://en.wikipedia.org/wiki/Butterfly_effect)). I have worked in IT for many years and I know that it takes a certain kind of people with a certain (academic) background and understanding to solve these big problems.
Learning things without being able to put them in the right context is not only misleading (most IT problems are as simple as the stuff I learned at University), it’s simply wrong. As wrong as assuming all students will end up as brilliant scientists who will invent brilliant things. Most of them will end up working in jobs like most of us, creating and running the IT that helps our societies flourish. It is the responsibility of IT companies like CA Technologies, as well as those in the financial industry, the retail industry and others to “educate” the universities and explain what type of skills are in demand in our world. We must explain, for example, that someone who knows SQLite is not ready to work at a company where one of the DB2 databases holds the 2000+ tables storing peta-bytes of the mission critical data that drives a $200B financial institution.
Focusing on the latest technologies and planning IT strategy is part of many an IT professional’s job. Ensuring that your industry will have the right skills in the future is our responsibility. Go visit your local or state university, ask for the head of IT studies and tell them what type of people you want. I can assure you it will be an interesting conversation.