From Free Software to Open Source
Tags: opensource, tutorial, hacktoberfest, beginners
Published: 2021-10-05 17:05:26

# From Free Software to Open Source

## Beginning of the software industry

The open source history takes its root in the software history, computers and software weren't what we know today.
Back in 1945, at the end of the World War II, the [Eniac](https://en.wikipedia.org/wiki/ENIAC) was the first electronic computers with a weight of 30 tons and scientifics were programming in binary using [punch cards](https://www.computerhope.com/jargon/p/punccard.htm). The good old times !

Computers & softwares were used by universities and the US army, it wasn't accessible for the general public. Slowly, computers started to be more available, size & price were reducing, software has gone electronic, and the corporate world started to look at it with a [first commercial computer](https://time.com/4271506/census-bureau-computer-history/) sold in 1951. **At the beginning of computers, companies were making money by selling hardware, source code of softwares were freely distributed as a commodity to use a computer.**

With more and more computers, the need for softwares got bigger every day. In 50's & 60's, a nascent industry has emerged : the [software industry](https://en.wikipedia.org/wiki/Software_industry). Specialized companies appeared to provide software products and services. During 70's came a new wave of computer democratization with the beginning of what was called [microcomputers](https://en.wikipedia.org/wiki/Microcomputer), when computers became personal. Some big companies we know today grew up during this wave : 1975 foundation of Micro-soft, 1977 creation of Apple & Oracle, 1972 foundation of SAP...
Software was becoming a real business.

With this new industry, software has become **proprietary software**. To maintain control over software, a company had no interest in sharing its source code but only its binary form. In 1975, Bill Gates sent an *[Open Letter to Hobbyist](https://archive.nytimes.com/www.nytimes.com/library/cyber/surf/072397mind-letter.html)* denouncing copyright infringement of the Micro-Soft Altair BASIC interpreter by the [Homebrew Computer Club](https://en.wikipedia.org/wiki/Homebrew_Computer_Club). The US Copyright Act of 1976 strengthen protection of 'literary work', which apply to software. Legal actions took place, companies sued to protect their rights like the *[Apple Computer, Inc. v. Franklin Computer Corp.](https://en.wikipedia.org/wiki/Apple_Computer,_Inc._v._Franklin_Computer_Corp.)* decision.

Free of charge at the beginning, software became a trade secret protected by copyright.

## Birth of Free Software

In reaction to this industry and to software privatization, a part of the IT ecosystem would react. Technically, because replication of source code is costless and they were also a hacking/sharing culture, access to the code was important. In 1976, the term copyleft appear for the first time in the Tiny BASIC program of Li-Chen Wang as an opposition to copyleft rights.

At the beginning of 80's, a programmer and hacker of the MIT Artificial Intelligence Laboratory was going to start a crusade, a life mission, against proprietary software : **Richard Matthew Stallman**, also known as RMS. Motivated by various reasons, he was witnessing a sharing decrease in the industry, experienced struggle with a printer using proprietary software he couldn't fix, saw the evolution of software industry, his personal values... In September 1983, Richard Stallman announced the *[GNU project](https://www.gnu.org/gnu/initial-announcement.en.html)*. In order to 'help humanity', the project aims to provide a free Unix operating system to run a computer : a kernel, an editor, a shell, a compiler, a debugger...

Mid-80's, a software was already available, Emacs, and with it came the question of distribution, and specifically the licensing question. One major move of Richard Stallman was to create his own license for the project, the [GNU Emacs Public License](https://www.free-soft.org/gpl_history/emacs_gpl.html) who will become later the widely used [GNU General Public License](https://tldrlegal.com/license/gnu-general-public-license-v3-(gpl-3)), giving a legal basis to copyleft. According to [RMS](https://www.gnu.org/gnu/thegnuproject.html), *'copyleft uses copyright law, but flips it over to serve the opposite of its usual purpose: instead of a means for restricting a program, it becomes a means for keeping the program free'.* One particularity of GNU GPL, to force sharing, is to be a [viral license](https://en.wikipedia.org/wiki/Viral_license) : derivative work must be shared & GNU GPL compliant.  
**Free software** was born.

Stallman fought for users freedom, freedom to use, to study, to share and to modify a software. Through this commitment and the [Free Software Foundation](https://www.fsf.org/), he became the pioneer of the **free software movement**, a movement for 'freedom and justice'.

> *For Stallman, free software matters not because software is special and deserves a special freedom; indeed, he acknowledges that "there are more important issues of freedom - the issues of freedom that everybody's heard of are much more important than this: freedom of speech, freedom of the press, free assembly."" Free software matters because all freedoms matter, and software happens to be the domain in which Stallman can contribute most.*  
Glyn Moody - Rebel Code

By 1990, the GNU system was almost complete: emacs, gcc, bash, gdb, glibc... the only major missing component was the kernel.

## Linux, the inspirer of Open Source

Two major events for the IT industry occurred in 1991. Gently, the Internet [democratization](https://data.worldbank.org/indicator/IT.NET.USER.ZS) was starting to reach the general public, Tim Berners-Lee launched this year the first website of the World Wide Web, facilitating the use of Internet. In August of the same year, a finish student, *Linus Torvalds*, [announced the first version](https://www.cs.cmu.edu/~awb/linux.history.html) of a kernel software he did on his free time, as a hobby. Unnamed by the time, it's known today as **Linux**. Internet explosion and the arrival of Linux, combined with the free software movement, was creating a fertile ground for the emergence of open source.

Involuntarily, the tools Linus Torvalds was using and the way he was developing Linux with other programmers will had future major impact. To build his kernel, and to use his computer on top of it, because they were freely available he was using GNU tools, mainly bash and the C compiler gcc. On the first release of the kernel, Linus created his own license, which allow the use and modification of the program, but restrict the commercial activity. This license clause created issues within the community when users wanted to redistribute paid copies in computers club for example, just to reimburse their expenses. In 1992, to solve this and because Linus was already familiar with the GNU project, Linux switched to the GNU General Public License and became a free software.

>  *I felt that the availability of gcc was very important to the project, so picking the GPLv2 as a homage to gcc was appropriate.*  
Linus Torvalds [interview](https://www.datacenterknowledge.com/archives/2016/08/23/linus-torvalds-early-linux-history-gpl-license-money)

The way Linus was producing Linux matter. Beginning of the 1991 summer break, work started alone for Linus. *'I did nothing else, seven days a week, ten hours a day.'* But he won't be alone for too long.  
The first announcement of Linux, in August 1991, happened in the mailing list of the kernel Minix `comp.os.minix`. As a student who just share his work, he was open to others, asking *'feedback on things people like/dislike in minix'*, or saying *'Any suggestions are welcome, but I won't promise I'll implement them :-)'*. In months, years, from a couple of curious the Linux kernel attracted hundreds to thousands of contributors. With the Linux kernel and the tools of the GNU project, it was for people a powerful set of software freely available worldwide to run a computer : **the GNU/Linux operating system**. At the end of 90's, Linux was already a powerful kernel used in critical area and even began to shape the foundations of the World Wide Web.

Linux became a reliable and efficient software build with a large community of developers, and was challenging proprietary operating system. Linux wasn't the only software built in this way, but because a kernel is essential to run a computer, the scale & demand was unique. The way they were producing collaboratively the kernel was questioning software development models of the time like the [Brooks's law](https://en.wikipedia.org/wiki/Brooks%27s_law).
*Eric Steven Raymond*, a software developer who was around this ecosystem, noticed it. For his own project, Fetchmail, he tried to find some patterns of the Linux development process to build his software. With this successful trial, in 1997 he decided to publish the essay **_"[The Cathedral and the Bazaar](http://www.catb.org/~esr/writings/cathedral-bazaar/)"_** to share his discovery. He was defining two ways to produce a software. The Cathedral way, the classic software development model done in a controlled environment with a well-defined team, and the Bazaar way, where the development environment is more anarchic and open to the outside.

"The Cathedral and the Bazaar" influenced hugely other actors of the IT ecosystem. One of them was Netscape, a company who was writing a web browser. They decided to follow the model and opened their source code in February 1998. A new browser was going to born from this code : **Mozilla Firefox**.  
With this increasing interest, with projects switching to and trying this model, a meeting with Eric Raymond happened in the same month of February. To name the phenomenon and to avoid confusion about the term 'free' in free software, Christine Peterson suggested the word **"Open Source"**.

Open Source was born and the [Open Source Initiative](https://opensource.org/) was created to promote this decentralized software development model and to encourage **open collaboration**.

*Article from a series for the project [Open Source Education](https://github.com/AbcSxyZ/Open-Source-Education) to give pedagogical content during the [Hacktoberfest](https://hacktoberfest.digitalocean.com/).*