The changes that were made in the software kernel and objective-c are there for a good reason. Blocks, Grand Central Dispatch, LLVM, Clang - all highly non-trivial and important. You do not HAVE to use them if you don't want to. Anyways, the point is that you get amazing tools. Ever since Mac OS X became Unix, we knew we could write lasting software. Mac OS X is not going away anytime soon - hopefully.
Now, the OS upgrades were - are - much easier and safer than, say, your average Linux, where shit broke *all*l the time. The OS upgrade price was much smaller then Windows. All in all, with the top notch hardware, the OS patched up, the reasonably-priced and easy upgrades, Apple proved to be a nice investment in the long run, with good amortized cost.
Because you still got a nice Mac OS X workstation doesn't mean you don't buy new Apple hardware. At least, that's my experience, personal and social. This has to do with Apple aiming for consumers with higher income (meaning individuals and companies). The other hardware vendors have to scramble and figure out who their market is - and that's why they aren't really brands, or no can really figure out why a Dell notebook is better than the HP competitor (in fact, they're both unoriginal and probably one is just as bad as the other).
The fact that Apple kept your OS patched made you respect Apple, because it showed Apple respected and valued its customers. They were there for you in the long run. They didn't just make up shitty policies overnight, like Microsoft. Apple was hassle-free.
Now, with Apple leaving users out in the cold is really shooting itself in the foot. It's a fundamental shift in customers relation, and I predict Apple will pay dearly in the long run - this might be the turning point - maybe it's downhill for Apple, if the perception becomes one of a company that no longer cares about its customers.