Licenses and the invention of proprietary software

Rival and non-rival good

If you take an apple from a shop, it’s one apple less for someone else. This economical concept is called "rival good". Two persons cannot benefit from the same rival good at the same time. Taking a rival good without paying for it is called "stealing".

On the other hand, some economical goods are "non-rival". A toll for crossing a bridge, for example. If you manage to sneake under the barrier and cross the bridge without paying, are you stealing something? In fact, if nobody notices it, nothing changes in the world. There’s no victim. It might be illegal and/or immoral but it is clearly not "stealing".

Different countries have different laws regarding the copy of non-rival goods. France and many countries have "droits d’auteurs", patrimonial rights were the author has recognized perpetual rights on a work. Anglo-saxon countries use, instead, the notion of copyright. Copyright was initialy invented in England as a way to censor books and ban the printing of non-approved books. It evolved to become the "right to copy" a non-rival good, a right that could be sold and transfered.

Computers have always been rival goods. In fact, they were so big that nobody could possibly imagine stealing them. Software was seen as the instruction on how to use the computers. At first, every single program was done for one single computer and it was not even imaginable to think that the program could be useful somewhere else.

Slowly, software became more and more complex and the idea of "portability" appeared. Maybe we could share how we use our computers and use the same software. UNIX was built with this exact philosophy.

Software were not seen as economical goods in the same sense as instructions to use your dishwasher are not something sold. It seems obvious that if you write instructions to use your own dishwasher that you paid for, you would never sell them. But it could be useful to share them with someone having the same or a similar dishwasher. Programmers were thus sharing without even thinking much about the business of software. Business was, after all, selling computers. And the more software, the more people will be encouraged to buy computers.

In fact, it was not even clear what kind of laws would apply to software. Was it like instructions and not covered by any protection? Was it more like methods of organisation and thus covered by patents in USA and not covered in Europe?

The invention of proprietary software

Only a handful of developers were considering the strange idea that code should not be copied. Amongst them a young programmer called Bill Gates. Unlike many, Bill Gates had only a business vision of the software world. His father, a famous and rich lawyer, probably transmitted him his legalese and business ideology. With his partner Paul Allen, Bill Gates had developed a BASIC interpreter and was selling it through their company called Micro-Soft (two words at the time). It should be noted that they hired multiple programmers to help them at a time where the company didn’t seem to have clear revenue and without clear investments. The most obvious explanation is that the company probably had access to capital coming from the rich father of Bill Gates.

In 1976, Bill Gates wrote "An Open Letter to Hobbyists" where he claimed that developing software cost time, money and that people should not steal software.

/images/bill_gates_letter.jpg

Reactions were mitigated with Apple running an ad to tell that they were providing free software with their computer and the community of programmers, amongst them Jim Warren, noting that copying software made them more popular in the long run. He also noted that people were not trying to "steal" but that buying software was way harder than simply copying it from friends.

This Open Letter to Hobbyists is an important landmark because it illustrates how common copying and sharing were. It also illustrates that a business oriented minority was trying to advertise a new ideology in which "sharing is stealing". Spoiler alert: they managed to make that ideology so successful that the "poor" Bill Gates became the richest man on earth only twenty years later and that, nowadays, lot of students and professor are afraid of sharing knowledge.

While the Open Letter to Hobbyists was quickly dismissed, time were changing. AT&T was starting to try to get a grip on the UNIX trademark and copyright. In 1980, the United States Congress added computer software to the copyright code, answering the question: "what is software?".

Apple vs Franklin

While we are talking about "big computers", small computers became popular in the 1970’s. They were mostly used for games or small software, seen as toys by real programmers. Each brand had its own architecture and its own operating system. Popular games needed to be ported (sometimes with heavy modifications) on multiple platforms: Atari, Amiga, Altair, …

There were also serious software. Like Visicalc, which was the very first spreadsheet. It was so popular amongst shop owners that they bought computers only to run Visicalc. But Visicalc was running on only one kind of computer: a small brand that has not been very popular before that: Apple. Visicalc was programmed on Apple just because Visicalc creators had one. They thought nothing about it.

