Back on August 9th Michael Singer had a very interesting analysis piece called "Linux on the desktop--almost there again?" focused around the observation that "even with all the hoopla last year about Linux progress, the buzz over breaking the Windows stronghold has died down considerably."
The article drew 155 talkback comments, mostly from people offering their views on why desktop Linux appears to have run out of steam.
I've been looking at language design issues with respect to the four major programming models (Cell, CMT, PowerPC, and x86) in the context of a specific set of requirements. In working through the hows and whys of language acceptance one of the most striking things is the continuation of Fortran as a viable scientific programming language.
Fortran, to put it nicely, hasn't had a right to exist since the late sixties in the sense that it does nothing well and has no comparative advantage even against something as stunted as Algol66. And yet not only does Fortran retain an enormous following among people working in science and engineering, but its simplified spin-off, the Beginner's All Purpose Symbolic Instruction Code is the foundation language for Microsoft's developers worldwide.
There's a parallel phenomena that affects systems implementations of all kinds: busy users will spend hundreds of hours doing something the old way in order to avoid having to spend a couple of hours learning the new way. You can see one rationale for this by looking at each learn/do decision independently: imagine that a task takes 30 minutes the old way, and five minutes the new way -but it takes an hour to learn to use the new tool for this purpose. Put the user under daily "get it done" pressure and continuing the old way of working looks thirty five minutes better each time the decision comes up -even though learning the new tools would free up a full working day each month.
There's only one way to get around this during a systems implementation: take the users out of their regular jobs, force them to learn the new tools, and then completely take away the old tools before they return to their jobs.
That's really why Fortran remains so popular: people carry around "their" files and become so vested in what they know that they'll defend it to the death. It's also, of course, a major contributing reason for the continuation of Microsoft's hold on the desktop market.
So what's the lesson for the Linux desktop? -it's the same as for any other systems implementation: things that let people continue doing things the old way, including dual boot strategies and this nonsense of making the Linux desktop look more Windows like than Windows, are doing far more harm then good.