In Economics, we speak of the principle of decreasing returns. At some point, putting more resources into something no longer produces as much profit. As the thing becomes more complex, it gets more difficult to move forward without making major mistakes.
A part of my assertion about the problems of rolling release is this concept applied to software. Is it possible someone can produce software which satisfies most needs, is almost totally bug free, and simply needs no improvement? I realize the question is hard to separate from the issue of user comfort. Yes, some people are still in love with WordPerfect 5 for DOS, and still pay money to get a copy. It’s impossible to say it’s superior to later versions, nor simply whether it is the principle of decreasing returns for that individual. It’s the subjective sense they can’t be more productive, and don’t want to invest more time in learning something newer. It seems nobody listens to them. We find marketing drones are entirely too concerned with some indefinable image consciousness, and seldom in step with actual consumers, so it can be profitable to keep an old product alive as long as somebody is buying it.
Take away the idiots who only think they know what’s going on, and you find most software packages pass through a cycle when they are a brilliant concept not yet fully implemented, through a series of very popular releases, into irrelevance because the most recent managers lost the vision. Could the product but have been managed, they would have known when the stop and simply support a good thing until it no longer sold. Yes, we have to contend with the tendency of corporate buyers to believe any marketing baloney that simply strikes some unreasoning chord, but there remains a certain core of buyers who feel cheated when you stop supporting something they truly value. This explains why the likes of Enable O/A still has a user base who struggle to keep it running on differing implementations of the necessary underlying DOS environment. That ancient office suite was nearly the pinnacle of what folks actually need to get business done. Simply adding a GUI would have kept it ahead of the market, but some corporate droid decided to sell it to MS, who buried it so they could promote a clearly inferior office suite.
We already have a vast supply for the people who can’t wait to buy the next new hardware gimmick, and the software to exploit it. What so few in the Open Source community realize is that sort of user is the minority. Sure, worldwide they number in the millions, but the world’s population is measured in billions. By now, the majority of that population has encountered a computer. There might be a period of fascination, but once they have assimilated the thing into their lives, it is for most of them relegated to the status of a tool, not a god. So keeping development going to make use of newer hardware technologies is almost a necessity, since most computer hardware tends to die all too soon, and the newer stuff is so very different. However, there is a growing number of computer users who just won’t notice much, and aren’t likely to care about even that little. Keep the hobby alive, because something truly essential will inevitably arise from all the feverish activity.
For the vast majority of computer users, though, we’ve already passed the point of decreasing returns. Feature saturation has set in, and it’s time to consider keeping alive a branch of some projects which have already produced something good enough for most of the world. When you have a winner, stick with it. Fix the bugs, make it work better. Tighten the code, remove unnecessary layers of abstraction. This goes for underlying libraries, as well. I can’t recall the article I read long ago, but someone was able to explain in terms I understood: The main cause of bloat was not always new features in the userland software, but in the libraries used to build it. Is there a release point where we have good enough libraries, too? Keep that product alive, independently if necessary.
If computers and the software don’t serve the needs of humans, the industry needs to die. If we can’t develop without proposing to define for them what they need, as if we were somehow a superior class who justly dictate what users will do, we have no moral ground to stand on.