$ cat posts/its-not-the-code-stupid.md
It's not the code, stupid!
When I say that I know a mission-critical system, one that supports one of the highest-traffic sites in Latin America, that moves a lot of money, and that runs on Windows and SQL Server 2008, a lot of people who swear they’re technology experts look at me funny. Of course: Microsoft supposedly makes nothing but garbage that’s good for nothing, and nobody puts mission-critical systems on Windows. Except that’s only half the story, because that same site has, as its front end, an open source Java application server, running on RedHat Linux, with Apache as the base platform. That’s when the look of surprise gets bigger. There are others, more “expert” still, who are puzzled that everything I’m describing isn’t running on an Oracle stack.
How is it possible that such a monstrosity exists, and that it works so well on top of that? Very simple: because there are pragmatic people, who don’t get bogged down in tiresome arguments over whether free software is better, or open source, or “privative” operating systems (with all the incorrect and ill-intentioned connotations of that word).
Software is like music, there are only two kinds: good and bad. I don’t like reggaeton, but there is good reggaeton, just as there is very bad classic rock. Same with software. There is very bad open source (or free) software, and proprietary software (ok, fine!), I mean privative software, that is very good!
In software what matters is, first, that it works, that it is robust, and that it gives you few headaches. The license? The license is for keeping the dementors, the auditors, calm. Plenty of old IT managers will tell you that what matters is having someone who answers for it; whether it’s an open source company or a more traditional one is not relevant. What matters are the guarantees you have when things fail. Having a support contract that ensures a serious company will respond when things get ugly lets IT managers sleep at night. It used to be said that nobody got fired for hiring IBM, or Oracle. Now there are more alternatives in the open source world; nobody gets fired for buying support from RedHat.
After all, without the billions of dollars invested in open source, and without the 6-figure salary Linus Torvalds draws, we wouldn’t have excellent open source products like the ones we have now.
Companies need insurance. The core business of IT departments is not taking part in open source product development communities; those developers are there to deliver solutions and keep their companies' services running. Very few corporations can afford the luxury of having one of their developers spend hours contributing to an open source project, even if they have the skills. There simply isn’t time. It is more efficient to pick up the support phone, or open a ticket, so that an engineer somewhere in the world solves the problem.
And access to the source code?
Honestly, what good is the code if you probably don’t have the skills to fix the bug? Or if you do, you probably don’t have the time to do it, especially with platform products, like operating systems or database engines, which are monsters with millions of lines of code that demand superior programming skills. Besides, what for? You were hired to do something else!
The source code is insurance, nothing more; you can just as well take out a policy with whichever company you trust most.
What matters is the governance of the software, that is where the value is.
Comments
comments powered by Disqus