A fascinating article at Computer World on the 12 IT Skills that Employers Can’t Say No To.
I can quibble with parts of each list. I’m no fan of C++, Java, or C#. In fact, C is a better language to code in, though it is an extremely dangerous language to code in. C++ creates ugly code. If you’re going to do OOP why choose something that Alan Kay, the father of OOP, would never use, where in fact he said “When I invented the term ‘Object Oriented’, I didn’t have C++ in mind.” ‘nuf said. Besides, if you want to do kernel level work in Linux you’d better know C. C++ isn’t going to help you. It’d be better to code in a host of languages, all interoperating with one another via an underlying framework than picking a single language as though it’s some sort of Swiss Army Knife of computer science. I see more and more solutions coded in Python, Ruby, and PHP and as more things move to the Web and require Web-based interfaces I can see a greater need for AJAX, Python, Ruby, and PHP than I can for Java, C++, or C#. In fact, I consider Java the modern rendition of Cobol. Don’t believe me? Go code “Hello World” in Java and Cobol and see which one is smaller. Java is way too verbose. And the code is ugly to boot.
Also interesting, non-relational databases may well be seeing a resurgence, but not due to a fault of relational databases but due to disk and data set size. You can get a great idea of where databases may well be headed over at The Database Column, especially their article on disk trends. It was an eye-opener for me, and makes ample sense esp. as I start working on larger and larger data stores out of sheer necessity.
I can’t argue with the rest of the dying list.
In the end it’s interesting comparing the list of “gotta have” vs. the list of “dead or dying”, as seen in the article The Top 10 Dead (or Dying) Computer Skills. Here’s a handy table to see what’s in and what’s out and to see what side of the curve you lie.
| Gotta Have Skills | Dying or Dead Skills |
|---|---|
| Machine Learning | Cobol |
| Mobilizing Applications | Nonrelational DBMS |
| Wireless Networking | Non-IP Networks |
| Human-Computer Interface | cc:Mail |
| Project Management | ColdFusion |
| General Networking Skills | PowerBuilder |
| Network Convergence Technicians | Certified NetWare Engineers |
| Open Source Programming | PC Network Administrators |
| Business Intelligence Systems | OS/2 |
| Embedded Security | |
| Digital Home Technology Integration | |
| .Net, C#, C++, Jave — With an Edge |
