I haven't used seriously with Linux for a few years now. But I wanted to test-drive roadster (a mapping application only available under linux) so I installed myself Ubuntu. After using it for a few hours my conclusion is that despite constant Linux-Desktop bruhaha in the past few years, nothing really changed. Ubuntu is supposed to be the best that Linux on desktop has to offer and it's dissapointingly similar to how RedHat looked like 3 years ago. Without trying to be comprehensive, a few observations:
The more things change, the more they stay the same. Apple did few short years what none of the hundred of different Linux distributions couldn't do: created not only usable but also pleasant to use Unix distro. To me that means that Linux distros are doomed to mediocrity forever. It clearly is not about the amount of effort spent. The amount of coding time on Linux in general (Gnome+KDE+all the distros+other basic technologies like freetype/x and apps like openoffice/gnumeric/etc.) most likely dwarfs the amount of work that Apple did on Mac OS X. But Apple has some things that Linux community will never have:
In Linux there's abundance of everything (multiple filesystem, multiple package management systems, multiple UI toolkits, multiple media players, multiple office packages, multiple window managers and, in greatest multiplicity, a million different distributions). One theory is that existence of multiple products that do the same thing will lead to increased competition and therefore greater rate of improvements. I don't have any arguments to refute that theory. Good thing that I don't have to. Whatever mysterious reasons, the facts clearly show that this is not the case. Apple leap-frogged open-source projects on all things that matter despite (or rather because) having only one implementation of a given thing. I think that the reason for that is that Apple removes randomness from the process. Anyone can hack on open-source projects and while an average coder that tries his hand at open-source might be an above-average programmer, he probably knows about usability and writing software for people about as much as he knows about etymology. That would explain why, to use a random example, gtk+ has impressive theming engine but its standard file open widget sucked beyond comprehension for so many years. You need adult supervision to set priorities and open-source, on average, will never have that. There are exception, like FireFox, but they actually demonstrate the problem and the solution. The solution is to have a core group of developers with UI clue and a will to strongly control the developement. But that's rare. |