The folks at Microsoft think Apple has it easy because Apple can limit the amount of hardware it supports and can contain the development process until the last minute so no one knows what is cut.
With the release of Leopard, which I personally thought was going to be a hit, Apple demonstrated that things -- even for it -- aren't that easy. Leopard picked up a new nickname, which is permeating the Web -- "Leoptard." I'm not sure if that applies to the platform or the poor fool who upgraded to it, but this product is being compared to Windows Vista and not in the expected good way.
While it would be a kick to make fun of Apple and point to the current Windows vs. Mac OS campaign as just a little bit hypocritical and embarrassing -- which I guess I just did -- let's instead focus on what seems to be wrong-headed about PC operating systems, and a lot of PC applications, in general.
In the Beginning
Someplace we got off track. In the beginning, the operating system was light, booted fast, and actually rather reliable. Then we went crazy with hardware, drivers, applications that drilled down into hardware, and built up so much complexity that the fact that this stuff works at all, let alone can run for weeks, amazes me.
If you recall the Commodore and Atari days, you basically booted the system into what felt like an embedded OS and then either inserted a floppy disk or a cartridge with your applications and off you went. Viruses on those systems would have been difficult because you had to physically load them (this was pre-Internet and networking for the most part), and while some eventually could go online, the services they connected to like CompuServe and old AOL were relatively safe.
Basically a 4-year-old could get these things to work, and while they didn't do anywhere near what a current system can do, back then you used nearly 100 percent of what you bought. I'll bet you don't use 20 percent of what you now have.
I just had a vendor in trying to do a pitch with Leopard. First, networking wouldn't work, then he rebooted and it took forever (of course I'm giving him grief the entire time). Finally he was up and running, but admitted he was very sorry he upgraded from Tiger. Given the number of Vista users who have expressed the same thoughts, I think it is well past time to revisit a happier past.
iPhone Back to the Future
A lot of my friends have iPhones. One was explaining the other day how his 4-year-old figured out how to use the iPhone in a few minutes. While an iPhone is limited. Once again most folks seem to be able to use most features. That isn't true of most phones, particularly smartphones today, although that, too, wasn't always the case, and it clearly isn't true of PCs.
I think the iPhone captures a core concept lost in the '80s that we need to get back: true simplicity and ensuring people use the majority of what they buy.
Both the Mac OS and Vista have simply become too complex to implement and use. That likely goes to the core of why both have had such painful births this round.
Unlike the iPhone, which was a start-from-scratch product, both the MacOS and Windows have a long legacy that will be difficult to abandon. But it is possible for both to do it.
Apple may have the advantage here because it has been slowly displacing third-party developers, and with iLife, iWork, and Safari has what amounts to a good core application set and could better contain the initial experience. Both Linux and Windows are all over the map here, making it a bit more difficult with existing platforms. But nothing is preventing an OEM from creating a system based on embedded Windows or Linux, a simplified UI and a set of core applications to improve their customer experience.
Hypervisor and Online Services to the Rescue
While it would seem obvious to say that using technology for us, rather than against us, the next time around would seem to make the most sense, I wonder if many OS engineers actually get this. PCs should run in three modes:
The other two partitions would be connected to online services, which would remember the purchased applications and restore them should a system wipe or hard-drive crash catastrophically occur. Some of the less-used applications could actually reside on the Web and install themselves on the fly and only as needed. For instance, do you really need an income tax program to run locally most of the time?
Phoenix Technology, among others, is starting to create solutions that will work against some of this model, but I wonder if it can make this happen without the OS owners' direct help.
The iPhone is a semi-locked down embedded OS device and it is, even in its first limited iteration, an incredibly easy product to learn and use. This approach is the model to follow if we are to avoid problems like those enjoyed by Leoptard, er Leopard, and Vista, and create some real excitement around future hardware and software.
Now Vista SP1 is starting to test out much better, and I expect Leopard will be getting patched up in a few weeks (I'm really starting to wonder if Apple has lost too many good people), but I think we need to make some major changes going forward.
We as an industry need to create products that generally will pass the 4-year-old test. And, until we do, we'll miss out on the kind of blind excitement that surrounded products like the original Palm Pilot, the original iPod, the Commodore 64 (which outsold Microsoft and Apple in its time) and the iPhone. In fact, the iPhone and the Kindle likely come closer to the ideal and, unless something is done to prevent it, I'll bet both products become less ideal over time.
Something to ponder on this cold December day: Maybe this year, for the holidays, the vendors should think about putting a little childhood wonder in their products and take out a lot of the adult complexity. Microsoft's Zune II, Surface, and Home Server all represent solid moves in this direction, and Apple's iPhone sets a stunning example of how things should be as well. Let's hope the folks use these as an example going forward and put a little more magic, and a lot less aggravation, into future operating systems and applications.