Nowadays, software is different from the CD era, where you bought a game/software and that was it. Nowadays, people expect the software to be maintained, kept up to date and always compatible with the latest changes (new OS versions, compatibility with other software, etc.).
Maintenance is the high cost of software, not building it. This is why I sell my products with a perpetual license but with paid yearly updates. I can not work for free indefinitely as all the "lifetime" licenses promise.
I think there are a few interesting threads to pick at here.
First, some of these problems are created by software developers themselves. In particular, shoving in an online component where one doesn't need to exist basically guarantees that you will have recurring costs and the need for constant maintenance.
Second, Microsoft is much more careful about maintaining backwards compatibility than Apple. I can generally fire up 10+ year old software on Windows 10, no problem. The same is sometimes true on OSX/iOS, but often not. The increasing popularity of Apple products and the lower priority they place on backwards compatibility has definitely made developers' lives harder.
Having said all that, I don't think everybody expects constant updates. I think power users, especially, are used to running what works for them for long periods of time. You probably can't build the next Google on this, but a lifestyle business? Certainly. Just look at Pinboard and it's lack of enhancements or UI overhauls - and that's an online service.
Nowadays, software is different from the CD era, where you bought a game/software and that was it. Nowadays, people expect the software to be maintained, kept up to date and always compatible with the latest changes (new OS versions, compatibility with other software, etc.).
Maintenance is the high cost of software, not building it. This is why I sell my products with a perpetual license but with paid yearly updates. I can not work for free indefinitely as all the "lifetime" licenses promise.