A Potted history for free software

Lets start with Unix and C.

Unix is an operating system. I guess that these days I had better explain it in terms of Microsoft Windows. The Operating system is the bit of software that comes pre-installed on your PC. It is the plumbing that lets everything else work. As a general rule, you don't get to see it but nothing happens until it is loaded. When your PC "boots" and shows you progess bars and banner screens, it is the operating system that is loading.

The Unix operating system was invented by folk including Ken Thompson, Kernigham and Richie, who worked at Bell labs, part of the US telephone giant. They had to build software for different computers and were tired of starting from scratch every time, so they wrote a compiler (the program for taking program code and turning it into programs that actualy do work) and an operating system that were "portable" - they could run on many different types of computer.

The Operating system was called "Unix" and the compiler was called "C". they shared their work with their friends. As a result, many Universities run Unix and C on their computers. The computer world was a friendly place, a small community. Powerful computers were so rare and expensive that everybody dealing with them tended to know everyone else.

The next person in our story is Richard Stallman. He loved the community that was growing up around Unix and wrote a very powerful (and complicated) editor called EMACS. Thirty years ago, EMACS could do things that even today, Microsoft Word can only dream about. Richard did what anyone else would have done - he released it into the community for other people to share and benefit from.

Along came a company called Uniplex. They took Richard's editor and tidied it up, made it pretty, easy to use, easy to install and sold it as a boxed product. Now, Richard is a generous, easy-going guy. He didn't mind them making money out of it. Richard's interest was in making it powerful - he couldn't be bothered with the tedious job of making it easy and didn't mind Uniplex from benefitting commercially from their effort. The thing that stung was that they didn't give it back. Even though the improved version of the editor was based on Richard's work, the new version was licenced so that it couldn't be shared back with Richard and the rest of the community.

Richard vowed never to let this happen again. He wrote his own licence. A licence called the Free Software Licence, based on copyright, which is designed carefully to preserve the freedom to share software. The English language causes some confusion here, because despite the fast that "Free software" is available without cost (ie: Free as in "Free Beer"), what it is really talking about is Freedom to copy (ie: Free as in "Freedom").

The licence is exceedingly well written and has stood the test of time. There is now a huge software industry and lots of people have made plenty of money from free software, but the freedom remains.

Armed with his licence, Richard went off to create more free software, which he called GNU. GNU is similar to Unix (indeed, GNU stands for "Gnu's Not Unix" - these folk have an odd sense of humour).

Now Unix splits into two main sections. There is the Kernel (the underlying bit that loads when you boot) and the utilities (all the useful little programs that you actualy choose to run. Richard started by writing all the utilities, including his own C compiler. He completed these quite quickly (he's a clever lad...). The last bit was the Kernel. Richard has special plans for the Kernel - his intention is to build it in a clever, flexible manner that makes it small and powerful. Last I heard, he's been working on this bit for 20 years and it's still not quite ready to go live.

In the meantime, a student by the name of Linus Torvalds out in Scandinavia decided to write a simple kernel for his University project. He was aiming lower than the lofty height of perfection that Richard was after but as a result, he built a working kernel within a reasonable time. By adding Richard's set of Gnu utilities on top, he soon had a complete, free operating system, which he called "Linux".

Linus had a smart idea. He released a new version of Linux every day. This way, when people contributed improvements and fixes to Linux, they got the benefit back immediately and smart people flocked to the project to make it better every day.

And thus we have the core of the free software world. Built on this history, we now have Open Office - a complete replacement for Microsoft office. The Apple Macintosh, which is built upon FreeBSD, a close relative of Linux. Wine - a complete windows environment that allows you to run Windows programs on top of Linux.

My English teacher told me that as story should have three parts. A beginning, a middle and an end. This story doesn't really have a proper ending. But I gues that's ok, because there is no end in sight for free software.