Disposable Software
Few weeks ago my microwave stopped working. I called several repair shops and they all told me the same thing: “just buy a new one, it’s cheaper than what we’ll charge for fixing it”.
Maintaining software projects costs a lot of money. Thousands of books have been written on “clean code” and “best practices”, all focused on driving the maintanance costs down. Every company or team I worked on has a similar story: “we built this prototype in just a few weeks, but now it’s a mess and we can’t add new features”. Building something new is fun, maintaining old legacy systems is not fun.
To add to the problem, businesses don’t understand the maintanance costs. After you ship a feature, the business considers it “done”. If you want to address tech debt, systematic bugs, refactorings, library upgrades, etc. it takes a lot of explanations and convincing. And even if you manage to get the budget, it’s not a priority. The business likes to ship new features, not maintain the old ones.
But what if there was a magic tool. A tool that could build an app for your from scratch every time something about buisness domain changes. And it will use the latest libraries, latest best practices, hottest programming language. And it will be fast (minutes) and cheap (few dollars worth of GPU time).
What would the world look like if we got rid of software maintanance costs?
–
Oh, about the microwave. I bought a new one, same brand and same model name. The new microwave sucks: the build quality is low, it’s loud. I want my old microwave back.
Hello! This text lives here to convince you to subscribe. If you are reading this, consider clicking that subscribe button for more details.
I write about programming, software design and side projects Subscribe