In the last two days, I've been called a clueless idiot, a f*cking retard and somewhere I even read that I should be punched in the face for writing the open letter to Aiden (who is, by the way, a fictional character representing very many people I've spoken to). There are more than 1400 comments in a thread on slashdot referencing this post, some of them very insightful and thought provoking, some of them ignorant and some just pointlessly insulting. There are tons of weblogs and websites referencing the letter.
I think I've made my position quite clear so there's little for me to add to the discussion at this point except one topic: "Freedom". Very many folks have pointed out that I am missing the point and that OSS is about freedom and not about gratis. I know the argument and I think I understand it quite well, but coupling the term freedom with what is has become a gratis-by-default culture is deeply disturbing to me when I take it and put it into a broader context. Consider the following little political excursion before I get back to software:
I live in a stable society and I enjoy the luxury of living in peace in the middle of Europe, surrounded by friends. The stability, freedom and democracy that we enjoy in “old Europe”, in an unprecedented period of peaceful coexistence that is now lasting for almost 60 years, is supported to a large degree (but of course not entirely) by our society’s wealth – and a responsible approach to capitalism. Capital distribution is not fair and never will be, but we are wealthy enough that there is no war between rich and poor. People don't live in closed areas behind huge fences and one can walk through the inner cities in the middle of the night without much of a risk of being robbed and killed. Here in Germany, we support the ones that cannot care for themselves by affording a social net through which very few people can fall. If you cannot afford your rent or feed your children, you are entitled to get help. A social network like this is expensive and painful to afford as we currently see in our political debates about reforming our social systems. We can only afford it, because we have a capitalist system. We can only afford it, because the majority is employed and works hard, does their work for money and pays taxes and social insurance. We can only afford it, because companies pay taxes. This system gives people the freedom to make mistakes in their lifes or just have bad luck. To me, that aspect of freedom is the most precious -- even more than free speech.
Socialism tries to achieve fairness by making everyone equal, eliminate competition between people and production entities, and -- eventually, when the Nirvana of Communism is eventually reached -- make everyone work for the common good by mutually sharing their work results and goods so that they could enjoy freedom and live a comfortable life without pressure and exploitation by the capitalists. Communism is a great model and wonderfully attractive. In the late 1800's, when exploitation of workers without capital taking any social responsibility was the norm, this idea grew rapidly and found many supporters, because it is fundamentally about freedom from capitalist oppression. The Soviet Union was founded on the honest and actually well-intended belief that the model would work and even Pot Pot's much later "revolution" in Cambodia (next to the tragedy of the Holocaust one of the greatest horrors on the 20th century) was driven by the belief that communism can work - all given that everybody in the society plays along. The fact that everybody must play along for communism to work did cost millions of people their lives. If people were assigned to grow rice in Cambodia and they were caught catching fish from a nearby river so that their family would not starve, they got taken away and shot. A family having a fish while the other community members did not was considered a crime carrying the death penalty because they these people were apparently not agreeing that everyone is getting the same food. The oppression that we have seen in socialist and communist countries was initially rooted in the fact that the system had to convert people and get them to play along the rules so that communism could be successfully "booted". And eventually that oppression just became the norm. So while it all started with good intent, the communist idea has turned into a horror every time it has been tried.
Just to say it very clear: I am not making a statement about software here. Software does not kill people or oppress people, neither directly or indirectly (with the notable exception of software for weapon systems, of course). I am talking about the politics that are used to sell an idea, ok? I don’t want to see the Slashdot headline “Vasters says free software kills millions”.
However, what really worries me are the existing parallels in the ideology debates. The free software (as in freedom) ideology has a lot in common with the idealism of the well-intended communists of the late 1800s and early 1900s who believed in a great society of giving and sharing to achieve freedom. Probably I am totally wrong with my views and this set of ideas will work beautifully this time, in this century and scoped to the software industry. I have my doubts. I have my doubts that the ideology is honest. There are people managing large companies who certainly know the political game better than I do and they are acutely aware that the ideology works as an argument and works to their benefit. That's why I am deeply worried about the political angle of the debate.
I am not bold enough to predict what is going to happen to this industry as a whole in the next 10 or 20 years, but I doubt that the next truly great software innovations with coherent architectures will come out of a system where everyone shares a little bit and committees decide on architecture by casting a vote. I think -- and here's a quite daring claim -- that the free software movement actually plays into the hands of the established commercial software vendors by surrendering the innovation role to them. On Microsoft campus, 50 people can get into a room at any time and discuss architecture face to face. And in the end, there's a boss that makes a final decision on things. Email and newsgroups can't really replace that depth of interaction and community is not the same as an organization that has a power hierarchy. I am not claiming that the distributed development and architecture model does not work. Many OSS projects show that it does work. But how about true innovation on a grand scale that does not reuse the architectural blueprints of commercial software -- or the usability aspects? There are select instances where community developed OSS projects are truly innovative, but the majority seem to be re-implementing and gradually improving things that are already existing. How about a GUI shell that revolutionizes how we interact with computers and that doesn’t look like MacOS or Windows?
One thing seems quite clear to me: Hate them as much as you like, but because of the sheer fact that they are the largest commercial software vendor and have the money, resources and “pull” to get more and more incredibly smart people to live and work around Redmond and that they can put them into a room together to think about new stuff, Microsoft is going to out-innovate everyone else in the industry (laugh if you want) and any form of distributed development will be struggling to catch up. The “Longhorn wave” of technologies that was presented at their Professional Developers Conference is just a very tiny tip of a large iceberg of things brewing inside that company. They have a vision for a consistent and integrated architecture for all the software they produce and for absolute consistency across all programming models, lowering learning curves and increasing productivity across the board. They have a great vision how user interaction with computers will change. And on top of the growing innovative force on the inside, they know really well how to take innovative ideas from elsewhere and productize them so that they are accessible to the masses. That’s Microsoft’s reaction to free software. If someone is really interested in stopping them from legitimately dominating every aspect of the software market (market as in money) in the long run, they need to compete with them on the innovation front. For a distributed community that collaborates by sharing little things, that’s incredibly hard, even if some big spenders throw money at the problem. Will it be possible? Time will tell. I don’t know and you don’t know the answer either.
With this, I return to scheduled programming.