An Era of Rotting Technology, Migration Crises, and Cliffhanging
THIS won't be another rant about WordPress/PHP/MariaDB but about technology in more general (or sufficiently generalised) terms.
One common theme covered in recent days is a bunch of companies foisting and then selling support for some complexity of their own making. We've covered examples from IBM, resembling the Microsoft world.
Back when I worked at Sirius we had a high-profile government client that had rushed to adopt Squiz Matrix when there was a lot of media hype about it. Many documents and "assets" got added to it and managing the thing was hard not just for staff of the agency but those having to support it for them. As more veteran staff left they were left with almost nobody who can maintain it. To make matters worse, there were no new releases and the underlying system used old and unpatchable components. Eventually they just decided to dump the whole thing and move to Drupal, which is just another form of complexity. Another client did the same with django CMS, as it had become long in the tooth.
I've been messing about with many content management systems since I was about 20 and I worked on migrating them as part of my job. I know how alluring they can seem. They might not take long to install and configure. Heck, usually it's not even hard, as you just follow a manual or use some front end tool like Fantastico. The problem begins the very moment you start entering data into those systems. There's some database schema, a long list of dependencies, and some of the underlying code uses functions that Python or PHP will deprecate in the future. Worse yet, the content management system might be abandoned (no future releases) or become proprietary.
This problem is not limited to content management systems and not every content management system is equally notorious. For instance, Drupal is really bad when it comes to maintaining compatibility with older code, so each time the "core" has a major new update (e.g. from 5 to 6, 6 to 7, 7 to 8) one should expect to go back to basics. It's a very costly process (time and money) because hooks change and dependencies take a life of their own.
In the case of desktop and laptop applications, there's a similar problem. But the concept of downtime or many users on the same "system" is not applicable. I don't use a mobile phone, but when I developed software for Android it became apparent to me that it would stop working if I stopped developing it, each time some major new version of Android comes out (and that's a lot).
The software industry needs to calm down and slow down. Organisations and private people don't have the capacity to plan major upgrades every 1-2 years. Sure, the "broken windows" industry makes money from this constant churn, but society is worse off.
Adoption criteria for software should take all this into account. Do not rush to adopt bloatware that moves too fast in an effort to offer everything but the kitchen sink. █