Obsolescence in Information Technology is not just limited to hardware and software. “Coding Horror” by Jeff Atwood in 2006 proclaimed that everything you know will be obsolete in five years, and the statistic is repeated in awed horror by programmers afraid of becoming obsolete just they would cease being green in other careers.
Yet I’ve seen several trends that may prevent software coders from becoming obsolete in roughly the same time it took for them to earn a college degree. Rapid obsolescence in IT for programmers will probably slow or become obsolete for several reasons.
- The Wild West of the Internet is under pressure to simplify and standardize in the name of efficiency. Software code libraries and public domain software have reduced the amount of new code that is required. Software testing has become automated with a host of software testing applications. The rise of automation in code by utilizing existing code and software applications along with a reduction in the need to create new code will help lock in current software languages.
- In my opinion, the development of totally new software languages will decline because there are so many to choose from today.
- Software coding interfaces exist that allow non-programmers to create games. By allowing new software developers to work without knowing code at all, the latest applications may arise in new forms but still use the old software languages behind the scenes.
- Existing software languages will remain in use, though syntax may shift a little or grow as the hardware it uses evolves. Software languages that existed a decade ago are still in use. UNIX and Linux vary a little but the basic language learned 15 years ago is still good. C++ programmers who have kept up to date can work on C#. Java was released in 1995; new hybrid versions such as Jython (Java + Python) and JRuby (Java + Ruby on Rails) may drive change and expanded knowledge but someone know knows both languages can still work on software development and testing for each.