My Flak Jacket Please

I’m struggling here. I’m trying very hard to understand the Open Source philosophy. From Eric Raymond’s website and extensive history about hackers and the Open Source movement, to specifics on Source Forge and Gnu, I read and I read and I read very well-crafted papers. For a while I was able to hold the vision of creating software for the greater good, respecting others rights, and all those good platitudes – that is – until I happened upon Richard Stallman.

Frankly, Richard Stallman scares me. To go so far as to rename “piracy” as a “propaganda smear” takes his writing out of my reality. As Wikipedia (nice open source encyclopedia) says,

Piracy is a warlike act committed by a foreign nonstate actor, especially robbery or criminal violence committed at sea, on a river, or sometimes on shore, either from a vessel flying no national flag, or one flying a national flag but without authorization from a national authority. It does not normally include crimes on board a vessel among passengers or crew.

Pirates of the Caribbean not withstanding, pirates are really bad news. They don’t just hang on to ropes and sing or swab the deck. I bet their jokes are really off-color and full of black humor. They may seem invincible and unable to die, especially as their speed boats pull up alongside ships in free water. I do hold that anyone who attacks my ship in the water, boards it, makes off with my goods, and maybe leaves behind a few dead bodies, or almost dead for Davy Jones to impress, is a pirate. And a pirate is a fancy, romantic word for “thief”.

Software piracy seems to be OK. In Richard Stallman’s world view, to copy software is not to steal its essence. The essential creation is unharmed by copying. And since software, ultimately, is an actualized intellectual experience, the software should be free.

His slogan “Free software is a matter of liberty, not price. To understand the concept, you should think of ‘free’ as in ‘free speech,’ not as in ‘free beer.’” has four points of explanation: “Free software” implies

  • “The freedom to run the program, for any purpose (freedom 0).
  • “The freedom to study how the program works, and adapt it to your needs (freedom 1). Access to the source code is a precondition for this.
  • “The freedom to redistribute copies so you can help your neighbor (freedom 2).
  • “The freedom to improve the program, and release your improvements (and modified versions in general) to the public, so that the whole community benefits (freedom 3). Access to the source code is a precondition for this.”

I’m going to take these four points one by one. I have feelings that have not ripened into opinions yet. And I already know that I have to put Richard Stallman out of my mind to approach the Open Source philosophy without my knee-jerk reaction. Here goes.

1. “The freedom to run the program, for any purpose.
I don’t know what this means. Am I so limited in my imagination that I only run programs for their intended purpose? I certainly need to be enlightened on why I want to run software for an unintended purpose.

2. “The freedom to study how the program works, and adapt it to your needs. Access to the source code is a precondition for this.
I can understand why someone wants to study software to understand how it works. Some of the best engineering discoveries happen while trying to reverse engineer a product. I had the privilege to analyze “GhostScript” in its early days to see how closely it mimicked PostScript. It was very interesting how they reverse engineered parts of PostScript. But why does Adobe have to open its source code for someone to analyze it and adapt it to his needs?I happen to really like reading Sir Walter Scott. He lived a productive life and created many great stories. Now I really want to insist that he stay alive and continue writing because I’ve come to depend on his stories to get me through the day. But he died. And his stories died with him. And I can’t extend his stories for my needs because I would be plagiarizing his stuff.

In the same sense, if an operating system or COBOL, for example, dies the consumer death – meaning no one wants to maintain it and no one else wants to buy the license for it – then why should the source be opened up to anyone? Why can’t they buy it if they want to perpetuate its existence?

Or, better yet, why does anyone have the right to adapt my creation to their needs by taking the source of my creation? I can see how people might say that my creation is not correct for their needs so they create their own. It may look like mine on the outside, but the insides are their creation.

3. “The freedom to redistribute copies so you can help your neighbor
I can’t take a book and make a photocopy of it and give it to my neighbor unless the book is out of copyright. Why should I be able to take a software package and copy it for my neighbor? Why is his need bigger than my need to earn money to support my family? If his need is so big, I should deactivate it from my computer and give it to him. Then he can use it and I won’t. If I really want to help my neighbor that can not afford this software package, perhaps the answer is not to steal the software by making a bootleg copy. Perhaps the answer is to create a new software package that has the same functionality. I can then give this to my neighbor. Google and Open Office address this. These are all entities that fill a software need for free. Any one who cannot afford the MS Office package can use Open Office or Google Docs.

4. “The freedom to improve the program, and release your improvements (and modified versions in general) to the public, so that the whole community benefits (freedom 3). Access to the source code is a precondition for this.
I can create a program that has the same functionality as another program. And then I can modify this program, distribute it to the public, and reap kudos for being altruistic. But that doesn’t answer why a company has to supply the source code.

I can see that Richard Stallman touched a very deep place inside me. I believe in patents. I believe in protecting invention, because without that protection the little guys get trounced and the big guy steals the invention and makes a bundle while doing it. I believe that I have a right to my thoughts, and by extension, I have the right to protect my thoughts as they are expressed in software. If I choose to distribute my invention for free, that is my prerogative. If I choose to limit access to my invention, to restrict my invention to those who pay, that too is my right.

I have to get him out of my reading about Open Source. His position has almost poisoned me. Fortunately I had the opportunity to meet with people who are actively involved in the Open Source community. The work they have done for the world, strictly to forward knowledge, is amazing.