Unit 1: The origin - The printer that changed the world (1980)
The laboratory where everything was shared
In the late 1970s, the MIT Artificial Intelligence Laboratory was one of the most extraordinary places on the planet for a programmer. Working there was a group of people who called themselves hackers -not in the sense the word carries today, but in its original meaning-, someone who enjoys solving technical problems in a creative and elegant way.
In that laboratory, sharing code was as natural as breathing. If someone wrote a program that did something useful, they made it available so that anyone else could use it, study it, improve it. There were no confidentiality agreements, no restrictive licences, no legal departments keeping watch over who was copying what. Knowledge flowed freely because everyone understood that this was the fastest way to make progress. If you improved my program and I improved yours, we both ended up with better software.
Richard Stallman was one of those hackers. He had spent years working in the laboratory, programming in an environment where collaboration was the norm. But the world outside that laboratory was changing, and Stallman was about to discover it in the worst possible way.
The printer that kept jamming
The laboratory had a printer, a Xerox Graphics Printer, which like every printer in the world had one irritating flaw: the paper jammed. But Stallman was a programmer, so he did what any good programmer would have done: he opened the source code of the printer driver and modified it. He added a simple but brilliant feature: every time the printer jammed, the system automatically sent a message to all the users who had jobs in the queue. That way, someone would come over to unjam it within minutes rather than discovering, half an hour later, that their document still had not printed.
It was an elegant solution. It was software solving a real problem. And it was possible because Stallman had access to the source code.
Then, around 1980, a new printer arrived at the laboratory: a Xerox 9700, a more modern and faster laser model. But this printer jammed too. And it was installed on another floor of the building, which made the problem even more annoying. Stallman wanted to apply the same solution that had worked so well with the previous printer. But this time, Xerox did not provide the source code for the printer's software. Without the code, Stallman could not modify anything.
The door that closed
Stallman learned that a researcher at Carnegie Mellon University had access to the source code for that printer. The researcher was Robert Sproull, who had been the lead developer of the laser printer software at Xerox PARC before moving to Carnegie Mellon. Stallman travelled there and asked him for a copy of the code.
The answer was no.
Sproull had signed a confidentiality agreement -an NDA, in business jargon- with Xerox. That contract forbade him from sharing the code with anyone. It did not matter that Stallman wanted to use it to solve a practical problem that would benefit the entire laboratory. It did not matter that both were academic researchers. The signed paper took precedence over collaboration.
Stallman has recounted many times that this moment was a revelation. It was not a fleeting bout of anger over a printer; it was the sudden realisation that something fundamental had changed. Software, which for years had been a shared resource like ideas or mathematical formulas, was becoming a closed commodity. Companies were putting walls around code, and they were doing so so gradually that almost no one noticed. Confidentiality agreements were not merely commercial contracts: they were tools for breaking the solidarity among programmers, for turning colleagues into strangers who could not help one another.
The decision that changed everything
Stallman could have accepted the new reality, as most of his colleagues did. He could have carried on working at MIT, using proprietary software, signing NDAs when asked. But he did not.
In 1983, Richard Stallman announced the GNU project -a recursive acronym meaning "GNU's Not Unix"-. Its aim was to build a complete operating system that would be entirely free. Not free as in "free of charge", but free as in "freedom". Anyone would be able to use, study, modify and distribute that software without restrictions.
In 1985 he founded the Free Software Foundation (FSF) to provide organisational support for the project, and he articulated the four fundamental freedoms of free software:
The four freedoms of free software
- Freedom 0: To run the program for any purpose.
- Freedom 1: To study how the program works and change it so it does what you wish. This requires access to the source code.
- Freedom 2: To distribute copies of the program to help others.
- Freedom 3: To distribute copies of your modified versions to others. In this way, the whole community can benefit from your changes.
These four freedoms may seem abstract, but they have enormously practical consequences. They mean that no software manufacturer can leave you trapped. They mean that if the program you use has a bug, someone can fix it without asking permission. They mean that technological knowledge does not belong to a company, but to humanity.
The GPL: the most brilliant legal hack in history
Stallman was not only a brilliant programmer; he was also a strategic thinker. He knew that declaring software "free" was not enough. If someone took free code, modified it and distributed the modified version as proprietary software, the freedom would be lost. He needed a legal mechanism that would guarantee the freedom was permanent and irreversible.
Thus was born the GPL (General Public License), arguably the most ingenious legal hack in history. The GPL uses copyright law -the very laws designed to restrict copying- to guarantee freedom. It works like this: you can copy, modify and distribute GPL software as much as you like, but on one condition: any modified version you distribute must carry the same GPL licence. In other words, it must remain free. Stallman called it copyleft, a play on words with copyright: instead of restricting copying, it guarantees it.
The GPL is like a contract that says: "This gift is yours, and you can give it to whomever you wish, but you cannot keep it just for yourself." It is an idea as simple as it is powerful.
There are no comments for now.