The Free Software Foundation is running a campaign highlighting the “evils” of Windows 7. They highlight 7 deadly sins (of course) and they really make a compelling case against Windows 7. It’s a major shift for the FSF–they usually don’t get all political at this level.

Here’s the bad news: nobody cares.

Corporations that have adopted Windows and Office aren’t about to jump ship to Linux or the ever-elusive “GNU Operating System”. Too much has been invested in infrastructure and training. License fees have been paid. Sys admins have been hired and trained. That ship has sailed.

Small business may switch, but not based on this political action. That decision will be based on one thing and one thing only: impact to the bottom line. Any small business owner that makes this kind of decision without considering the bottom line isn’t going to be in business long.

I am a firm advocate and supporter of Linux. I use Linux every day in my job, both on the desktop and on servers. I have Windows machines, and I own a copy of Office. Why? Because it’s what my clients want. No matter how much OpenOffice touts itself as “Office compatible” it’s not 100% compatible. The differences may be minor and subtle, but when I create a report for a client and the formatting is messy because of the differences, it reflects badly on me. Not on OpenOffice. My client doesn’t care how I create the document. They only care that they can open the document in Word.

When a client asks for full functionality in Outlook, I can’t just tell them they should be using Thunderbird and Lightning. They’ve made a decision at the desktop level to use Outlook and I have to respect that. Now that they’ve made that decision, what’s the best way to give them the infrastructure to support it? Exchange must be considered because, while it may not be the cheapest or easiest answer, it is still arguably the best way to provide full functionality to the Outlook client. Linux based “free” alternatives to Exchange are still largely a variety of different services that have been integrated into a unified platform. If you can get them tweaked out properly, they work and work well. But they require a support infrastructure that’s often foreign to folks like my clients.

It could be argued that situations like the one above support the FSF’s contention that Microsoft locks users in and violates standards. They’re right, of course, but again the decision to go down that road has been made and altering course is often challenging and not cost effective.

I admire and respect the work of the Free Software Foundation (except for the whole GNU/Linux thing, but that’s a different rant). I wish them luck in changing the world, but trying to alter the course of ocean liners isn’t the easiest thing to do and may not be the best way to spend resources.

The Free and Open Source Software (FOSS) community defines two types of freedom:

  1. free as in speech
  2. free as in beer

When consulting, keep in mind that your customer doesn’t want free beer and probably doesn’t care about free speech. Your job is to downplay the free beer aspect and educate about the free speech aspect.

Why not free beer? Free beer is fine, but giving away anything else of value, like software, plays to our “you get what you pay for” mentality. That’s a dichotomy that’s not easily broken, especially in the business world.

When undertaking a new project, smart business people will set out a budget and work diligently to keep the project within that budget. If I come in and bid a FOSS-based solution, I don’t start by heralding the fact that the software is free. Software, even free-as-in-beer software, is never free. Even if the code itself is free, there’s still the need for building an infrastructure to run the code, installing and configuring the code, and ongoing maintenance of the code. It would be irresponsible to even hint that there’s no associated cost with the software. Breaking the software out from all the other pieces and attaching a $0 price tag to it is disingenuous.

So what to do?

For starters, calculate the cost of the software. Separate the parts of building out the infrastructure, installation and configuration, etc. as the software cost. Add the ongoing maintenance costs as just that—ongoing maintenance. Make your consulting fees about consulting: requirements analysis, recommendations, project management, usability and acceptance testing.

Second, highlight the free-as-in-speech element of FOSS-based solutions:

  1. no vendor lock in
  2. support for open standards
  3. community development
  4. availability of source code

Each of these elements is important, but they can mean nothing to the client without your explanations. Educating your client is part of your job. Don’t teach them to expect something for nothing, or nothing is what they’ll offer you.

By highlighting free-as-in-beer, you run the risk of having the client think: “Hmmm… I could have my bosses nephew install that. The software’s free. What could go wrong?” Down that road lies madness for the client, but they often don’t know that. They only see the chance to save the money they had budgeted for the project.

When performing the job, you have to differentiate yourself. Illustrate why simply having the nephew do it doesn’t make sense. Show that you will complete all localizations, including branding. Don’t show screen shots of the raw software—show screenshots after the localization and branding is complete. Even if you have to mock these screenshots up, there impact will be much greater. Demonstrate the ways in which you’ll document the setup and use of the software. Have a stock acceptance test plan that you can show the client. Keep your toolbox full of little things like this. These are the things that separate the highreasonably priced consultant from the bosses nephew.

Well. These things and years of experience…