Sun, 20 May 2001

Open source software makes programming more efficient

By Vishnu K. Mahmud

JAKARTA (JP): I watched the film Antitrust at Plaza Senayan the other day and was struck by how relatively accurate the film was to real life, considering Hollywood's track record with "based on reality" movies.

Two college friends, on the verge of starting their own software business, get invited by Gary Winston (played by Tim Robbins) to join his multi-billion dollar company. One of them accepts the offer to be a part of computer history, while the other declines, disturbed by the monopolistic and proprietary nature of the business. It was, as he puts it, totally against the principles of Open Source.

But what exactly is Open Source? You have probably heard that buzzword now and again, especially in the same breath as Linux Operating System, the most successful platform of the Open Source movement. According to it's web site (www.opensource.org), Open Source "promotes software reliability and quality by supporting independent peer review and rapid evolution of source code".

In other words, anyone who creates software can have the actual program or source code studied by other programmers who can also contribute to making the program more reliable, efficient and robust. In essence, a chef can have his omelet recipe evaluated by other chefs to make sure he has the best tasting dish.

But instead of saying, "too many cooks can spoil the soup", one can then have a collection of omelet recipes to suit individual tastes. Using the Open Source concept, a programmer can write an application to enter information into a database. He posts the program online, which is downloaded by a system administrator who uses it for his company. He makes changes to the application so it not only enters information but also verifies it with four other databases. Once he is done, it is again uploaded to the net for others to use.

It makes programming software more efficient with the pooling of ideas and resources from people all around the world. That was how the Linux operating system got started. In Finland, Linus Torvalds began his quest for a UNIX-like operating system for consumer desktop computers and had the help of the entire planet. Today, LINUX is one of the more popular Operating Systems for web servers, a major backbone of the Internet. LINUX is also making inroads in the consumer desktop computer market.

Open Source advocates point out another advantage for the software customer: you are not a prisoner. Under current (proprietary) software licenses, the software purchaser is tied to the software vendor, be it for support fees or software patches for recently discovered bugs. If the company goes out of business or if the after-sales service fees become unreasonable, you are out of luck. With Open Source, you can always buy support from another company or change the program yourself.

What about security? Wouldn't professional companies produce bulletproof software compared to a bunch of hackers scattered across different time zones? Yes and no. Some companies would not be too open about flaws in their software and sometimes take weeks to release a patch. Since Open Source software is freely available in both binary files (the actual running program) and source code (the actual line by line code of the program), an unlimited number of people can find the problem and fix it.

There are no secrets in Open Source. It is impossible to plant a Trojan horse virus or covert back doors into your software or operating system as the code is made public. Since proprietary software is considered a trade secret, there is no way the user or purchaser of the software can fix any problems he may encounter or ensure its security. In essence he or she is taking a leap of faith in the software developer.

As one of the characters in Antitrust said, knowledge should be free and for everyone. At least it shouldn't be expensive. No one should have to pay for poorly written software that constantly crashes your computer, erases your data and corrupts your operating system. Such software only sells well due to a monopoly that allows producers to charge exorbitant prices (not including upgrades).

With Open Source, companies can save money with "free" software that comes with lower prices and licenses. Red Hat, a Linux distributor, does not sell their software (which is freely available for download from their web site) but makes money on the after-sales service and support.

This does not mean that all proprietary software is bad, but perhaps it's the concept of a closed system that gets the goat of a majority of computer hackers. When someone buys a car, they usually want to make sure that the engine is working efficiently and that there are no leaks or problems. They should be free to tinker with their car to make it faster, more efficient and attractive. How can you check if the hood is locked and the auto manufacturer has the only key? (vmahmud@yahoo.com)