I like Macs. I always have, ever since the day I first saw MacPaint running on one of the original Macs (I believe it 128k!)
But I do have a question for all the Mac zealots out there. If System 10 is so terrific, then why did it take the brilliant engineers at Apple two decades to figure out that running Unix was a good idea? Unix hasn’t changed so much in that time.
I don’t think it took Apple’s engineers two decades to decide that running UNIX was a good idea. It was obvious to first year undergrads by 1995 that the lack of pre-emptive multitasking was a big problem for the Mac, and that it was going to get worse as the web took off. Two more interesting questions are: 1) why didn’t they use UNIX to start with and 2) what stopped them from switching earlier?
Michael has already answered 1: 128k. I think the answer to 2 has to do with Apple’s politics and history. We all like Macs because Apple keeps its brilliant engineers in the background, and lets its brilliant designers run the show. In the early 90s, the time Gnu, Linux and various BSDs were taking off, the engineers had just moved the Mac from the 68000 line of CPUs to the PPC. This came very close to disaster. Adobe and other companies who wrote the Mac’s killer applications weren’t happy at having to rewrite them, and I’ve heard it was only some last minute brilliance from Code Warrior’s compiler writers that saved the day. I think it’s understandable that Apple management took a conservative approach to the nuts and bolts of the platform after that.
Rodney is correct that Apple didn’t take two decades to realize that MacOS needed an upgrade. When Apple bought out NeXTstep, Steve Jobs’ company, the intention was to use NeXT, a UNIX variant, as the basis for the new Mac operating system, the so-called Rhapsody OS. After years of development the project hit a brick wall, presumably for political rather than engineering reasons. I think one of the reasons for this is, as Rodney said, was that Rhapsody employed the NeXT API, which, while very advanced, would necessitate complete software re-writes. When Steve Jobs took over as CEO he recognised that this was a significant problem and would undermine developer support for the platform. Consequently Apple adopted a two-tiered approach for their next generation OS, which would simultaneously provide a completely new API, the so-called ‘Cocoa’ API, and simultaneously one which was backward compatible with the legacy MacOS, the so-called ‘Carbon’ API. Before purchasing NeXT, Apple also considered buying out Be Inc. and using BeOS as the foundation for the next MacOS.
Macs ran Unix – A/UX. See for example http://www.kernelthread.com/mac/oshistory/4.html . It was supported 1988-1995 but wasn’t ported over to the PowerPC.