“Linux is a cancer”, “Open source sofware is not sure and not secured”… Nowadays these affirmations sound weird, but a decade ago we could hear that kind of affirmations by some people working in IT. Currently, Open Source is everywhere, not only in software. This article is the first part of a series dedicated to Open Source’s world. In this first article we will cover the history from the beginning up to the mass market deployment.
Before Starting…. Free or Open Source software?
Free or Open Source? Some people say that is the same thing. But it doesn’t. Those terms refer to same set of licenses but imply different underlying values:
Free Software was essentially designed and developed by Richard Stallman in the 80’s. The focus of this concept is to have the freedom to run, copy, distribute, study, change and improve the software. He founded the Free Software Foundation in 1985.
Open Source focuses more on the consequences: effective collaboration on software development and impact on enterprises.
We’re going to illustrate and discuss these aspects further in the next chapter. A more detailed article will cover the legal aspects of Free Software and Open Source. For now, let’s focus on how it began…
From the beginning… Universities & Labs
There are some stories about the beginning of Open Source software. One is given by one of the most important and influent people of the free software movement: Richard Stallman (rms). In his biography, he said that the concept behind free software really started once he and other hackers were refused access to the source code of a laser printer. This experience convinced Stallman of people’s need to be able to freely modify the software they use.
Then he announced in 1983 the plan for the GNU Operating System and published the GNU manifesto. Richard Stallman contributed to many major free projects: Emacs, GCC, GNU Debugger, GNU Make. He is one of the most influential person of free software industry through his action in Free Software Foundation.
When Richard Stallman started the GNU project, his goal was to make a free software clone of UNIX. The design selected was a mini kernel, in contrast to most other systems (Windows, MacOS) based on monolitic kernels. By this way, the development of a new kernel (HURD) started but was too ambitious and failed to attract development effort to create a full operating system. At that time, the main weakness of GNU was really its kernel.
Linus Torvalds & Linux
Linus Torvalds started in the 90’s the development of a new kernel. As said above, before Linux there were some kernels which could be useable with GNU tools: HURD, minix, BSD and so on. Linus Torvalds began the Linux project on minix using the GNU C compiler. He provided the “missing piece” of GNU distributions: the kernel. He first published the Linux kernel under its own licence. It strongly restricted commercial activity. The software to use with the kernel was software developed as part of the GNU project licensed under the GNU General Public License, a free software license. The first release of the Linux kernel, Linux 0.01, included a binary of GNU’s Bash shell.
In the “Notes for linux release 0.01”, Torvalds lists the GNU software that is required to run Linux:
Sadly, a kernel by itself gets you nowhere. To get a working system you need a shell, compilers, a library etc. These are separate parts and may be under a stricter (or even looser) copyright. Most of the tools used with Linux are GNU software and are under the GNU copyleft. These tools aren’t in the distribution - ask me (or GNU) for more info.
After the first release, he suggested releasing the kernel under the GNU GPL. His decision permitted to integrate GNU components with Linux to make a fully functional and free operating system. Torvalds has stated, “making Linux GPL’d was definitely the best thing I ever did.”
The Cathedral and The Bazaar
GNU and Linux are both free software but used different ways of contribution. In 1997, Eric Raymond, a free software advocate, penned The Cathedral and The Bazaar, comparing the development styles of the GNU Project and the Linux Project. The two models:
- The Cathedral (GNU Emacs): source code is made by a small group of developers, distributed freely with each software release.
- The Bazaar (Linux kernel): source code is developed over the Internet, in public.
Nowadays, The Bazaar has becomed one of the most used models. It promotes sharing and contribution.
The importance of Internet
Internet helps the sharing of knowledge. All the Open Source projects have benefited from this decentralized network. It enables people to share, promote, modify projects all around the world. Some products even non-free such as Java have been hugely successful by using Internet (eg. by downloading binary releases or source code). Some Open Source projects have been largely broacasted all around the Web such as GNU projects.
In fact, Open Source helped the construction of Internet itself with the creation of major building blocks like DNS, DHCP, mail, IRC. In a way Internet was the global Bazaar where Internet itself was forged, finally giving birth to the Web. Apache, Mozilla and later PHP or MySQL clearly participated in its infancy.
The business market has evolved through the years. Now most of the IT companies deal with Open Source software. They use Open Source software such as libraries, frameworks, operating systems, databases and sometimes, they even produce Open Source content.
In addition to “traditional” IT companies, few companies started and survived through the years.
Red Hat, created back in 1995, is one of the first Open Source software companies. This company started by editing one of the first GNU/Linux distributions. After some deals like buying JBoss, it has been evolving his business to Java EE platform, PaaS, IaaS and so on by providing both software and support subscriptions. Now Red Hat provides two kinds of software. Both are Open Source but there are community softwares and softwares which are supported by Red Hat.
Since the 90’s many pure players appeared like Canonical in 2004 or Docker Inc. in 2010.
Evolution of “traditional” software companies
Some companies have been succeeding to transform totally or partially their businesses to use and produce Open Source software. IBM was one of the first “traditional” companies to liberate important projects and libraries such as XML parsers (Xerces) or Eclipse IDE. Although it continues to have important business with some softwares and services, IBM helps the community by supporting some projects and fundations (Eclipse foundation, OpenJDK…).
More recently, Microsoft has been starting a big shift to Open Source. Steve Ballmer said in 2001 that Linux is a cancer. Now Microsoft is one of the most active company on Github. The most used Open Source code repository which have been bought by… themselves. Nowadays, Microsoft promotes all their software, languages and so on as Open Source projects but they still have non free softwares such as Windows and trends to promote cloud hosting through Azure. And today Azure hosts more than 50% of GNU/Linux virtual machines. Recently Microsoft joined the Open Innovation Network and made 60,000 of its patents open source !
The Open Source shift is not always magic… One of the most famous example is how Oracle managed their Open Source projects after Sun Microsystem acquisition. Some of the company’s decisions had the effect of breaking the relationship with Open Source community. For example, MySQL. The most popular Open Source database. Some of Oracle’s decisions trends to freeze their relationship with Open Source community. So, a fork of this database has been created in 2009.
Furthermore, Oracle failed the integration of OpenOffice. Some Open Source actors such as FSF and Redhat which were in OpenOffice community couldn’t communicate efficiently with Oracle. So, they created The Document Foundation and forked OpenOffice to create a more communitary project: LibreOffice.
However, it could be better for Java language and Java EE. Now Java is fully opensource and one of the most used implementation is OpenJDK. Java EE is now Open Source. Oracle donated all the projects related to this specification to Eclise Foundation which created Jakarta EE. Today, all the projects related to Java EE are fully ported to Eclipse Foundation.
Open Source natives
Most of the current Internet giants built their systems and solutions on Open Source software. And being such Open Source natives they have from the start the reflex to contribute back to communities and mainstream projects. They even have created and sometime still manage some of the most trendy projects in modern IT (Cloud, DevOps, Big Data, Machine Learning…). For instance Google is behind Kubernetes and TensorFlow, Kafka was crafted within LinkedIn, Facebook produced Cassandra, React or GraphQL, Bootstrap was originally named Twitter Blueprint…
Open Source evolution and growth have been “attacked” several times by proprietary and traditional IT software companies. There are some kind of “attacks” but here there are two common pitfalls Open Source organizations have been confronted :
- The lack of standards
- Legal disputes
Lack of standards
Open Source software can really exist if there are open and standardized (ex. ISO) environments. If you have some free standards, people and organizations could innovate and create softwares and “libre” content.
In the past years, one of the biggest deal was the standardization of office documents. The OpenDocument Format was drafted by OASIS. It’s the only inteoperable format. LibreOffice, the free office suite uses by design this standard. Currently, it’s used by the general public, but few companies and government organizations use it.
Nowadays, Web user interfaces are quite standardized. HTML5 standardization enabled that by promoting an open and web and agnostic technologies. Few years ago, there was some “rich user interface” technologies such as Flex of Silverlight. But they were based on closed technologies and need additional plugins or binaries. Thanks to W3C and open source browser editors such as Mozilla, Google, today you can access the Web from any terminal (phone, touchpad…).
There was some intellectual property legal disputes in the Open Source ecosystem. Some companies try to incorporate libre content into proprietary softwares without referencing it. It occurs sometimes. Nowadays, in IT software companies, deal with licenses becomes mandatory. It prevents some copyright troubles and legal disputes. In 2003, SCO Group claimed that there had been “misappropriation of its UNIX System V code into Linux”. SCO claimed that IBM donated UNIX SCO code into Linux kernel and, by this way, his “gift” was a violation of intellectual property. Members of Open Source and Linux community disagreed with SCO’s claims. There was some claims from IBM, Novell and Red Hat against SCO. They won their legal disputes. These series of legal disputes was really important because the survival and the future of Linux kernel (and more) was engaged.
Open Source is everywhere
Few decades after their birth, free software and open source movements have definitely changed the world (of IT). Open Source software is now everywhere, in every industry, at home, in space! It powers a very large part of mobile devices with Android. Android, based on Linux kernel and several other Open Source projects, has today the largest installed base of any operating system and is used by billions of people.
Ok, we talked about software and IT industry. But Free movement covers more than just software! There are some libre initiatives beyond software. Two of the most famous enable the knowledge sharing all around the world: Wikipedia and OpenStreetMap.
Who still buy an encyclopedia nowadays? Especially those there are on paper? You already know the project we are going to talk about: Wikipedia. It’s one of the most famous and most visited Web site in the world. In the french section, there are more than 2 million of articles which are created, revised and verified by more than 16 thousand users. Wikipedia story is related to the World Wide Web’s story. In the beginning Jimmy Wales, the Wikipedia’s founder created nupedia in 2000 and tried to aggregate some content with a multi step review process. Unfortunately it didn’t work. The first year, there was only 12 articles published. Once the project migrated to a wiki platform in 2002, the project became really open and the free encyclopedia started his growth. Today, Wikipedia provides content in several languages including some for which there was never any encyclopedia before. For example, the swahili edition.
Some critics (and hoaxes…) say that there some errors in Wikipedia. Yes maybe. All the encyclopedia does. However, the srength of Open Source is you are able to refer it and even better, provides the correction.
The map and cartography’s market is currently leaded by proprietary systems such as Google Maps. In order the provide a libre cartography’s content, the OpenStreetMap project started in 2004 by Steve Coast from the University College of London. The content is provided under Open Database License. Beyond the years, this project received some content from users and governement organisations.
In 2010, after Haiti Hearthquake, some big efforts have been deployed by volunteers and organisations such as DigitalGlobe or GeoEye to provide detailed maps of the disaster areas. Following this initiative, Humanitarian OpenStreetMap Team was created to help humanitary organizations and help developing countries.
We saw that Open Source is everywhere and now prevails. It started from software and goes beyond: knowledge, intellectual property… It managed to survive against the “proprietary world” and actually changed it, but it still have to manage Cloud evolutions (SaaS, IoT…).
Also, one of its possible evolutions could be on the hardware. Who knows? Initiatives like Open Compute Project or the Open-design movement might make you smile… like some smiled few decades ago when hearing about free sowftawe and open source.