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
Games are actually a really bad example. They’re generally not written from scratch and use an engine. So there’s usually not a lot of work to keep it up to date. When they don’t make enough money from it though, they will retire it. It happens.
And Node modules? Are you kidding. The constant updates are usually security patches. If you’re properly using semver then it shouldn’t be an issue. You can either stick with the major or minor release depending on your needs. But those packages are also in your boat. Someone is developing them and patching them. They may drop old minor versions because they can’t support that many different releases. Because backwards compatibility is expensive.
Seriously, please tell me you’re at least securing whatever application you’re writing. Do you even do an npm audit (or yarn, whatever you use) and patch the findings?
Especially in web development, security is absolutely important. Sometimes yeah, you may not implement a feature. But that’s because your app lacks development resources like another developer. I’m sure it’s great to keep working on the exciting stuff like new features. But the “boring” stuff is still damn important.