Confessions of a half-hearted warrior

Mea culpa! Mea culpa! Mea maxima culpa! I use Windows. There. I said it.

I could pretend that I hold my nose during the day and only use Windows at work. To defend myself, I could make a case that I use Linux and open source most of the time; in fact, I used Fedora Core 5 and Open Office to write this piece. But, I have a confession to make – well, several confessions. I am not a true believer. I am tagging along with the open source movement. I am too self absorbed to really get excited about the politics of it, or to get shrill about it. I would have been happy using proprietary software if that were all that was available. I am a Johnny-come-lately to the cause. In the war for free software, or for open source, most of the time, I am cleaning latrines rather than planning troop movements or risking my life. I would prefer for my side to win, but mostly, I want to live my life – I will always be willing to accommodate the enemy if I have to.

I do not burn to see Bill Gates begging for change on a street corner. I could manage a mean spirited smirk if I saw Larry Ellison waiting in line at the food bank, but I would feel bad about it right away. If Larry called me tomorrow to offer me a high paying and interesting job, I would take it. I will probably always be a hypocrite when it comes to open source. I like developers more than I like software companies, even when these companies do produce open source products. I like smart, enthusiastic people who do a good job and work well together, even when we are not using open source tools.

It is easier to install stuff on Windows. I am not complaining because I am too wimpy to use the command line, or to compile from source and edit configuration files. Maybe I do not want to do that every time – but, more importantly, I do not expect my clients to do that. Linux needs a popular, easy too use system for reliably managing and installing software that is shared across distributions. Package management for dummies in all the main distributions is a must. I know that most of my clients cannot compile the code themselves or spend time trying to resolve dependencies.

I like using SQLyog on a Windows box. It installs very easily, and I can move databases from one server to another with little effort. I can even schedule backups and other tasks. I know that I can use cron on Linux, and I know that there are scripts I can write, but I am lazy. Even when I am deploying an application to my server which is running Centos, I often develop using MySQL running on Windows because it comes with the MySQL Administrator. I know that I can install the MySQL Administrator on Linux, but I am a creature of habit – once again, I am lazy. SQLyog is great, but it only runs on Windows.

I also love to run Eclipse on Windows. It finds the JRE without my having to edit environment variables. It seems to run faster on Windows at times, but the latest version of the JRE provides some good speed improvements on Linux. Of course, that is not the version of the JRE most Linux distributions ship with. I know that I can deploy my code to Linux later as long as I commit to testing it on Linux as I go. The Eclipse documentation seems geared for people who run it under Windows – why cause problems for myself? However, I do run it under Linux just for fun.

Therefore, let me make myself clear. I admire the Richard Stallman’s of the world. As far as he seems to go in supporting the idea of free software and freedom in general, I find that he is consistent and he makes sense. I agree with him often. I just don’t feel as strongly as he does. I remain willing to compromise. I love to code, but I have to confess to being promiscuous when it comes to software.

However, I do care about the right to choose, and I prefer to keep my options open. I use Python because it can run on either Windows or Linux. I use PyDEV to edit my Python, and I use Subversion all the time. At work, we are running Subversion of a Windows box and we use the Tortoise client. In my own time, I run Subversion on a Linux box, and I access my repository using a plugin for Eclipse. As much as possible, I like it when my experience can be the same on my Linux box as it is in Windows, or vice versa – I do not want to think about the differences. Hence, I use Open Office, and save my files to a file server that I can access from either Windows or Linux.

In practice, I care about the right to choose, and I want to give my clients value for money. It does not seem right to tie them up in license agreements and license fees. I do not want to paint them into a corner and leave them stranded. A product would have to be clearly superior to the open source alternatives before I recommended it; and, it would have to be obvious that the superiority of the product made a difference to my client. Most of my clients, even government clients, have simple requirements and run-of-the-mill business problems. I am also arrogant enough to believe that it matters more to my client to hire me, an experienced professional with years of experience, than it does to select one tool over another, proprietary or not.

While some people are busy spreading the faith or changing the world with open source, I am often focused on the day-to-day problems of building and maintaining systems to manage information for the people who hire me. I will use the tools they prefer to use if they are not open to suggestion, and I will still have a sense of accomplishment at the end of the day. I care more about my personal brand, and my workmanship, than I do about about the tools I have to use.

So, I confess: I use Windows on a regular basis even when I have a choice. I am lazy. Sometimes I do not change because it is easier for me not to. I am not out to change the world – at least not the software business models of the world. A world that only had proprietary software would still be worth living in for me. I am not an open source zealot, but the war is going to be won by people like me: grunts who end the day wanting to get off their tired feet, who often care more about what is being served in the mess tent than they do about truth, justice and the open source way. Still, as the army moves, my friends and I claim new territory for open source every day.



Leave a Reply