I like to take a little tour to explain how I think we can make progress in culture and also in software development. Most importantly we shoul define or find out what kind of progress we want to achieve. This may or may not be a fuzzy definition. But we need some fix point that enables us to measure our progress or to preview what progresses we will be able to achieve. Lets just view the possible progresses of a Free Desktop in relation to non-free desktops and/or these free desktops today compared to what we would like to have in future. Here we can quickly see that we do have at least two different kinds of measurements for a progressing Free Desktop: The one of the users already using a Free Desktop and those that are not yet it.
Jeff Waugh once defined a possible goal to reach 10 % of the desktop market for GNOME in ten years .What do we make of such a goal? Is this ambitious, is this realistic? Does it help to do progress?
The good point is that a goal such as this, as it is stated gives us a chance to discuss these points. We questions the goal and may end up in different goals like the one to do this goal for the whole Free Desktop and not for GNOME alone. Because we come to the conclusion that GNOME may get these percentages, but not if we would fight KDE, XFCE or other desktops.
I think theses that question the status quo are always important for any kind of progress. Because they help people to start questioning if what they do is right, And I think that even is the case if a theses is wrong and the goals are wrong. There is some similarity here with the “laws” of successfull wikis. A successfull wiki progress oftens starts with false content. More importantly it starts with people recognizing the effort, the idea behind and the fact that some things are wrong.
If you will this is the classic these/anti-these concept or we look at the relation of dualisms in Taoism. I do not want to undervalue the concepts of preserving the status quo (“the machine thats running”). There are always good arguments to keep some values or a given status because it works. But that is another discussion. Every status can be questioned and evry progress will be based in some given values and some facts that will not be changed. Progress can only be made if some things are not changing.
I would say that good progress depends on good discussion culture, which means recognizing the status quo and the values that it is based on and also the ability to formulate new goals and to question the status and the values. I think this might be one of the powers of free software movement that is underestimated most. Its discussion culture comes from scientific dialogues – and that makes it open.
The GPL tried to define some fundamental user rights as well as the BSD license defined more of developer rights. Both do have their merits for both users and developers. I think the GPL is very progressive even today in definining more rights for users than any other software license that I know off. The problem I do have is if it is the right way to define rights that can be enforced by law enforcement agencies. Defining a right is a good thing but do we really want to use our current law system against people that do not acknowledge such a right? I tend to say yes, because the definition of a right and the use of the power of a state can not be thrown together. These rights can exist without the existence of current states. And if you look at the progresses that have been made I think it is obvious that many progressions have been made through the existence of the GPL. I think even if distributions like OpenBSD replace gpled software with BSD licensed software they have profited by the possibility to have some tools that they needed before they were able to rebuild them under their prefered license.
One could also argue that Linux profited by the existence of old-skool Unices and Windows in some way. That might also be true. Linux could use Unix and Windows as role models. I think today Samba is the preferred method of exchanging files between Linux machines, although the protocol came from Microsoft. But Linux, GNU, the GPL questioned the state of mind and the status of these both software worlds. In the Unix world no company was able to make a monopole and Unix never had the one attractive GUI (maybe some company should have bought a Windows license for Unix to achieve this? LOL). And on Windows many user generations had experienced their frustration that they had to work with a system where they depended so much on the will of the monopolist Microsoft.
Progress can be made if you are able to achieve a goal. The achievability depends on the nature of the goal as well as on realism. But progress is never only built on facts. It is also built on utopia. Listen to Microsoft and AOL! They always promise us “computer heaven”. I think that free software does not do that in the same way. The utopia here is that of a completely free software world or lets focus on a completely free computer desktop. This promises infinite freedom for a user. And people like freedom. It does not necessarily promise a technically better desktop and there I think we must be careful in our argumentation.
We can not – for now – promise a better desktop. We can try. But that is another goal that is not necessarily the one that comes along with Free Software. But lets just be aware that this is another goal and not say that it is bad.
What is this goal of a better desktop? On the one hand this comes from freedom – so it is not totally unrelated. If you do have no spyware installed but all software you need is accessible really free you are not forced to do things that are not necessary for your daily work, the same is true for handling licenses: if you are a lawyer you should help your clients and not having to think about what software licenses you have or need. We also think that if software is free the software developers love to cooperate and everything should work together well. The fact today is that often proprietary software gives the user more comfort. That is because not every functionality that users need has been programmed and still too much redundant code is written. In a proprietary software development model a company defines its goals in making as many money as possible while satisfying the customers. The satisfaction of a customer is not primary for free software – or lets say it is not the goal of free software to sell copies and to satisfy a given customer to the point that he continues to use the software. The goal of free software is simply to make good software and to make it available free. This often means that some wishes of customers are satisfied just because it is possible and there is somebody that likes to fix something or to build in some feature. So I would say in free software progress more often is happening on many different levels. And the end-user (customer) can not always see the progression.
And that is a problem. I think the Free Desktop could use some progress that could easily be achieved if all ressources would go into fixing some details. But free desktops tend not to have the great goal but projects like GNOME do consist of many sub-projects – and only the parts where developers like to play will get fixed. But often developers have their own workarounds. There are companies that pay for new features like AIGLX or for fixing things but from my view most energy is wasted while simple things are not beeing fixed.
OTOH: is a better deskto really what people want? Windows has never been the best desktop in the sense of ease of use, stability and so on. Nonetheless they more or less own a monopole on the desktop market. The thing is attractiveness. People are using a desktop because it does its job or better “promises to do its job”. And today the sheere amount of software that is in use under Windows and not available on Linux is holding users back from switching. Together with the not to underestimate fact that you normally do not get a preinstalled Linux on a Desktop PC as a cheaper choice at the local computer dealers.
Linux is gaining ground where people see the benefits. It is also a change in culture that is taking place and will be needed to build the basis for further progression. We do have a real clash of cultures here that goes right through companies like IBM, Nokia or Intel.
Lets see what future will bring.