Suddenly, Apple was selling well. But not because of something Apple did. Another computer maker, Franklin, understood this very well and decided to sell a computer very similar to Apple. In order to run Visicalc, they would copy the ROM of an Apple computer on theirs. They would only copy the binary, not having access to the source code.

In 1983, Apple sued Franklin for copyright infringement. The defense of Franklin was that they only copied 1 an 0 that had no meaning. It was code produced by a compilator, not an human programmer. Thus it could not be protected.

It may sounds silly today but it was not at the time. Because Franklin won.

Yes, Franklin won the right to copy a binary. That a binary could not be covered by a copyright.

There’s an alternative timeline of the world where this court decision holds, changing the future forever.

(Un)Fortunately, Apple appealed the decision and won the appeal.

In 1983, it was thus clarified that a computer software could be considered as litterary work and thus could not be copied or modified without the author’s consent. And that the binary of a computer software was also.

But how could you sell something that could be copied nearly for free? If you sold it once, the first customer could copy it and pass it to friends.

Hence came the concept of license.

Software licensing

Software vendors explained that they never sold their software but only an utilisation license, exactly like an editor doesn’t sell you the content of the book but only the right to read it.

A customer will never buy a software. A customer will never own a software. She can merely buy a license to use it. A license is a contract. In this contract, the customer agree to pay some money in exchange for the ability to use the software under certain conditions. The seller may impose conditions to use the software. For example, it could be said that the software cannot be used on a Tuesday. The example is absurd but this could be part of the contract.

A contract always occurs between two parties.

A software license is a contract between the person holding the copyright on the code (not necesserly the programmer) and the user. The license itself will define who is a user or not but, in case of a software, it’s the person running the code on a computer. It can also be defined as the owner of the computer running the code.

One of the most popular condition that quickly arose was that users were prevented to copy the software, to modify it or to distribute it. Software became proprietary and, for the first time in the history of computing, people started to use software they could not modify or copy.

This was completely new and unexpected by most pioneers. It marks the invention of "proprietary software".

Richard Stallman and the GNU project

Oblivious to that trend, a programmer called Richard Stallman was happily hacking in the MIT artificial intelligence lab where he started in 1971. "Hacking" was the word they used at MIT to describe "solving a hard problem". The problem itself didn’t have to be serious. The spirit at the time was to make complex practical joke. Everything in life had to be considered as a problem to be solved with the most original solution. Sharing ideas was a strong part of that culture. As computer ressources were rare and expensive, it was seen as counter-productive to keep a computer sleeping. If a computer was locked in a room for the night, Richard Stallman and his fellow coworkers made it a mission to free it in order to run programs on it. Freeing computers involved lock picking, crawling in the ceilings. Having fun.

Hacking has always been a positive word which didn’t mean doing something nefarious or illegal.

From the Hackers movie (1995)
From the Hackers movie (1995)

Richard Stallman was a true mathematician genius. But he had a hard time with social interactions. He found his call in front of a computer. Not only was he good with computers, he also had lot of nice social interactions with fellow computer geeks. He was happy. Stallman was home at the MIT AI lab. What had started as a summer job for him was now some kind of family.

In the early 80's, the lab started working on the LISP machine, an optimized type of harware for LISP. LISP is a computer language that was considered as a more elegant and powerful language. The huge potential of this machine ended up by tearing the lab apart. Everything comes to an end. One by one, Richard’s coworkers left for two big companies. They were doing exactly the same job as before but, suddenly, they could not share it. Both companies were in competitions to improve their product.

Young Richard Stallman
Young Richard Stallman

Refusing to be hired not to share code, Richard started to implement all the features the companies developed without having access at their code. Alone, working day and night, he managed to code as much as two dedicated teams.

One day, the printer was replaced in the MIT department where Richard worked. Printers were (and still are) huge machines prone to being blocked. Richard had, long ago, modified the software of the printer to send a warning to the person requesting a print if the printer was jammed. As not everybody was working on the same story, this simple change prevented a lot of unnecessary walk through the MIT’s corridors.

The Xerox 9700 for which RMS asked the source code
The Xerox 9700 for which RMS asked the source code

