As someone who’s proficient in operating systems, but in general a recent Mac switcher, I typically try to stay out of these crazy debates around which is better.

This article over on the Computerworld blog raises some interesting and–truth be told–valid points, when looked at from a certain perspective and as applies to certain people.

That said, the points he raises are applicable only to edge cases for the most part. If you look at the core use cases and functionality of the day-to-day computer, which include document and multimedia editing and creation, secure and reliable operation, and ease-of-use, I believe that Mac is going to win hands down each time.

One oft cited reason that I’ll turn to yet again is the “appliance” concept: the fact that the hardware and software design end to end is managed by one company. I’d like to illustrate some points as to why this approach resonates with me. (Note, for those less techy than me (stand proud by the way!), simply replace “appliance” with your favorite consumer product, like “TiVo” everywhere you see it in this article :) ).

  • The “attention to detail in the user experience doesn’t necessarily stop at the borders of the original point of sale: even after market applications have style guides and rules that they are expected (thought not forced) to follow. Failure to do so often results in a tangible after market backlash on the part of the consumers (or more likely the technical digerati) that can affect the word of mouth popularity of an application.

    While this kind of reactivity can seem harsh, in general it serves to continue the unity and betterment of the platform usage experience. When everything works the same way, and that “way” is easy to understand (easy being subjective, but often measurable to a degree by testing), the overall experience tends to be more pleasant.

  • Creating an [operating system] design with specific parameters will generally result in a project with better definition, purpose, and function than a general design: As someone who writes sofware requirements, this one is near to my heart. If you create something that must do A through Z, it is likely going to be less efficient at B, C, and D than if you had just focused on B,C, and D as your core use cases. By focusing on Mac specific hardware platforms and usage models, the experience and reliability of the system is maintained. (Yes, this is true even though the Mac now runs on “vanilla” Intel platforms; the hardware support matrix is miniscule compared to even the least general purpose Microsoft OS.)
  • Starting from scratch is sometimes better: I love the writings of Joel Spolsky, and in this article he espouses the virtues of NOT restarting a software project from scratch, which we could debate at length for a whole other blog entry. However, the concept of starting from scratch with the operating system as Apple did with the NeXT-inspired (powered/authored/purchased) OS X is a very powerful one, and necessary I believe if you want to distance yourself from others that are simply “iterating” on a decades old platform. Apple chose to do something risky and potentially very rocky: enforce a move to OS X, while providing a less than elegant but wholly workable scheme of letting OS 9 apps run in a sort of virtual environment (until fairly recently). Rather than continuing to build on the legacy platform, which would have stifled OS innovation (we have seen with Vista), they made a conscious effort to move people over at the risk of [further] alienation of their user base. Of course, with an appliance, starting from scratch (or a very minimal base) is generally the only way to create a reliable, tightly controlled experience. You don’t expect or care that your appliance runs every application you’ve ever heard of….you want it to do what you bought it for, in some cases with some reasonable expectation of after market expansion, in the most efficient way possible. Which leads me to my next (and even more subjective) point…
  • When you turn on an appliance, you want it to work in the same way, and as efficiently, as the same day you bought it: This one has been resonating with me the more I use my MacBook Pro, and the more I hear and see tales from long time Mac users. As each new round of Apple hardware is introduced, inevitably you’ll hear someone say something like “Well, I sure would like a reason to buy the new [MacBook Plasma] but my G4 is still doing everything I need quite well.”
    In my experience, the architecture of OS X has served amazingly well in this aspect: users of even older hardware still have the same pleasant and efficient experience every time they use their computer, even if they have had the same version of the OS installed and running for years.
    I’d like to contrast my recent experiences turning on my XP machine that had been sitting idle for a couple of months after using my MBP in the interim (and then vice versa). Some background: I had tried switching a few months ago when first getting the MBP, but travel and other circumstances resulted in me not having the time to completely move over. As a result, I was on the MBP for a few months, while the XP machine was my primary; then I moved back to the (idle) MBP to continue my switching process.

    What I found when temporarily going back to the XP laptop (which is a fast Core 2 Duo with 2GB RAM), the boot was terribly slow, and applications ran noticeably slower than I had recalled, even though I had been using it as my day to day machine before last shutting it down and switching to the MBP. In comparison, when switching back to the MBP, which had lots of software installed, and had been through the abuse of a power user/tinkerer, still booted as fast and operated as efficiently as when I had shut it down.

    This mirrors the experiences I mentioned before of the older G4 users: even though they had the same (in many cases original) installation of OS X (with of course the free “dot” releases), running on “older, slower” machines, they were still [generally] as pleased with the day to day efficiency and operation of the machines as when they first started using them. No “boot slowdown”, no feeling of “registry bloat”, the machines didn’t stop shutting down or sleeping because of rogue device drivers, etc.
    At the recent BarCampAustin, when we sat down around a table in a meeting room and laptops were whipped out, an smorgasbord of Mac generations showed up: MacBooks, PowerBooks, MacBook Pro, MacBook Air and even an iBook if I recall correctly. Everyone quickly got to working and nary a peep was heard about “arg, why isnt this working”, or “dont you hate it when”, or “this machine is sooo slow”; by and large, everyone was happy with their computing experience, to the extent that it simply faded into the background as an expected occurrence. In other words, the computers functioned like an appliance, working (for the most part) on day 600 as on day 1. In my day to day use so far, I find this to be true as well, and quite frankly now find XP to be unbearably laggy after my core set of applications and addons are finally installed to make it a useful day to day machine.

  • Now, not every situation is going to mirror mine, or the experiences of the people I referenced. You can argue that such measurements are subjective, or that I’m comparing different processor architectures, or that I’m leaving out huge arguments about how Apple has vendor lock in or misleading marketing practices.

    While any or all of these may be true, the point is, I’ve gone to great lengths to try and describe a concept that is so so simple and expected, but is so rarely well executed in the computing industry: the role of technology as an enabler and experience, not as an obstacle.

    I welcome your comments!