Uncharted Waters

Jul 20 2015   11:36AM GMT

Tomorrows Legacy Software

Justin Rohrman Justin Rohrman Profile: Justin Rohrman

Tags:

Growing up in software, there has always been an older person to tell me about how they spent half of their careers working in languages like assembler, or COBOL, or FORTRAN. At the time, there were no computer science or computer engineering degrees, so they came into tech through curiosity and usually a traditional engineering degree or physics.

It wasn’t just people I met, there was a whole generation of people working on just a handful of languages. This lead to a whole lot of legacy software and people that could happily make a career by learning one of those languages and working maintenance.

Maybe with the exception of Java, that idea of eventually coasting on a legacy language and product are a thing of the past.

One company I worked with had a product that was built on at least 25 or 30 different code repositories. Each repo had some special function and served to add functionality to the product some how, but even more they served the need of a few programmers to try out every programming language they had ever heard of.

The Go programming language was new and shiny, so we had a little code built around that. Javascript was getting to the point where a new library with it’s own syntax was being released every few months, so we had tried more of those than I care to know about.

DEC_VT100_terminalIt’s not hard to figure out that this made hiring difficult. Not just because a person needed an unreasonable amount of knowledge and experience to be able to work on the product. But also, because a stack (and staff) like that only attracted people that would help to make the problem just a little bit worse. People that had interest in technology that was new, and probably a little obscure.

Tomorrows Legacy Code

For some, the legacy code and software of tomorrow will be met with one of two challenges. They can continue making the technology stack more and more complicated to attract people that can’t say no to trying something new. And, continue making a product that will be a series of hacks to get different technologies to talk and rewrites of existing functionality in new languages when that doesn’t work.

Although there are some people that will work on Java for a long time, in many ways the idea of sticking with one technology stack for an entire career or until that stack is no longer popular is dead.

The future of software maintenance will require people that know superficial amounts on the hundreds of javascript libraries, ruby and rails and all the gems that go along with that, and some about the differences between the popular nosql databases.

I haven’t worked with that company in a while, but my understanding is that they have started to abandon a lot of those code bases and feature sets in an effort to simplify. A change of guard happened and between the people that remained and the new hire, no one wanted to deal with what was left behind. Now they are shooting for one product, built on a few languages as they can possibly get away. That seems like a smart way to go.

Software is pretty messy right now because of the big language push. But, until things settle down a little bit, it’s what we have. For some of us, it might make sense to not be on the leading edge.

2  Comments on this Post

 
There was an error processing your information. Please try again later.
Thanks. We'll let you know when a new response is added.
Send me notifications when other members comment.
  • IanPercy
    I think you're reading it right, Justin. According to SW quality godfather Capers Jones, there are 2,700 languages right now. IMHO our biggest challenge, regardless of language, is that software quality is still pretty sad. Add to that the attempt to deal with technological babel and we have the biggest threat to our privacy, security and economy. Fortunately fault-free software within and between languages is now within reach.
    20 pointsBadges:
    report
  • LaymanDon
    The penultimate sentence has two 'buts' in it, but maybe that's where software is headed.
    35 pointsBadges:
    report

Forgot Password

No problem! Submit your e-mail address below. We'll send you an e-mail containing your password.

Your password has been sent to:

Share this item with your network: