Open Source Benefits by Randy Kemp
Have you ever read Henry David Thoreau or Ralph Waldo Emerson? Well, one day Thoreau was in prison, for refusing to pay a war tax, and Ralph came to visit him. Ralph opened up with the question, “what are you doing in there?” Henry retorted, “My dear Emerson, what are you doing out there?” Now, like Emerson, I am asking you this question. When it comes to open source, “what are you doing out there?” Come inside and enjoy some of the benefits. It is quite possible that folks joining me today may have missed my first guest blog. So let’s start with a brief definition from http://www.jahadesign.com/glossary.htm. Open source software is “a program in which the source code is available to the general public for use and/or modification from its original design free of charge, i.e., open. Open source code is typically created as a collaborative effort in which programmers improve upon the code and share the changes within the community.”
Now before you fall asleep, let me ask this question. How do you view open source software? Let’s look at Greek myths, and see what side you stand at. Do you see it as Pandora’s box, which contained all the evils of mankind, and should be hidden away somewhere? Or do you see it as the mythical Greek bird the Phoenix, arising from the ashes of closed-door software? Perhaps you have never thought of this question. Maybe you read my first blog, but have no conception what the benefits are, so we will explore them for you. .
Let’s make it simple. There was a joke about an Amish family, visiting a shopping mall, for the first time. The family sees an elevator. They observe a middle aged woman entering the elevator, and the door closes. Next time the door opens; a beautiful woman exits the elevator. The husband turns to the wife, and says, “Honey, can you please go through that door?” If it worked like the Amish man thought, and it worked consistently, any company could sell this invention to every Amish male. And similarly, if the wife saw the same thing happen with a man, and a handsome dude consistently exited the elevator door, sales to Amish women would be easy.
Let’s translate this into a practical example, by posing a question. If you brought a commercial web server, how large is the average support staff population? Let me answer that with a real world example. When I was on the production staff of an engineering company Motorola, we had six people in the US, and about five in India, to support thousands of engineers. So we had to be quite certain that the software releases weren’t buggy. Now a product like the Apache web server has hundreds or thousands of contributors, and millions of users using the product. So if a serious release bug were to incur, how long would it take to fix it? It would probably just take a few hours, to fix the problem, and issue a new release. So could we say that a product like Apache is reliable?
Imagine you were taking an engineering exam, in which a high-power rifle has been disassembled. You are left with an instruction manual, written in Swahili. A hungry lion comes into the room, and you’re told to take the appropriate action, and justify your decision. If working with open source were anything like that, you wouldn’t want any part of it. Quite frankly, neither would I. Software that has been around any length of time is amazingly stable. When I was working on Unix scripts in Perl, or running the Apache web server on Unix, I never had a problem with either product. At Motorola, we had a network that thousands of engineers around the world worked on. So we couldn’t afford to takes risks, with open source software that doesn’t work.
At one time, Career Builder told the story of a job applicant, interviewing for an administrative assistant position. There was a downpour the night before, and the roof had weakened. The ceiling tile collapsed, due to the weight of rainwater, and drenched the female candidate. She then informed the interviewer she was no longer interested in the position. Now had a building inspector come to inspect the roof, before this interview took place, the candidate may have been offered the position, and might have accepted it. In open source software, since the code is available for all to see, anyone can audit it, and certify the software. Sun developed a series of tests, designed to certify a J2EE server. After JBOSS (which is now owned by Linux Red Hat) reached a compromise with Sun, so that open source J2EE servers could be certified, JBOSS passed with flying colors. Thus anyone (other than the vendor) can certify the product and code.
Back in the early days of AT & T, when they were a monopoly, the company suffered a glitch with their computer software. A family kept getting a bill for $0.00, and no matter whom they talked to at AT&T; the bill was marked “past due”. After exhausting all efforts at an effective solution, they wrote out a check for $0.00. This marked the end of their billing problems. And that is all you have to do: write out a check to your favorite open source product for $0.00. But if you really like them, and wished to make a tax-deductible contribution to the development effort, they wouldn’t object much. What does it cost to run a database Oracle or SQL Server, compared to MYSQL or POSTGRESQL? For the record (from my last reading), Yahoo administers all their email databases on MYSQL.
Flexibility and freedom
Remember the old Spiderman movies? The main character, Peter Parker, failed to stop the crook, and the crook later killed his uncle Ben. Ben’s sound advice to Peter is that with great power comes great responsibility. With open source software, your company can tailor, repackage, or bundle it with other priority software, which the company is developing. You can tailor the source code to your own needs, or embed it in software you create, and release it to clients. The freedom is in the license. But always keep this old saying in mind: “Be careful what you ask for, you just might get it.” So as uncle Ben would say, “with great power comes great responsibility.”
Support and accountability
I remember a famous infomercial for a set of knives, called Ginsu. These knives have been around since 1978, and if you watch the infomercial, they can cut through a nail, a radiator hose, or a small, extra-thin tomato. But suppose I were to purchase a set of Ginsu knives, tried to cut a nail in two, and it failed to cut it. Who do I hold accountable, or call for support? Fortunately, this question is easier to answer for open source. For popular projects, such as Apache, Linux, MYSQL, POSTGRESQL, there are reliable and reputable companies, which will provide support contracts, at a fraction of companies selling commercial wares. For a database like Oracle or SQL Server, the support contract could easily start at six figures. For open source databases, like MYSQL or POSTGRESQL, it could be anywhere from a few hundred to a few thousand for an annual support contract. This buys you a dedicated support house, putting their name behind the product. In addition, for a well-established open source product, there can be several thousand people involved in the community code fixing process.
So what are the next steps, for open source software, as far as the reader is concerned? What I would recommend is taking a word processing package like Open Office (http://www.openoffice.org/), an accounting package like GnuCash (http://www.gnucash.org/), the browser Firefox (http://www.mozilla.com/en-US/), or the podcast player Juice (http://juicereceiver.sourceforge.net/). Take the products for a test drive. Compare them to the commercial products, and see how they stack up. You might just be surprised. Now let’s end with a story. Many years ago (maybe it still exists today), there was a cartoon strip entitled Animal Crackers. One character named GNU, who was a Wildebeest, had one ambition in life. GNU wanted to jump a particular canyon width. Several of his relatives and friends failed to do this. So will we finally join GNU, as he jumps the canyon of indecision, and ends up on the side of open source?