Your browser doesn't seem to support CSS, which this page uses for all styling. Don't be surprised if it looks kinda boring.

[Jump to nav]

Systems are people too, y'know

We've established that the slope of the learning curve can have a profound effect on the future potentialities of a user. But it can also affect the system itself. Nothing exists in a vacuum, after all; you can't change part of the behavior of a system without it having ripple effects throughout the system.


Let's take a look at how Windows has flattened the learning curve. You run across any number of things in your daily life that have 'advanced' options. Web search engines. Income tax forms. What makes them 'advanced'? Why, they have more options! 'Advanced' is really a euphemism for 'more powerful'. That's fairly well understood...

Now, here's the fun part. Let's reverse it. 'Simple' and 'simplified' really mean the same as 'simplistic', which can be freely translated to 'less powerful'. And, even more so, as 'less flexible' and 'less configurable'. Suddenly, the revelation hits us across the cheekbones.

Simple means Limited

*BAM*, like a shot. Remember back in the last section where I said "learning more almost invariably lets you do things better and faster"? Well, welcome to the reason why it's "almost". It doesn't help you when you're on an inherently limited system. There's a hard ceiling; there's a certain level you just can't advance past, because there aren't tools beyond it, and there's no way to move further. So heck; why should you bother to continue learning, when it won't gain you anything?

The upshot? Failing to push forward your knowledge on a system following the Unix Philosophy will put you at a large and growing disadvantage relative to those who do. But failing to do that push on a system under the Windows Philosophy won't really, because there's an infinitely lower ceiling on how far you can go.

Windows achieves its inherent simplicity by removing options. And it's done so skillfully that, unless you have experience with other systems, you never notice the lack. By removing options, sure, you make it quicker and easier to learn; there's less to learn. By removing flexible and powerful options, like command lines, and pipes, you cut a lot of learning off. By presenting large integrated multi-purpose tools, you make it much quicker to learn a given task, but you cut off the infinitely greater flexibility of small single-purpose tools with a means of connecting them together.

The Ceiling

And, you cut out the most effective way for users to work. Every person is different. Every person thinks in different ways. We act, react, examine, learn, and work in different ways. With discrete single-purpose tools, with good isolation and well-defined interfaces, you can craft everything to exactly the way you work. My desktop, for instance, is practically perfect for the way I work and think; for a lot of people, it would be totally counter-intuitive. Because of my system, I have the flexibility to make almost any change I want.

With a system designed around independant monolithic tools, you're severely limited in how much you can change. The tools aren't designed to be changed, after all. They're designed to work and look a certain way. And they're designed to be specific items in a given structure, rather than independant "black boxes" that can be replaced with others seamlessly. It's a much simpler philosophy to work with, after all, since you don't need to learn about all the potential options, or take the time to look at them and decide which is best for you. You just get to live with what somebody else decided was best.


For all the "Where do you want to go today?" propoganda, then, we can see that the Windows Philosophy really boils down to letting someone else tell you How Things Will Be. The Unix Philosophy is about giving tools and the means to use them, then allowing each person to use them as best suits them. One of the more common quotes about Unix is Unix does not stop you from doing stupid things, because that would also stop you from doing clever things. And it's true; any reduction in choice is a reduction in choice.

Help! Summary!

Enough babbling. Let's try to sum it up. Onward, to Why It Matters.

  1. Windows Causes Stupidity?
  2. Learning Curves
  3. Learning Curves :: User Effects
  4. Learning Curves :: System Effects
  5. Why It Matters