Subscription models only make sense for an app/service that have recurring costs. In the case of Lemmy apps, the instances are the ones with recurring hosting costs, not the apps.
If an app doesn’t have recurring hosting costs, it only makes sense to have one up front payment and then maybe in app purchases to pay for new features going forward
I think it started when software stopped being distributed physically. It’s hard to push a bunch of updates to your users when they’ve need to physically have floppies sent to them versus doing it over the network.
I remember a time when software being “Gold Master” meant it was literally written to a gold master disk, from which copies were made. With that kind of release you had to make damn sure things were finished.