Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Help! My Business Relies on Out-of-date Technology

DZone's Guide to

Help! My Business Relies on Out-of-date Technology

Developers working with legacy technologies need to adhere even more strictly to the maxim: "Release early, release often."

· DevOps Zone
Free Resource

Download “The DevOps Journey - From Waterfall to Continuous Delivery” to learn about the importance of integrating automated testing into the DevOps workflow, brought to you in partnership with Sauce Labs.

Image titleSoftware doesn’t get worn out and worn down in the same way that hardware does: it’s like the difference between a physical paperback book, which gets faded and tatty, and the ebook equivalent, which never changes at all. In fact, you could argue that older software is more reliable — its age is a sign of reliability and stability.

Perhaps that’s why the US nuclear weapons system is still controlled via floppy disk. The archaic technology has a permanence and robustness that you wouldn’t necessarily associate with the shifting, cloud-based code of today. When the President of the United States decides to switch the country’s nukes to Windows 10, we’re going to plan a D4 away-day in a remote Swedish bunker.

Software development history is littered with examples of major projects that were significantly delayed or cancelled altogether because the programmers decided to toss out the existing code and start again from scratch. Beginning again with a clean slate is undeniably appealing, but that old code is tried and tested: it works. A lot of the time, adapting and cleaning up old code is a far better option than trying to create new code with nothing to refer back to.

In other words, use the accrued wisdom (and the accrued bug fixes) of existing programming to your benefit.

That said, standing still and relying on obsolete technology can be damaging to your company. You might find yourself relying on standards that are no longer supported, or you might find your business being held back by antiquated programming — just look at the pain caused by so many users relying on Internet Explorer 6 for so long. Established code has a lot of hidden benefits but that’s no excuse for getting stuck in the past.

So what’s the best approach? Our strategy is to take small, incremental steps away from out-dated technology, testing as you go. That way you aren’t getting marooned on a system that’s no longer relevant, but nor are you tossing out code that can be incredibly valuable as a foundation for future development.

It’s a philosophy often summed up as release early, release often: the underlying idea is to keep moving forward while maintaining a tight feedback loop between developers and users. There’s the possibility of more mistakes being made, but they’re fixed more quickly, and that leads to better code and faster progress in the long run. Smaller, more frequent updates mean it’s easier to spot bugs when they occur, and easier to change direction when it’s required.

If your business is reliant on out-dated technology, then this is the strategy we’ll take to lead you back out to the light. Don’t panic, because it’s a fairly painless procedure.

Discover how to optimize your DevOps workflows with our cloud-based automated testing infrastructure, brought to you in partnership with Sauce Labs

Topics:
legacy code

Published at DZone with permission of Robyn B. See the original article here.

Opinions expressed by DZone contributors are their own.

THE DZONE NEWSLETTER

Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

X

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}