Thu, 09 Jun 2005

Quality versus Ethics

There are two main tactics people use when explaining open source and free software to people. One argument, mainly spread by the Free Software Foundation (FSF), is that denying people a list of freedoms is unethical. If you want to be a good person, you should write only free software, not proprietary software. Another argument, mainly spread by the Open Source Initiative (OSI) is that open source software is higher quality than proprietary software. I fall squarely into the OSI camp, for reasons I will explain below.

There are problems with both "open source" and "free software", which I won't address here. I want to talk about the persuasiveness of Quality versus Ethics in selling the idea of freedom. If you read other sections of my blog, you will see that I am passionate about freedom. I am a pacifist, and the only way to take away someone's freedom is by threatening them with violence. Thus, peace is only possible if there is freedom. All the advocates for both free software and open source are equally passionate about freedom. The only question here is what is the best way to spread this passion.

The argument from ethics starts with the idea that people must first come to value freedom. Once they understand the value of freedom, they will seek it out. This argument stems from the idea that unless people explicitly value freedom, they will not defend freedom above all.

The argument from quality says that first people must experience freedom. To get them to experience freedom, we must give them better software. Fortunately, free software can produce better software. Without the concrete example of the benefits of freedom, people will not value freedom as an abstract idea. After all, if a course of action does not convey benefits upon someone, why should they embark on it?

The FSF has been very effective in convincing programmers using the ethical argument. I, myself, am one of its converts. I am not a representative example of humanity, however. Most programmers think differently. That's what makes them programmers, and that's what makes them susceptible to the ethical argument. It is important to convince programmers, but it is not sufficient. Many programmers have no control over the licensing of their code. We can convince them, but they don't have the power to free their code.

In order to convince the general population, we must use effective arguments. We can tell programmers "Writing proprietary code is unethical", but that argument doesn't work with non-programmers and non-intellectuals. The problem is based on the structure and operation of the brain.

The human brain is roughly split into three hierarchical sections. You have the hindbrain (aka reptilian brain), the midbrain (aka mammalian brain) and the forebrain (aka human brain). The forebrain is the respository of your self identity. When you think about things (as opposed to thinking things), you are using your forebrain. Your midbrain handles all the things that your forebrain does not do. It is very clever, and the forebrain can train it to do many things, e.g. juggling, brushing your teeth, and driving a car. It is very quick to act where the forebrain is slow. It does not learn new things easily, though. The hindbrain handles the things which need no thinking, e.g. beating your heart and breathing. The hindbrain is (in essence) distributed between the bottom of your skull and your gut. The part of your brain in your gut communicates very basic ideas back to your brain, e.g. "you're hungry", or "you're going to throw up now". This part of your brain can be trained, but doing so is extremely difficult.

When you are threatened, your midbrain will shut down your forebrain. "Get out of the way ... I can take care of this." It is the source of the "fight or flight" response to an attack. What this means is that you cannot easily learn new things when you are attacked. The ethical argument simultaneously requires people to learn a new idea and attacks them as being unethical. People who have strong forebrains (e.g. intellectuals and programmers) do not resort to thinking with their midbrain. The ethical argument works with them. Other people shut down their forebrain, and their midbrain cannot make any sense of the argument.

In order to appeal to the 95% of people without a strong forebrain, you must use a different argument. You cannot threaten them. Instead, you must offer them something which is aligned with their goals. None of these people use a computer for the raw pleasure of it. All of them use a computer to solve a problem. In order to change their behavior (so they value freedom), we must help them solve their problem better with software which can only exist because of freedom. Once they get used to the level of quality which only free software can provide, they will learn to demand freedom. By not threatening people, the quality argument wins converts that the ethics argument can never reach.

Posted [14:54] [Filed in: opensource] [permalink] [Google for the title] [digg this]