3 ms·
> Technology can't simultaneously progress while still remaining backwards-compatible for years or decades. microsoft and x86 have entered the chat... in all
by leetcrew 6y ago
> Technology can't simultaneously progress while still remaining backwards-compatible for years or decades.
microsoft and x86 have entered the chat...
in all seriousness, there is a legitimate tradeoff to be made here. the accumulated legacy cruft can make it quite annoying to write code targeting windows. but once you get it done, you can be confident that it will work for a long time. on macOS, the APIs tend to be a lot cleaner, but you pay for that with features that are routinely deprecated, triggering major rewrites. as a developer, I do prefer microsoft's stance. I don't use macOS enough to have a real opinion as a user, but it is nice that I can run pretty much any windows software from the last twenty years without spinning up a VM or booting an older machine.
- noelherrick 6y agoHere's a thought I just had: backwards compatibility will keep old customers happy while breaking changes make a certain percentage of them quit your platform or perhaps just complain loudly on Internet forums. But if you keep your product modern and flexible, free of cruft, then you're able to pivot quickly when new technology, new markets, and new products demand it, and address the ever growing market. New customers and developers are being born every day or in the developing world coming into the market. These will outstrip any losses you have from grumbling ex-customers. Being able to address their needs is probably more profitable. Sidenote - it's funny that Microsoft is so stable for their customer base while just constantly churning their frameworks and APIs. I worked in an MS shop, and boy, it seemed like they were introducing a new GUI or Web framework every six months, while of course slowing down or deprecating the older ones.
- leetcrew 6y agoyou're not wrong; it's definitely a tradeoff. different points along the continuum of new features vs compatibility will make sense for different products. imagine a word processor that made breaking changes to its file format every year. there's no new feature that could be worth that amount of hassle in 2020. in markets that are still changing rapidly, it's okay to be more aggressive with phasing out support for older versions. from my perspective, the desktop OS is already mature. more than anything else, I just want it to not break things that already work.