Sitting in the airport at the end of a week's business trip to the US, I reflected back on the week. It turned out that my colleague on this trip has an even worse sense of direction than myself...Potentially disastrous, especially when you're driving between airports, hotels and meetings in cities that you've never visited. This is where Google Maps becomes utterly indispensable. Installed on my Nokia E71 it makes use of the built in GPS and 3G and Edge networks to provide a running view of where we are, driving or walking. Without it we wouldn't have found the wonderful Boulderado hotel or the Boulder Bookstore with its impressive converted ballroom. Actually, we'd probably still be driving around somewhere near Dallas. Life changing and mind boggling as the online, always connected life of a sometime digital nomad is, what is even more amazing is that a large part of it is being supported by open, sometimes referred to as "free" software. How did this happen? I'm privileged (and old) enough to have seen some of it happen. Lucky enough that hacking software as a career was invented in time for me to decide to take Computer Science as a degree and start programming computers. History of Open Source SoftwareIn the beginning, software was free. Those early computers were hard to program and the early programmers shared what they had learned...They were proud of their programs, their neat tricks. Indeed, the term "hack" means a clever or quick fix to a computer program. As computers moved from being "bespoke monsters" (built out of valves needing reinforced floors) the early computer companies, such as Digital Equipment Corporation, gave out the sources to their operating systems and applications to their customers. The customers fixed problems, invented new programs, supported new hardware and gave the software back. In those days, no one had heard of a EULA. In the 70s and 80s, as the speed and complexity of the systems rose, companies realised that software had value and then started to charge for that software. A turning point was Bill Gates' famous letter to the Homebrew club pointing out that in his view, sharing software was in fact stealing. Microsoft's view that software was a product in itself has built a huge and influential corporation. For many people throughout the world, a computer is synonymous with the Windows operating system. Birth of Open Source: Richard StallmanThe turning point and agreed birth place of open source was Massachusetts in 1983. An MIT programmer by the name of Richard Stallman found that he could not print on a new printer. Worse than that, he couldn't even attempt to fix the problem himself as he had no access to the software. In 1983 he formed the GNU project (GNU is typical of his love of word games, the acronym stands for "GNU's Not Unix", a neat, recursive definition). Later, in 1986 he formed the Free Software Foundation and in 1989 he created the first version of the GNU General Public License, GPL for short. His vision is for a totally free and open computing environment, where everyone has the rights to inspect and modify software. Stallman's plans were grandiose, he envisaged a time when all of the software in a system would be free. He started with the tools that you need to build a system, editors, compilers and linkers and dreamed of a Unix like operating system called Hurd. Stallman remains, influential, often giving talks to at Universities, persuading them of the value of open source. One such student hearing that talk in Helsinki in 1991 made the next step towards Google Maps on my mobile. Linus Torvalds's Appeal for Help from the CommunityHe is Linus Torvalds, then a Finnish student. At that time Minix was used as a teaching aid, but the trouble was that Linus could not afford to buy it. He did however, have a 80386 PC and he was a programmer so he started to program. Originally, just a terminal emulator so that he could access the Helsinki Unix servers remotely. Naturally he used the FSF's GNU compiler, gcc. He'd seen Stallman talk and used GPL as the license for his work. His next step was brilliant, he appealed for help via the newly emerging Internet. The results were spectacular and, by 1994, the first fully functional systems were ready and Linux version 1.0 was declared. It was at this time that I added my own footnote to this remarkable story as I joined in the port of Linux to Digital's Alpha processor. Perhaps more significantly, it was at this time that the port to the ARM architecture was started. When Google was created, back in 1997, they needed vast arrays of servers that could comb the web, create indexes and export the results of their search engines via their now iconic web site. Linux, together with low priced yet powerful hardware was the obvious answer. Google are not alone, cloud based computing and social networking are populated by companies built on open source technology. Household names such as Amazon, Facebook, Twitter are all built on open software. In the last few years, mobile computing has shifted significantly towards open source. The specified item was not found. has established the Symbian Foundation, open sourcing their mobile phone technology. Google's Android is allowing widespread innovation in the handset. It should also be noted that Apple's iPhone has significant amounts of open source, not least of which is WebKit, technology underpinning their Safari web browser.
Why is Open Source Important?I can now answer this article's question; open source is important because it underpins both Web 2.0 and the smart mobile devices accessing and interacting with the cloud at work and socially. It is supporting fantastic amounts of innovation, innovation that is changing people's lives. I believe that the future includes, intuitive to use always on low power smart devices.
ARM's Contributions to Open SourceWhat surprises people is that ARM, an IP company, embraces open source. They're even more surprised when they realise how long ARM has been contributing to open source and the areas that it is working on now. The fact is that ARM processors are used in a wide range of devices, both proprietary and open source and it is important to ARM and its partners that ARM technology is well supported by open source software. As we design new architecture and processors, we implement support for them in the Linux kernel and the GNU tool chain. We sponsored work to enable ARM as a supported architecture within the Debian community and we're working closely with many Linux distributions, including Canonical. Recognizing that web 2.0 technologies are important we have been contributing towards web browsers, java and javascript engines; tuning them to work well on our processors. ARM is not alone, ARM's partners are working hard in these areas too. That is why I was visiting the US.