Why I don’t like Microsoft
Well, it has been entirely too long since I wrote an entry. The Java studying has been sucking away all of my energy and time. There has been plenty of stuff going on, plenty of interesting events and writing by some of the folks that I track in the development/technology world. The Sun-Microsoft settlement has certainly spawned mile-long discussion threads of speculation, commentary, and outright conspiracy theory wacko rubbish. I have been reading James Gosling, Robert Cringely, and Pamela Jones of Groklaw fame to try and derive some sort of perspective on the whole thing.
At several points during this hiatus I have been inspired to get on here and enter a rant about why I chose not to pursue Microsoft development platforms any further and why Java and open source appeal to me at a gut level. These urges were sparked by discussions, some at work and some elsewhere, about computing and software. I didn’t write because posting an entry is not like presenting your side of a conversation; it’s far less iterative. One’s opportunities to come off like a literary cripple are unbounded, as a short traipse through a sampling of weblogs out there will show.
Now that I have taken the time to write that, it has rekindled those sparks. The fact that I am depriving myself of sleep in order to try and grasp stateless session beans in EJB is probably not helping matters. Here are just a few short lines about my take on why I hopped off the Microsoft wagon and why I am in favor of open source and Java.
Software is what I do; I left another career to pursue it fully. I am also a type A personality. I value quality, effort, discipline, and order. Therefore, I value quality, effort, discipline, and order in the area of software development. I also have a certain set of values typically ascribed to Judeo-Christian belief systems. So, what you do shares equal importance with how you do it and why you do it.
Microsoft has proven several of their core principles to me and to others time and time again. Microsoft simply does not want to play with others - end of story. They purposefully take measures and expend significant resources to pursue lock-in to their operating system and their applications which run on it. They seek to destroy their competition rather than outperform them. In short, Microsoft plays dirty pool as their standard mode of operation.
When people see me using a Mac laptop or running open source operating systems or learning Java, I invariably am asked something on the order of “Why don’t you just use Windows?” or “Why don’t you program in .Net?” (.Net is the latest Microsoft Kool-Aid of a development platform for those of you who may not be up on that area of technology. It is a much better Kool-Aid than VB6 or MFC, but it’s still a Kool-Aid. I will unpack Kool-Aid later.)
Why don’t I just use Windows? Perhaps an analogy or two would serve to underscore my viewpoint. Why don’t you use the car insurance guy who is labeled as a crook around town? Why do you avoid a particular client or organization in your own business? Why does it bug the hell out of you when that relative who always has a “great money-making opportunity” tries to corner you at Thanksgiving?
Here’s why: because people overtly bent on going about things by crooked means generally annoy me. People who perpetually scheme to beat the system are like a cheese grater on my private parts. Does it mean I think I am perfect and have it all figured out? Heck no. I have figured this out, though: I want as little contact with individuals or organizations who view underhandedness as a viable and often primary approach. I don’t want to associate myself or my livelihood with those who do not wish to cooperate and be good, responsible citizens of the community. I fully view Microsoft as fitting everything I have laid out in this paragraph.
Now, about that Kool-Aid thing. What the heck do I mean by that? I first heard James Gosling use that term referring to Microsoft Visual Basic, and it is a short phrase that conveys VB’s main tenet wonderfully. Microsoft indoctrinates developers to believe that if they just devote themselves to Microsoft tools and technologies, everything you need to do will be simple and mostly automated. You can live on auto-pilot, as it were, never having to really get down into the bedrock of learning sound software development practices. Visual Studio simply “does it for you.”
It’s a lie. I have personally been burned by taking them at their word. I am speaking from first-hand experience. Like the poisoned punch of Jonestown fame, it is an offering that promises a reward and delivers a detrimental payload instead. That’s why most of what Microsoft proffers is Kool-Aid to me. No thanks, I have had enough glasses to last me for a while.
This doesn’t really communicate why I like open source software and Java. I will have to put that into another entry. Now I have to sleep, and stateless session beans will once again be prolonged…