Why open source works

This is my notes from the talk I did at the 2009 Plone Conference in Budapest, reworked into a series of blog posts. This is part 1 of 3. Read part 2 and part 3 as well.

The Tower of Babel

Once upon a time the people of the greatest city on earth decided to build a tower so high it would reach the heavens. You all know this story, and it’s often told as a moral story showing that you should not build for your own glory, or try to compare yourself with God. But when you read the bible, those morals are not there. What it actually says is that when humanity is united there is nothing we can not do. And I think there might be something to that.

Because since the dawn of humanity, most people have lived a life that was solitary, poor, nasty, brutish and short. Life expectancy was not higher than 30 years, from the stone age up to around 1800. Starvation was a constant threat. People would die of diseases we today view as trivial. But today our problem is not lack of food, but obesity. Hygiene and medicine has given us a global life expectancy of 65-69 years. In the western world, it’s upwards 80, and a recent report said that half of everybody born today will live to be a 100.

Today we live long and in relative prosperity and peace. And most of these improvements have come during the last 200 years. And they have come because people have helped each other. And I’m not talking about giving money away, or working in political organisations. Those are good things, but it is just a very small part of humanity that does those types of things, it’s also really hard to do great things or affect the world by yourself, because even when you are a part of political organisation and that organisation has power you still have to fight with the other members over what to do, how and when. We won’t get a tower to the heavens that way.

Kings, lords and guilds

No, you have the most power to improve the world when make your own little world better. When you make your personal life better you don’t have to fight against so many. Maybe you wife, kids and work mates. It’s an easier battle than fighting a whole parliament full of politicians. But this is not cooperation, you say, and you are right. It’s not. We get the real effect when we, in our attempts to improve our own lives, come up with a clever solution to do so and share it with everybody else so they can get the same improvement, and they then share back. That’s cooperation.

But this sharing was very unusual in most of humanities history, because there was very little reason to share, or in some cases a large opposition to sharing. And this is why the improvements have happened mostly during the last 200 years. Because before the industrial revolution economic activities was always strictly controlled either by kings, feudal lords or guilds. They saw their purpose to regulate the production, so a guild of blacksmiths, for example, would make sure that there was not too many blacksmiths, because that would lower the prices, and they would also make sure blacksmiths didn’t compete with each other within the guild.  They wanted all the blacksmiths to have a reasonable amount of work and income. That meant that your quality of life pretty much was fixed. You had a place in society, and you could not do much to improve it. But in 17th century England this was slowly changing.

The industrial revolution

Wool was becoming a big industry, and this industry was a “cottage industry” that happened in the country side, where there were no guilds. Also the iron industry started blooming at this time, and again, this happened on the country side, because that’s where you had the coal and ore. The feudal system had also been in decline for hundreds of years, and by the beginning of the 18th century instead of feudalism and guilds, England had an economic system with entrepreneurs who were constantly trying to find ingenious new ways of producing things better, faster and cheaper, and the industrial revolution was in full swing.

Let’s take one of these entrepreneurs as an example. This guys name was James Watt, who was famous for inventing the steam engine. But did he? Let’s take a look at the history of the steam engine.

The first commercially useful steam engine was built by a man called Thomas Savery, in 1698. Today we wouldn’t even recognize it as a steam engine, it didn’t even use any pistons. It was very inefficient, but could pump water from a mine. Frenchman Denis Papin at the same time has invented the pressure cooker, and realizing the power created by this invented the piston. In 1712 Thomas Newcomen combined the ideas of Savery and Papin, and built the Newcomen steam engine and succeeded in pumping much more water than the Savery engine.

At this point the steam engines did not get their force from steam pressure. Instead, they got power from the vacuum created when the steam condensed, after spraying in water to cool down the piston. And here James Watt comes into the picture. Instead of cooling down the piston, he kept the piston hot all the time, and let the steam cool in a separate condenser, that was kept cool all the time. That made the steam engine four times as efficient.

But soon high pressure steam engine got popular, thanks to the development by people like William Murdoch and Richard Trevithick, and many others who made many, many small improvements, and we ended up with the type of engines that could be used in locomotives. James Watts separate condenser was an important invention, yes, but neither the beginning nor the end of the steam engine.

Sharing as a self-interest

So who did then invent the steam engine? Well loads of people did, together. Many men, most of them probably lost in history, cooperated on inventing the steam engine. The steam engine is a tower of babel, where people are working together, talking the same language: Engineering. But very few of these men saw it as cooperation. Each of the men that created the steam engine, from Savery to Trevithick and beyond did so for his own benefit. It was in his own self interest to make something better. And not because they themselves needed a better steam engine, but because they could share the improvement woth the rest of the world it in a way of sharing that is often overlooked: They would sell it. Yes, selling is sharing. If you have invented a better steam engine, making those and selling them will mean that more people get a better steam engine. The improvement has been shared.

And here is the important difference from the feudal and guild systems of medieval times: You yourself benefit from sharing, in this case economically. Since in medieval times you couldn’t compete on free market, then it was in practice hard to make money by sharing your improvements, so inventions spread slowly, and come into general use very slowly. As a contrast inventions have spread very fast since the industrial revolution, just because it has been possible to make money from them.

And this type of commercial sharing is important not only because it acts as an incentive to share, but also because you can’t tell a factory owner that he should use a separate compressor, because he doesn’t know how to build one. He needs to buy a machine from someone who does. So sharing just by sharing the idea is not enough.

So what does this have to do with open source?

Open source works for the same reason. You yourself get benefits from sharing your stuff. By saying “Hey, you can use my source code” loads of people will use it, and find problems, and most importantly improve it. You get improvements to your code, without having to spend money or time for it. Open source code is an excellent example of a tower of Babel, where we have many people working together using the same language, the language of computer science. And this tower is huge, with loads and loads of people and loads and loads of parts.

Just look at all the bits that’s needed to run a site like wordpress.com. We need the Linux kernel and all the hardware drivers, the distro of choice, gcc, PHP, many third-party libraries and then WordPress and then finally the theme. And then you have a loadbalancer, a cache and webserver in front of that, and monitoring software to help you manage the servers, and a mailserver so you can send out notifications, etc. The complete list would be very long.

There are thousands of people who have written code just so this server can start up and show a web page. Thousands of people have cooperated to make sure I can run a blog. And none of these programmers did this to help me. They did not think “We need to get Lennart a blog”. They wrote the code they wrote, because they needed it or enjoyed it, and they made it open source so that others could use and improve it.

So in the open source world we cooperate and share in two ways. Most people in the open source world make money with open source in one way or another, either as employees or consultants. We make money because the pointy haired bosses have no use of the source code of a system since they don’t know how to use it, just like the factory owners needed steam engineers to build and run the steam engines. We make money by sharing our knowledge with them by doing work for them. And we also share the source amongst those who do know how to use the source. And here we share, not for money, but for help. We share so that people can share back.

So there you go. Open source works because it is a system where it is beneficial for you to share. We build a tower of knowledge and source together, because it’s good for us.

Continue to Part 2.


4 Responses so far »

  1. 1

    miziodel said,

    good points! 🙂

  2. 2

    jakub isanski said,

    OK, that sounds reasonable, but to participate in this community, you need a certain level of competencies, isn’t it?

Comment RSS · TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: