I guess I’m insecure like that, but I often find myself trying to rationalise my affinity for Free Software. How I do this is by arguing in my head with imaginary detractors. As I understand it, putting your ideas into words and then bombarding them with “Yes, buts” and “What ifs” is the base of the scientific method. Things can get quite heated within my cranium, since I am argumentative by nature and refuse to back down, even when I am attacking something I believe in.
But, it so happens the pro-Free Software lobe of my brain has recently come up with an argument that has trumped those of my evil devil-advocating, proprietary-loving alter egos. It concerns the tech support you get with Free Software.
You heard me.
And, no, I’m not talking about the support you get from Red Hat, Canonical, or SUSE. I’m not even talking about the big corporate-backed projects like Docker or OpenStack. Unless you are really big corporate client, all of the above will probably suck as badly as the service offered by their proprietary counterparts.
Not that anybody really takes tech support seriously, mind. I once gave a talk about the advantages of Free Software at a conference hall full of businesspeople. The crowd was non-techie and represented mainly non-techie firms. The chat itself was geared tailored for the audience: very generic, run-of-the-mill kind of talk. I got bored with it half way through and switched to ranting about Linux versus Windows: David versus Goliath stuff. Stuff everybody can get behind.
I know what you’re thinking: Cheap and trite. I agree. And when the Q & A time came around, the Qs were on the same level and, along with the eternal “How does anybody make money with Free Software?”, the other old chestnut “But what if I need support?” popped up. But I was ready.
“Okay”, I said “Let’s do a little experiment. Everybody raise your hands”.
Fifty hands went up.
“Put your hand down if you use Linux at your workplace”. A couple of hands went down.
“Put your hands down if you’re using… er… an unlicensed version of Windows”. A faint tittering ran though the crowd and about 20% of the hands went down.
“Don’t be shy. The camera is pointing towards me. Unless there’s a BSA member in the audience, which I don’t think so”, I made like I was checking the list of attendees, “you’re safe”. About another 10% of hands went down. “That’s more like it”.
“You people, the ones with the raised hands, are entitled to technical support, right? Okay. Put your hands down if you have never had a technical problem with Windows”. Nobody budged. Surprising? Not really. Admittedly the same could be said of Linux, but let me get to that in a moment.
“Put your hands down if you didn’t get in touch with Microsoft to solve the problem”. The rest of the hands went down — all of them.
The members of the audience looked around at each other, dumbfounded for a couple of seconds. Then they burst out laughing. Point made.
Turns out tech support services for non-techie businesses are what condoms to horny teenagers: they probably should be using them, but very few ever will.
Sure, the demographic I am basing my assumptions on is tiny. Somewhere, a statistician reading this is having a fit right now. But it does seem that there’s a double standard thing going on here. The businesspeople at the event expected from Free Software what they don’t require (or don’t trust) from proprietary vendors. Where did the idea that Free Software does not offer support originate anyway? I don’t want to come over as paranoid, but it seems like someone left their FUD engine running all night and we’re choking in fudon monofudide fumes.
It turns out that support for Free Software is really good. Let’s face the facts: software always comes with problems. The difference is that Free Software comes with solvable problems, but proprietary software comes with unsurmountable problems.
Let’s say your proprietary Microbutt productivity suite crashes every time your try to change the font color in a document (what? it’s happened). Not only is it technically extremely hard to solve a crash yourself (where are the logs? How do you debug machine code?), but it is also explicitly forbidden. Just have a read of the EULA. Find the bit where it tells you you cannot “reverse engineer, decompile, or disassemble the software”. There you go.
If you can’t solve the problem yourself, your options are (a) wait for the service pack to come out in six months time and hope that that particular wrinkle has been ironed out, or (b) phone customer support, have some poor, bored and underpaid dude from Bangladesh read questions and instructions from a script, and then wait for the service pack to come out in six months time.
Compare that to most maintained Free Software packages: They have what are called “nightly” builds. This means patches and corrections are included into the code every single night. Most Linux distros can tap into these builds and you get fresh daily updates righting crashes, covering security holes, and squashing annoying bugs every morning.
Free Software developers, for want of a stable corporate structure, tap into the end user community as their testers and quality control department and have set up frameworks that allow members of the general public to report bugs. The bugs then get worked on in an orderly fashion. Of course, a reported bug may not always get solved in 24 hours, but you can bet it won’t take six months to solve either.
And then there’s the incentive of talking to the coders themselves. They’ll be hanging out in some chat room on Freenode or on a forum within their site. Their policy is usually “You got a problem? Just come in and ask”. I cannot tell you how many times I have gone in and asked for help and got: “Do this”, “Do that”, “Add this PPA to your lists”, “Oh! We messed up. I’ll patch it for you. Update your installed software in a couple of hours and it’ll be solved”, and I have always come away with a solution.
Developers, who are generally averse to offering support or documenting work when on a payroll, will fall over themselves to help you out when you are stuck with their own personal pet Libre project. Because, you know, people love talking about their own stuff. About their boss’s stuff? Not so much.
Yes, yes, voices in my head, I hear you: “such and such a bug went uncorrected for X hundreds of years”, “I went to ask something and some dude told me to RTFM”. Spare me. When a bug goes uncorrected for a long time, it’s usually because it has also gone undetected. As a Free Software user, if you find a bug, it is on you to report it. That’s what bugtrackers are for. You are using somebody else’s work, work they have given you for free. The least you can do is help them out by flagging flaws.
If someone hits you with the RTFM it usually means you have not bothered to teach yourself to use the software. When you switch from one app to another, even if they do the same thing, they will often do it in different ways. To bitch and moan about the options not being in exactly the same place is lazy and definitely not the developers problem. This is something end-users struggle with a lot, and, sure, a “check out the documentation here:” and a link would be politer and arguably more useful, but RTFM at least implies the answer exists and is probably just a search for “documentation X” away on the Internet. That still counts as support in my books.
And it doesn’t even matter, because the fact remains that the adage “Free Software does not come with tech support” is still false. Is Free Software support perfect? No, but, then again what is? And it is still a damn sight better than most paid services of proprietary software companies.