Open Source vs. Commercial

Scott's been tracking the open source vs. commercial debate and I've been meaning to weigh in.

Several governments are requiring that their I.T. folks stick to open source platforms and apps. I can't remember the last time a government specified "cars in the motorpool should not require a licenced mechanic to repair," or "only get photocopiers the secretaries can repair," or "only hire architects who let us fiddle with their drawings." But now you could also add "we wanna see the source so we can use undocumented features and complain when they break."

It's a giant crock. And not of tasty chili.

If something else is going on, what could it be? What motivates this call for open code? Well, in my years with government I knew one constant: when there were lay-offs, the I.T. department grew. I.T. even had a separate union to kill the risk of everyone walking the lines at once. Offering a golden handshake to dump the deadweight? Cool. That meant we'd get another full-time developer and maybe a network upgrade. As Nantucket Clipper is my witness, this was at least an annual event.

Now the call for leaner staffing is louder than ever, so what's an I.T. group to do? Everyone knows it takes more skill to maintain Linux than it does Windows. Windows is the long-term ROI payoff, Linux is a free download today. No government department I ever heard of budgets for a 3 to 5 year span. And Linux has geek cachet, if it doesn't get you re-hired at least you'll speak the jargon. You don't look like a dummy, if you were a government I.T. guy what would you pick?

Commit to Microsoft and any grad with a breaking voice to match his complexion is an MCS-something away from doing your job cheaper. Windows is cookie-cutter, Linux lets you build all the nooks and crannies you please. Make a case in any given year that Linux will save tens or hundreds of thousands to deploy and if you place those nooks right, your job (and post-job consulting path) is safe for the lifespan of the platform. If you're the sort of person who asks, "Who would do that?" then you haven't lived.

I had some great people around during my first internships. Vaughn wrote robust code and knew how to test. Murray knew databases and taught me to write code that anyone could maintain. But as the orange glow of a Compaq 286 luggable was my witness, 75% of the pre-existing apps I was assigned to work on were easier to rewrite than update. It was a culture of bad code. Murray, Vaughn, and every other competent architect, developer or network administrator inevitably moved on.

25% of that bad code could be blamed on a lack of training. Training's priority on the totem pole came just below conversion of a washroom to a "separately ventilated smoking room." The real problem was the other 50%. This code was difficult to trace, hard to maintain, and often produced by shops who would only fix bugs if you bought a "service agreement."

You can draw a Microsoft/commerical comparison there, but it would be weak. This was proprietary stuff, there was zero market pressure (or motivation) for the vendor to otherwise lift a finger, an argument which sticks to open source stronger than to commercial apps. The endgame is this: if the original programmers are intent on protecting their gravy train, you can not fix these apps in-house if you tried. Opening the source would not help. Keeping the free-market free of artifical rules is the only path to superior software.

I was once called in because after six months no one could figure out how to add a single new total to a critical report. The code was disgusting. The original authors wanted as much to add that value as they charged to write the app. It took me roughly a week to re-write the whole damn thing for a fraction of the price, with the goal that any grad with a spare coffee break could now trace an obscure bug or add features to it.

Will opening the source produce better behaviour from vendors? I don't see a reason for it. Will it help or hinder government I.T. job security? Call the bookie, I'll take a marker for four-score finskis on "help." Is this true of every government I.T. department? Not at all, there are loads of top-notch people who could code the stuffing out of the best corporate guys. Are they common? Sure, at least as common as those photocopiers that never require service calls.

No Comments