It works for me!

Originally, this post was going to be about the non-viability of Windows as an OS geared towards the people, instead having been created to serve the interests of a mega-corporation, but I think instead that a constructive post is called for instead. One that shows why people run the OS they do.

I’ve begun to realize recently that people get into religious-type wars over the silliest things, like vehicles, and sizes of bodily appendages, and what-have-you. The area I’d like to concentrate on is the operating system that people run, and why they choose to do so.

Operating systems are, by their very nature, facilitators. As non-intuitive as it sounds, OSs were not intended to help users; they were designed to help programmers cut down on the amount of work they would have to do to write an application.

As Neil Stephenson puts it:

Operating systems are not strictly necessary. There is no reason why a sufficiently dedicated coder could not start from nothing with every project and write fresh code to handle such basic, low-level operations as controlling the read/write heads on the disk drives and lighting up pixels on the screen. The very first computers had to be programmed in this way. But since nearly every program needs to carry out those same basic operations, this approach would lead to vast duplication of effort.

Nothing is more disagreeable to the hacker than duplication of effort. The first and most important mental habit that people develop when they learn how to write computer programs is to generalize, generalize, generalize. To make their code as modular and flexible as possible, breaking large problems down into small subroutines that can be used over and over again in different contexts. Consequently, the development of operating systems, despite being technically unnecessary, was inevitable. Because at its heart, an operating system is nothing more than a library containing the most commonly used code, written once (and hopefully written well) and then made available to every coder who needs it.

So when people argue for their favorite OS, whether that be MacOS, Windows, any distro of Linux, *BSD, or whatever else less-known OS that runs on the x86 platform, they’re actually arguing over their favorite flavor of facilitator. Much like the discussion of different flavors of ice cream, such discussions are ultimately pointless in the grand scheme of things. Who cares if your favorite OS is this or that? To some, however, it is vitally important that others agree with their choice; it is miserable to realize that you are the only one (or so you think) that has made the choice of OS you have. And so you spew vociferously vituperous vitriol towards anybody who dares to disagree with your choice.

Let this be a word to the wise: if your OS runs what applications you want, be happy, and let everyone else be happy with their choice. Instead of criticizing, help others with their issues, if it happens to fall into your area of expertise. If it differs from yours, let it be (As Paul McCartney would have it).

Then everybody will be just a wee step closer to being at peace with each other. Instead of being divisive over our differences, let us unite with our similarities, because we have much more of the latter than the former.