Daily Archives: August 17, 2008

Open Source considered Useful

Guest posting from Gary Phillips by the kind invitation of Mukesh Kumar.

Windows considered Harmful
Open Source considered Useful

Hello fellow computer geeks

I guess you are all masters of Windows or at least disciples of Guru Gates.

I’m making this effort to encourage you to start working with open source programs because I think it will make you a better computer engineer, make better use of your computer’s resources, allow you to contribute better to your country’s development and might even save you some money.

I’m writing this in an excellent word processor in a virus free operating system on a tiny, lightweight and cheap laptop expressly designed around open source. Top marks if you guessed I’m using an Asus Eee PC (512Mb RAM, 2Gb SSD, 900Mhz Celeron).

From a computer geek’s point of view, the best thing about my laptop is that I can see the original source code of every program, every driver and every library. I can examine the code in order to learn from it, I can modify the code to add a feature or fix a bug and I can even share my changes with other developers. You might think having this level of control over my computing environment might be very costly but the only cost to me was downloading the software over my broadband internet connection.

What is Open Source?

“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.”

The Open Source movement began when a few developers wanted to have more control of their computing environment. They wanted the freedom to change programs to suit themselves. Their leader, Richard Stallman initiated the GNU (GNU’s Not Unix) project which was an attempt to replicate his favourite operating system (Unix) with code that could be examined and modified by anyone. Stallman started the Free Software Foundation (FSF) with the goal of supporting development of software which could be freely modified (the meaning of ‘Free’ for FSF is ‘Freedom’). Over the last 25 years the number of projects using an open source license has grown dramatically, most particularly through the success of the Linux Operating System.

The most well known Open Source applications are Firefox (web browser), Thunderbird (email reader), Open Office (word processing, spreadsheet, presentations), Apache (web server), MySQL (database), PHP (web programming language) but there are hundreds (or thousands) more. Many open source applications can run on Windows as well as Linux.

In India all software is free. Well yes but it’s only free in terms of initial cost. My pirate Windows XP CD from Nehru Place has 2 viruses on the disk. I can’t pick up security updates from Micro$oft so my computer is more prone to infection. In Leh this summer I had to repair 18 school computers which had almost ground to a halt from the infestation of viruses and worms. Open source software tends to have fewer security problems than closed source, most obviously because more people can look at it to find and fix security bugs but less obviously because the open source development model forces a modular approach to system building. A bug in Firefox does not affect my use of Open Office but a bug in Internet Explorer has implications for Microsoft Word since they are tightly integrated and share a code base.

Windows itself is a huge pile of poorly engineered and closely linked components. Most effort in new releases goes towards increasing the feature count, gratuitously changing the user interface and maintaining binary compatibility. Not much attention is given to improving system stability or run-time performance. You’ll know about these effects if you’ve tried to use the latest versions of MS Office or (horrors!) tried to run Vista on a system that handles XP perfectly. Open source systems tend to have different aims. For example, the Linux kernel has become faster and less resource hungry over the years.

The highest traffic web sites run on open source including Google, Amazon, Ebay, Facebook, YouTube, MySpace, AOL.

Embedded systems often run on open source, this includes your TV set top box or satellite receiver, internet router, fridge and increasingly mobile phones (the most popular mobile phone software is Symbian OS which is being ‘Open Sourced’ next year).

Do you want to trust your life and your country to a huge monopoly whose idea of innovation is to buy any company that has a new idea? India has enormous potential as an IT development powerhouse but I hope it will not become just an outsourcing department of Micro$oft.

I encourage you to install some open source applications, perhaps from the TTCS CD-ROM of open source applications for Windows (that’s Trinidad and Tobago Computer Society, www.ttcsweb.org). This collection includes applications for office, games, multimedia and education.

You might also try out one of the many Linux distributions. My favourite is Ubuntu which comes in a live-CD version (boot your PC directly from the CD, run all the applications and decide later if you want to install it along with Windows) www.ubuntu.com.

I’m very interested to read any comments or questions you have and will do my best to help you.

All the best

Gary Phillips
Freelance Software Engineer