Last night I went to a 70th birthday party and ended up sitting next to Frank.

Frank used to work as a computer programmer, because this was the 1970s to 90s and people had normal job titles that described real things, instead of "full stack orchestration engineer" or "solutions architect".

Anyway Frank's employer was the Victorian Attorney General's department. He wrote, updated and maintained in-house software for managing the court system, trial documentation managements and so on using low level languages.

The point of this post is that there was nothing special about this period of history that made it possible for government departments to write and maintain their own software to solve their own problems then but not now.

The complete lack of any in-house capacity to do this kind of thing is a political choice. Frank is a reminder of that.

@hugh

The current trend of rolling-release-continuous-deployment-test-on-production has made maintaining software prohibitively expensive unless your business model is SaaS.

It is simply no longer feasible to develop bespoke software when stable releases don't exist and the platform changes on a daily basis.

Thus everyone who isn't a SaaS provider has no choice but to use whatever the SaaS providers think the most people will pay money for.

@ali1234 What you're describing is CI/CD done wrong. The testing is a critical part of continuous delivery and skipping that is malpractice.

There are times and places for stable releases. There are also a lot of places where continuous delivery is the right answer. Using the right tool for the job is part of software engineering.

@psa

The Right Tool For The Job v1 has been deprecated. You must switch to The Right Tool For The Job v2 or you app will stop working in two weeks. Please consult the 200 page document titled "How to port your app to The Right Tool For The Job v2" for more information.