[PROGRAMMING] The Immobile Monolith
Sep. 7th, 2004 09:36 amHmm. I get back from Worldcon, and the first news in my email is Microsoft Watch, talking about the way that Longhorn is getting scaled back. It appears that the next version of Windows, due in 2006, is losing one of its key features (WinFS) and one of the others (Avalon) is in some danger.
There's an architecture lesson in this, on the dangers of interdependencies. I mean, look at this: an operating system that has already been in the works for years, and isn't slated to be released for another two years yet, and they're still having to drop features that until recently they were trumpeting as the main point of that release. And there are tons of knock-on effects: other projects such as ObjectSpaces, which were supposed to be big deals themselves, are getting pushed even further back because they were dependent on WinFS.
This isn't a problem of Microsoft's evil business practices -- it's simply a consequence of intentionally building a monolithic environment, where everything depends deeply on everything else. It's a consequence of APIs that are driven by proprietary processes, all woven into a web of such complexity that the spider itself is having trouble navigating it. Frankly, more than anything, it's a consequence of viewing the whole system in the gestalt too much. Trying to make everything seamless means that you can't change anything without resewing the whole garment.
There's a real opportunity here, and it'll be interesting to see if anyone jumps into the breach. Firefox has finally lapped IE technologically, and is quickly building up an impressive lead -- it's not just better than IE, it's a lot better, and improving rapidly. I suspect that, with the serious advancements in Windows now pushed out until 2008 or 2009, Linux has the best opportunity it's likely to get to similarly lap Windows and get out ahead. I'll be very curious to see if it manages to take good advantage of that opportunity...
There's an architecture lesson in this, on the dangers of interdependencies. I mean, look at this: an operating system that has already been in the works for years, and isn't slated to be released for another two years yet, and they're still having to drop features that until recently they were trumpeting as the main point of that release. And there are tons of knock-on effects: other projects such as ObjectSpaces, which were supposed to be big deals themselves, are getting pushed even further back because they were dependent on WinFS.
This isn't a problem of Microsoft's evil business practices -- it's simply a consequence of intentionally building a monolithic environment, where everything depends deeply on everything else. It's a consequence of APIs that are driven by proprietary processes, all woven into a web of such complexity that the spider itself is having trouble navigating it. Frankly, more than anything, it's a consequence of viewing the whole system in the gestalt too much. Trying to make everything seamless means that you can't change anything without resewing the whole garment.
There's a real opportunity here, and it'll be interesting to see if anyone jumps into the breach. Firefox has finally lapped IE technologically, and is quickly building up an impressive lead -- it's not just better than IE, it's a lot better, and improving rapidly. I suspect that, with the serious advancements in Windows now pushed out until 2008 or 2009, Linux has the best opportunity it's likely to get to similarly lap Windows and get out ahead. I'll be very curious to see if it manages to take good advantage of that opportunity...
(no subject)
Date: 2004-09-07 01:38 pm (UTC)These are largely difficult projects which have been attempted before, and gotten mired for various reasons. It's probably possible for a dedicated and talented group of programmers to drive significant development of those areas in only 2-3 years, but it would require much more coherence of purpose than the Linux community has ever shown, especially since some of those changes will be working against the philosophies of subsets of that community.
Should a commercial release with those features be backed by a reliable company (let's say Redhat, since they already strongly back their sever software - though it is not cheap), then Linux could become a viable alternative to Windows - but it would still not have much to give it an edge to consumers over their current OS. Ignore the ability to tinker with it (since most users won't do so), better servers (since most users won't be running them), and the low price (since having a responsible backer will have non-zero cost), and you'll have an OS you can only fairly call adequate.
That may not be too bad, though, since once you've brought the OS so far to bring it to adequate the infrastructure you've necessarily built up along the way should help you build it up to excellent. After that you have to convince users that you really are better than the competition enough for them to go through the trouble of switching, and persuade developers to bring their software to your platform , which is by now looking less and less like Linux as we know it...
... but at that point you might as well get behind OS X. (Well, it has its own major problem of locked-in hardware, so that war's not trivial either, but I think it's a lot easier.)
In short, I am extremely skeptical that you will see Linux make significant inroads into the desktop market in the immediate future.
On the other hand, Longhorn server isn't due out until 2007, and Linux has already started making notable progress in the server market. I suspect that its advantages in that area, and the better technical background of those users, could allow something like an IBM-Redhat joint venture to make a serious bid for market control.
(no subject)
Date: 2004-09-07 06:32 pm (UTC)What's missing in OpenOffice?
RedHat has done a lot of work here. The main problem, of course, is components that they haven't gotten to yet, or that aren't shipped with their distribution.
Er...what? I've had maybe one lockup in the past year or few that could be attributed to the GUI. It's certainly one of the hardest to configure, especially on bleeding-edge hardware. For example, at work I have a late-model Dell with some fancy new PCI Express video card that Fedora Core 2 can't recognize (it looks like it has the right driver, but doesn't know it). So it fell back to minimal VESA; bleah, but it's stable. But this is a problem that Windows has, too, if you install it yourself; what's needed is more PC manufacturers shipping Linux preinstalled.
Agreed. The problem for all of them is that they require some form of central planning, and, by definition, free-software people don't do central planning well. Maybe what's needed is a design for a desktop OS that works well with anarchy. Not sure if that's possible, of course. :-)
(no subject)
Date: 2004-09-08 11:49 am (UTC)Hmm. I had in mind poor compatibility with MS Office, but it seems that's simply no longer true. Aside from some minor quibbles, it looks like this part is actually doing pretty well.
Er...what? I've had maybe one lockup in the past year or few that could be attributed to the GUI.
Experience varies, of course, but when administering a medium-sized network of Redhat machines I saw an average of about twice weekly X crashes for each machine, plus another few times that something bizarre happened higher up (especially Gnome losing track of components, which may be a fixed problem by now) that didn't crash the GUI but did require restarting it. The Gnome/KDE issues have gotten much better recently, but X itself is still a bit slipshod, and very opaque to maintain from a general user perspective.
what's needed is more PC manufacturers shipping Linux preinstalled
That would solve a lot of problems, although de facto standardizing the OS will raise a lot of current users' hackles. There are two main reasons why this is not as easy as it seems: the first is of course the MS distribution contract that many of them have to work around, and the second is that much of the current target market already owns PCs, and would be putting LInux on them rather than buying all new hardware.