Not sure if they're complaining about runtime compatibility on macos but does anyone know if I wrote a Cocoa app few years ago on Snow Leopard or whatever would it still run as-is on macos version of today?
If not, then I can sympathize with their complaint that keeping up with macos updates will be more effort than Windows. The one time carbon to Cocoa update will be worth doing if my Cocoa app is not broken by next 10 os updates requiring constant code updates.
Forget snow leopard, Apple can't even keep compatibility for the version they released 1 year ago.
When Apple announces a new OS update at WWDC you have approximately 4 months to install a beta on an external drive and fix any incompatibilities. Oh and it's a moving target, they only freeze it just before release. This process repeats every single year, sometimes they are so excited to break shit that they do it in a patch release but that's much rarer.
If there's a silver lining it's that Apple has gotten so bored with the Mac that they don't change as much as they used to, it's certainly not as bad as it used to be, but not because Apple has suddenly started caring about backwards compatibility.
Depends on what you used, i guess. I bought an iMac in late 2009 which i think came with Snow Leopard and i upgraded to new macOS versions whenever they came out up until El Capitan which was the last version to support it (i've heard that you can run Sierra with an unsupported patch too but didn't try it). I've also got (some bought, others free) a few applications from their developers' sites - that was before the Mac App Store.
After every single macOS upgrade some application would stop working. By the time i installed El Capitan, no application that i had installed since the Snow Leopard days worked.
Mac App Store didn't help either though. I've only bought a couple of applications from there, but one game - NOVA 3 - broke after an OS upgrade (do not remember which) and then was removed from the store instead of being updated. Of course this is partly the developers' fault, but on Windows this would never have been an issue as i have games and applications more than a decade older than NOVA 3 that still work on the latest Windows 10 with little to no fixes.
I also had a similar case with iOS - i got an iPod Touch some time ago, bought a bunch of things, several versions later nothing worked. Eventually the device itself stopped being supported and developers were both forced to not support it and did require later versions of iOS. Typical case of forced obsolescence since otherwise it was a fine device.
This experience alongside Apple's attitude towards (ignoring) backwards compatibility is what makes me stay away from their systems.
Simple ten-year-old 64-bit Cocoa apps will generally run on modern macOS with no changes. The more complex your app is the more likely it is to have been broken by an OS change since macOS is not especially concerned with backwards compatibility, but the actual APIs you're programming against won't have changed much in that time.
Having updated OS X 10.0 era Cocoa apps to run on modern macOS, it’s really not that bad. Actually, it’s way easier than I’d expect given the age of Cocoa and how its first few years were full of rapid evolution.
If not, then I can sympathize with their complaint that keeping up with macos updates will be more effort than Windows. The one time carbon to Cocoa update will be worth doing if my Cocoa app is not broken by next 10 os updates requiring constant code updates.