mgb_phys said:
But in the 'computers for grannies' segment, where you just want a machine that you can safely connect to the net without worrying and where there is generally a freely downloadable app X to view file format Y, I do think Linux is pretty much there. As shown by the range of mini notebooks that are using Linux.
Actually, I think this is going to be a huge problem in the coming months for the following reason. For all of the ire it attracts, Windows does have at least one massive advantage: it's essentially a stable code base. Once a major version of Windows is released, that's it: you can be sure that the system will remain essentially unchanged for three years or more. Even OS X, which sees major releases about once every eighteen months or so, offers a stable code base.
On Linux, however, things are very, very different. There's a really rather strange perversion within the Linux community to release new versions of a given distribution every six to eight months. (Ubuntu is a good example of this since it averages a new major release every six months or so.) This wouldn't be a
huge problem were it not for the fact that each release typically includes new versions of toolchains: different minor versions of gcc, glibc, and so on. Even if you're not doing compiling from source or developing, updating the toolchain causes
massive problems because of the widespread use of dynamic linking without intelligent version checking. Going back to the Ubuntu example, I've never -- not even once -- been able successfully to update the distribution without breaking it. If I want to update, I have to reinstall the
entire system from scratch.
You could, of course, suggest that I avoid updating the operating system and instead stick with a version I know to work. Well, fine. But what if some application I use has also been updated -- a new feature added or a bug fixed -- and I absolutely need to use it? But what if that application doesn't work with my current glibc because the minor number is 0.0.1 off? If a static binary isn't available for download I have to update glibc, that's what. On a pre-installed mini-notebook this implies installing all of the developer tools: gcc, glibc, qt-devel, and so on. Hardly something that a granny is going to do, is it? And then I've got to update everything else that's sensitive to updates in glibc. But will the update manager provided with my Linux distribution manage to achieve this? Of course it won't. That sort of thing would require
testing...
Everything's hunky-dory in the world of Linux-running mini-notebooks at the moment. But just you wait until people start trying to update their software...