Operating System Design Philosophies
Microsoft vs. Apple
The difference between Microsoft and Apple from an operating system design standpoint isn't the size or efficiency of the software. The differences are the assumptions each company makes about its end users.
Microsoft assumes that the end user has a uses the same lingo specific to their proprietary technologies and they scrupulously avoid using lingo located in such public standards documents as RFC's, ISO and IEEE documents. Microsoft's programmers assume that the user can read and understand help files they write and that if the user is shown how, the user can repair most problems themselves using the built in tools (which I do admit, provide fairly complete access to the operating system internals, IF YOU KNOW WHAT YOU'RE LOOKING FOR AND WHAT MICROSOFT CALLS IT). They even provide something called a wizard which guides the user through some of the more common tasks and assists in setting up what is assumed to be the default setting. From personal experience, I've found that Microsoft's help files are always accurate, and correct, but rarely useful. I've found that the wizards are useless when you need to configure something that isn't one of the configurations built into the wizard. I have always felt that Microsoft's protrammers could use with a few months working the 800 support lines at AOL (an application that makes a point of catering to stupidity).
If you are a Microsoft employee (especially a programmer), I offer this follow-up example: Because I understand RFC's, IEEE specs, ISO standards and therefore the basics of most communications systems, I can find the exact Cisco document I need on the FIRST or SECOND try (average of 20 seconds). On average, I spend nearly 90 minutes looking for the same documents in Microsoft's help, TechNet and MSDN and even THEN your documentation NEVER has the information I need. WHY? Because Cisco avoids re-writing the industry-standard language into their own proprietary gobbledygook, something Microsoft seems to have a penchant for..
Apple assumes the end user is incapable of such lofty intellectual achievements as performing simple system maintenance or troubleshooting and locks users completely out of the nearly all significant operating system functions. Apple programmers insist that all problems that can't be solved by starting without extensions, rebuilding the desktop or reseting the P-RAM should require an Apple certified technician (and several hundred dollars) to fix.
To summarize:
Apple's programmers assume you are stupid, Microsoft's programmers assume you think like they do (like programmers). Both philosophies force the user to adapt to the system.
THE ALTERNATIVE - Linux and Unix
Both design assumptions are horrendous and represent diametrically opposed ends of the spectrum. I prefer the middle route Unix/Linux operating systems designers have taken:
Keep the user interface simple enough for the user to immediately get started and let the user adapt the system to suit their needs. Make the necessary tools simple, focused, small, self-documenting, effective and consistent with the rest of the system and let the user learn what they need as they grow.
| << STARTUP | STARTUP >> |