To understand why the EU commission passed the new european law on software patents against opposition from some groups - especially open source advocates, software developers and small and medium-sized companies - we need to take a look at the situation of the big players in the software business. Software and system architectures do have a profound effect on software producers and influence their cost structures. I will try to show some dependencies between technical, economic and political forces which led to the above decision.
Please don't misunderstand this as good-old MS bashing. Microsoft has been rather slow with respect to acquiring patents compared to others like IBM and only recently understood the problems and opportunities. But since then they aggressively lobby for software patents in the EU - again like IBM and other big guys.
Last week I've commented on a talk held by Bill Gates at the RSA 2005 conference on security topics. To me the talk explained the way Microsoft sees the system architecture for the next couple of years. The core model is the corporation which uses a centrally controlled system to control large numbers of PCs and other devices. The idea is focussed on a central registry, replication of policies, automatic or semi-automatic updates of individual stations and skilled administrators. They are supported by lots of administration tools and packages.
This architecture does already work in many companies - though with a large investment in personnel, hardware and licenses. And the problem is: it is getting more and more expensive because of the number of additional system and security tools needed to keept the infrastructure going. Microsoft does charge customers for those tools but there will be a cap on how much they can take before companies start moving toward other systems.
Only the biggest corporations will not have a financial problem following this architecture.
The above architecture presents quite a challenge for Microsoft: it does not fit to the case of individual PCs at home. No administrator and no central repository etc. And not so much money as well.
The solution Microsoft presented for this dilemma is really interesting: it tries to create a virtual corporate environment for the home PC by creating large data-centers where software installed on those PCs reports events, downloads software etc. Microsoft wants to use this virtual enterprise structure to reuse their architecture, especially the security features. They want to fight spam, viruses etc. through this system.
The important facts here are: They have given up the hope for autonomic, secure PCs at home. All solutions require freqent connectivity to the data centers. The solutions are "after the fact" - they detect and react but there is almost no prevention.
But the worst is: the whole solution is expensive. First for Microsoft which needs to create and staff those centers. Later for the users which will one day have to pay for all of it.
Microsoft is going after the big money. This is quite natural and is easily explained by looking at the internal cost structure: Providing all the software tools for the centralized solutions requires skilled staff and gets more and more expensive over the time - due to increased complexity, testing etc.
This is a well known pattern and it creates a vulnerability: new ideas by new companies with a cheaper cost structure can enter the market and start pushing out established companies. For years I thought Microsoft would be an exception to the "innovators dilemma": the fact that established companies become vulnerable against cheaper new products because they have to charge a lot for their own - well established products - due to the high internal cost structure that was developed over time. But now it seems that the point where competition may strike is reached. And it is done by using the worst weapon: price.
For years Linux or open source in general was no competition. No complete offerings for products existed. This has changed completely: Look at LAMP etc. This technology can be used to build server applications out of the box and the number of PHP based apps is endless.
The smaller companies started using Linux massively. I have already some evidence for this: more and more thesis work done at mid-size companies designs web services etc. on Open Source and they always mention the price of licenses as the main driver for this decision.
The software architecture of microsoft intranets has a high price tag associated.
But that is not all: how do you compete against open source? Barely. It offers better quality, better security and faster responses through the way its development process is organized. See the talk by Karl Klink for an explanation on the quality behind open source.
It takes a while to realize that Open Source is THE competition and it is a serious one for Microsoft. So serious that suddenly patents become a major issue for Microsoft.
Open Source Development (OSD) has a number of very interesting properties that have a deep impact on the ways companies can do business using an OSD model.
At any time in an OSD project can participants decide to follow a different route. This avoids the "big ball of mud" effect seen in commercial software projects where software pieces long due for overhaul are still moved from release to release. OSD is FAST.
Re-using other OSD products is not only cheaper but also seen as a very clever approach to concentrate on one's own strength. No job preservation tactics involved here.
Go and read Clayton Christensens book on why successful companies miss out on the most important developments and inventions frequently - strictly by doing what the business literature tells them to do, e.g. listen to your customers.
This is probably the one feature that is confusing traditional economists most. How can one share iventions and work freely? People usually are not willing to share things that cost a lot of money. Here we see changes due to thedigital nature of software: There is no price for copying bits - as the music industry had to learn the hard way.
OSD can be seen as the dawn of a new business model and finally also a new model for society: More and more things do no longer the traditional equation of scarceness - price - ownership. Economists told us that things have a price because they are scarce: not everybody can have the same things. And that's why we need the principle of private ownership to avoid fights. And state, government and so on.
But a copy of my music on your machine does not hurt me at all. You using my broadband connection with flat rate does not bother me. Should it bother me if you use my source code? It depends. If I intend to make a living from excluding others from using it? Sure. If I intend to make a living by applying it in more and more solutions, building new stuff by including the work of others then probably no.
And that is the core of the differences between old and new business models, between traditional software companies and OSD: OSD is an accelerating system - you can only make a living by providing new applications of source code constantly in new projects.
Who is paying for it? Customers receiving complete solutions at a much faster rate then ever before.
We have learned that just putting a piece of source code into the public domain does not automatically and miraculously turn it into a piece of art. The Netscape/Mozilla project has shown this clearly. The architecture of Netscapes browser was not geared towards use in OSD projects and it had to be rearchitected completely.
We have learned that an OSD project needs a clean AND OPEN base architecture to be accepted and to start the famous network effect: more and more people joining in. It's like the old story with the first fax machine: it is a useless piece of equipment which gets worth more and more when more machines are bought.
Today the network effect is built into OSD software ON PURPOSE: eclipse is not the plug-in based architecture by accident. It was designed that way to start a network effect. Today not building an architecture that can create a network effect means coding for the trash can.
Besides the sharing property (some have called it "communistic") the clever use of network effects is a core feature of OSD. And it fits perfectly to the ego-driven motivation in this area.
The difference could not be any bigger: Patents exclude others from use. They prevent improvement of technology by others. Here improvement is already built into architecture and is intended from the very beginning.
So it boils down to the old fight between those that have (traditional software companies like Microsoft with their huge investment and monopoly) and there a community that produces software better and faster than even the largest company ever will be able to do.
There has been some use of opens source products in the public sector recently. Mostly Linux installations due to increasing costs of Microsoft licenses and the high cost of ownership with MS products. This should not be confused with substantial interest in open source at the high political level of governments. Opens source has too many features that simply calls for trouble in the eyes of governments. Just think about the following list of problems which governments would not have without the open source alternative:
Copyright violations through peer-to-peer or copy programs
Anonymous communications between citizens and the problem of wire tapping for law enforcment agencies
Governments hate the speed of open source which simply translates for bureacrats into problems that crop up fast. Goverments also would rather deal with a few large players. This way they can negotiate spy software etc. much more easily than with thousands of independent software developers all over the world. How do you get an open source project to put in spy code for governments? The anon.de project was forced to do so but at least told the users about it. US governments even forbid telling users (see the (un)patriot act)
Last week the EU commission waved through the new european software patent law. Some people who fighted against software patents where surprised by this move: the european parliament issued some critical statements over the last couple of month regarding software patents. Or better: the way they where put into law. It was never a substantial and fundamental critique. Some disappointed groups called the move undemocratic. And a lot of confusing statements where made. So let't try to clean up the mess - at least theoretically.
Ok, the decision on software patents affects me and my likes substantially (see below). And I have not been asked. Nor was I involved in the selection of this commission. Nor did I vote on the EU and its goals. Nor will I be allowed to vote on anything substantial - meaning a topic and not some party or person - at least when it comes to Germany. So to me the EU heads and organs are about as legitimized as the king of the kongo (if there is one).
The illusion here is to expect anything democratic at all within the EU decision making process. It boils down to an interpretation of what democracy means. If it is interpreted as "the will of the people" than the processes clearly are undemocratic - the will of the people toward software patents has not been gathered.
If it is interpreted as "the will of people representing the people" than the processes are also undemocratic as the members of parliaments or the EU commission do NOT represent "the people". They represent their respective economic organisation - something the Germans had to finally realize during the last two month when MPs like Laurenz Meyer and many others where caught as being paid by the industry. But this is neither a new fact nor something uncommon. I remember having learned this already at highschool and it was called the lobby system. Of course, after 60 of lobbyism in Germany representatives of the economic powers have long ago taken over control completely - how could it be anything else with the balancing power of direct democracy missing? (Sorry for this but after many years working in Switzerland I have kind of developed a slight feeling for the restrictions a direct democracy can place on the economy. Just compare the rules for immigration or foreign workers with those of the EU. Having people from low-wage countries working here under the conditions of their home country simply kills the economic chances of the workforce here).
Last Friday the head of a large company in Germany told me that the EU has now finally abandoned their plan of achieving a common area with equal and fair social conditions - something they supposedly went for in 1999. Again, no surprises here: I've learned at school and university that the EU is an organization with purely economic purposes - and nothing has changed here since. Except that we now see more clearly what this will mean for the masses.
Only if interpreted as "gone through the usual decision making process in the EU the whole decision can be called democratic. This also means that the whole question of "was it a democratic decision?" is not really very useful.
Much more interesting is why e.g. the representatives of the small and medium businesses where unable to prevent software patents. They will clearly hurt this group and I can only interpret this as a sign of increasing concentration of power in the hands of the large zaibatsus.
In a situation like this with intransparent polictical bodies deciding over chances of many rumors spread and it is sometimes hard to distinguish sheer nonsense from reality. One thing I read was e.g. that Gates threatened the Danish government to relocate 800 developers from a mobile company from Danmark to the states if the Danish government would not vote for software patents. It was on Heise.de but that does not make it any more credible then if it is found somewhere else. And he supposedy spent an evening with the head of the EU commission.
So what? Again, the EU commission is NOT a democratic organ. It represents the economy in an organization that is purely economic in its goals. So why would one need blackmail or bakshish to achieve the goals of the zaibatsus? There is NO conflict of interest between the large corporations and EU politics anyway.
Independent developers and smaller companies will soon realize that they are now being brought into the same structure that we already know e.g. from the car industry. A few big players dominating a large number of smaller companies which in turn suck out the life of their employees to meet the ever tighter budgets.
Independent software developers will disappear or see huge cuts in rates - they cannot create software that is guarenteed to be free of patents.
Did we miss something over the last 30 years of software production in Europe? Did we really miss paying paying US companies immense amounts of money for nothing?
You can give me any patent - no matter how clear and important it is: I would not be able to use it against the zaibatsu's of this world. The reason is simple: a patent is NOT a right in itself. For a patent to be effective one has to have the financial means to defend it - which I do not have. This is the built in factor for the benefit of the large corporations.
Patents CREATE property (see, we are back to the difference to OSD which is based on SHARING and does not understand the concept of property). It is nice to see Microsoft talking about protecting their property through EU law - a property that is only CREATED if the EU laws are changed!!
We don't need software patents. They fulfill no justified role in the context of software development and haven't done so in the last 50 years. Patent timings do not apply to software because routines are not invented - they are found. Patents should not be confused with intellectual property rights on music or video's - these are unrelated things. Software patents would create property (and property rights) where none have been in a way that will only benefit the big guys.
Looking at the global picture gives another reason to abandon any ideas of software patents. We already have a rather perverse situation with medical and pharmaceutical patents in the 3rd world with millions of people dying just to keep up the patent rights of the pharma zaibatsus. Adding another layer
Attacks on open source development will leverage several attack vectors: The right on domainnames will be turned into a weapon against free speech.
Software patents will be used to threaten open source developers and companies. The mere threat of litigation will be enough to kill many projects.
Limiting broadband adsl will be a useful weapon against open source as it makes communication rather expensive.
The EU will continue its lobby driven path to the benefit of the mega-capital.
Digital Restriction Management (DRM) will be used to separate people from their general purpose computers.
When I wrote this article the votes on the EU constitution had not been cast yet. After the decisions in France and the Netherlands the whole process came apart and it became more visible then ever that the EU is a mere lobbying entity - good for the rich and mighty. In Germany we were not allowed to vote at all and how our representatives respect democracy can be seen with the secretary of the justice, Mrs. Zypriss, who supported the patent lobby AGAINST a UNANIMOUS vote of the german house of representatives.
It becomes more and more obvious that there is something seriously wrong with our so called western democracy. The lobby system seems to take over society completely. Even basic democratic procedures e.g at universities are not extended e.g. to the students. They are canceled and replaced with dubious decision processes made be installed lobbyists. This gives room for interesting research as well: According to heise.de the DFG (a german research funding organisation) will look into the balance between right holders and the commons. They are up to something quite big because the real question behind it is how much "being digital" forces us to enter a new area of business and social organisation. Just think about the effects of the answer to this question for developing countries. We need to stop the old powers (which got a revival from Bush) to turn software into the same slowly advancing technology that is so typical for cars. One might think that cars have developed incedibly - but just think about how much gas they still use, how many people are still killed or hurt and you recognize that progress has been slow.