Richard knew that the Xerox company would not send him the sourcecode to allow modifying the new printer. But he knew someone who worked on it and though he would simply ask him as he was visiting his university. Richard asked the source code and was expecting either a "yes, of course" or a "no". To his astonishment, he received a third answer:

"I can’t"

What proprietary software means

He didn’t understood. If you have code, either you are willing to share it, either you are not. Code is knowledge. If something is strong enough to forbid you to share code even if you want, it means that it could prevent you to share knowledge. It’s like if you could read a book but you could never tell anything about it to others. You could not discuss it!

Up to that point, he tought his former LISP colleagues were not sharing code only to gain competitive advantage over each others. But, in this case, there was nothing for Xerox to lose!

Richard Stallman understood that computer users would be divided into two groups: programmers and users. Users that would not understand anything because they could not, even if they wanted to.

Even good hackers and programmers could be forced not to share their work through contracts and licenses!

Programmers were now only programmers inside their own little company but they would become powerless users of all other software. They could not cooperate anymore. They could not share anything. They would become lonely.

Richard Stallman had a hard time making friends when he was young. Computer nerds proved to be a way for him to be part of a community. He didn’t want that community to be ruined.

The 4 software freedoms

He could not fight back the fact that software could be copyrighted. But he knew that a license was a contract. And that you could always write your own contract.

Therefore, he imagined a contract that would give you the freedom to modify and redistribute a software. In fact, he even managed to write that contract in a way that would guarantee that the software stays "free".

This contract was called the General Public License (GPL), and software that respected the freedom of the users were called "Free Software".

According to RMS, a "Free Software" had four basic freedoms:

1. The right to use it how you want it
2. The right to study it (requiring the source code)
3. The right to modify it
4. The right to redistribute it

The 4 freedoms of Free Software are extremely important. If you don’t have those four freedoms, you will quickly hit arbitrary limitations. Those four freedoms are, in facts, only a clever way to explicit the "right to use the software with full control over it".

The GPL not only provided those 4 freedoms. It also ensured that those freedoms would be preserved, by stating explicitely in the conditions of the contract: should the user redistribute the software to someone else, he should provide those same freedoms to that other person. This concept is named "copyleft", where the only restriction you have to agree to is… to not create any restrictions. You have all the freedoms of the software, except the freedom of taking away some of these freedoms from others. You cannot use a GPL code in a proprietary software. If you do, the proprietary software would automatically be "contaminated" and become GPL.

As a pun, the act of using copyright laws to do the exact opposite of copyright was called "copyleft". A license is said to be "copyleft" if it provides the 4 essential freedoms AND prevent anyone from removing those freedoms.

Copyleft.
Copyleft.

This should not be confused with public domain and permissive license

/images/Copyright-Copyleft-Dominio-publico.png

Some license would soon appear. They would be granting the access to Free Software but without guaranteeing the freedom that comes with it. Examples include BSD and MIT licenses. The MIT licence allows anyone to use, copy, modify, merge, publish, distribute, sub-licence and/or sell copies of the software. It is provided "as is", users may use the software at their own risk. As a further obligation, all copies or redistributions of the software must contain a copy of the MIT licence. The BSD licence is similar to the MIT licence. However, the BSD licence may have advertising clauses that require the original authors to be mentioned in any publicity relating to the software. Some BSD licence variants do not contain an advertising clause (FreeBSD)

The word "free" should be understood as in "freedom", not as in "free beer". That’s why the french/spanish world "libre" is often used to clarify the meaning. FLOSS means : "Free and Libre Open Source Software".

You can sell free software

It is important to note that nothing prevents anyone from selling free software. As long as you give those same rights to your customers, you can sell the software. Richard Stallman himself earned a living for multiple years by selling copy of Emacs, at a time where Internet connection was rare. You would send him money and an enveloppe, and he would send you a disk with the software.

But "Free Software" was often confused with "Freeware", softwares that are proprietary but distributed freely (often as a limited version of a paying proprietary software). People building Free Software were looking for a clarification.

Eric Raymond and Bruce Perens later managed to find the word "Open Source", hoping to make Free Software more business friendly.

/images/licences.png

Permalinks:
https://linfo2401.net/4_licenses.html
gemini://linfo2401.net/4_licenses.gmi