How many times, at work or at home, have you uttered the words “they don’t make them like they used to?” Unfortunately, it’s a common problem in life these days – with people looking for cheaper and cheaper costs and the cost of materials being driven ever higher, things quite commonly just aren’t built as well as they used to be. For example, I myself was privileged enough to have the same desk chair for many years as a child, but now find myself on my third in six years.
Unfortunately, in the software development field we see too many examples of bespoke software systems that have been written on an incredibly limited budget. Often, these systems are built for a single, specific purpose that was appropriate at the time of creation, but without consideration given to growth, extensibility or maintainability. As often as they’re poorly architected, clients want their systems changed for a multitude of reasons, but I’m afraid this is where good, early investment can make all the difference.
By investing that little bit extra and getting it right the first time, a software system can be well built, utilising industry best standards and the most appropriate technology for the solution being created, the ability for software developers to change functionality within software system is significantly improved. Otherwise, developers working with systems which have been rushed to a conclusion or have had shortcuts taken during the development lifecycle are often left having to unpick poorly written code to deliver improvement. Such an exercise is often costly – a developer working in such a fashion would need to both understand not only the business logic currently implemented and that which is required, but why the original implementation was chosen. Further, working with a ‘tightly coupled’ system, as applications written on a restricted budget often are, such changes are liable to cause other areas of the system to break.
A well written software system, backed by the appropriate investment by the client, provides a far more sustainable platform for alteration than those written in shorter time frames. Our carpenters of old would spend time ensuring they had the right materials, a design for what they were building and practising their craft before producing a high quality, finished product. A willing shopper would see the obvious craftsmanship and be rewarded with a well-made, sturdy chair that would last for years.
In a more modern world, software development clients can’t see a tangible, finished product before purchasing – the beauty in software development is taking a clients’ idea and building it for them. They trust in us as professionals to do the very best we can with their budget, but the reality is, budgets only get so far. Thankfully, by investing with experienced and dedicated professionals and stretching your capital expenditure budget that little bit further, you’ll be rewarded with a more sustainable platform and a better return on your investment over time. Investing is a scary business, but the size of the bill to refactor your software and facilitate that change you really want making is almost certainly scarier!