If I buy a piece of software, it's not unreasonable to expect it to work for some period of time after the purchase. This is especially true on the Windows side, where Microsoft has gone to great lengths to keep old APIs around and support most (but not all) old software within reason. I have engineering software programs that are a decade old that still run fine on my Windows 10 machine.
macOS has been less shy about deprecating old APIs and forcing software updates. I probably spend $500-1000 every year just upgrading a certain few software packages that charge for a new version every time a new macOS comes out, and I hate it. I don't mind paying for new versions of software, but it's becoming saddening to watch all of my macOS software rapidly decay away with each macOS upgrade unless I buy the newest version.