Thursday, January 19, 2012

Open Source Software: Doom and Gloom

A few years ago there was a rumor that the Linux Hater's Blog was being abandoned. I took the opportunity to read through his old post. Most of his posts were filled with immature rants and filled with swears, but he had a genuine point at times.

Open source software may not cost you any money, but poorly designed software will cost you time and effort. I have seen more than my share of dropped projects; projects that start out with a small team that slowly erodes away until that last person leaves up a “Thanks for all the fish” post.

The greatest evil of OSS is probably fragmentation. The mantra of OSS source software has always been freedom of choice. And it’s good if you’re a consumer trying to pick a media player or web browser, but it is hell for software developers. Each distro has a different set of libraries and a different kernel and a different set of binaries. Your software might work on distro and not on another at any given time. That’s one of the reasons companies are so afraid to make software on linux, they have no clue what libraries they can support.

I recently found out about the Linux Standard Base, who are attempting to standardize binaries across distos. However, the LSB has failed, to a certain extent. The LSB doesn’t have the influence over the distros that they need. How many distos are going to listen to the LSB and use older binaries for compatibility when they can update to the latest and greatest?

Check out what distros the LSB has certified:


Ubuntu: the latest release certified is 9.04, which is no longer supported. 8.04 (LTS) is also certified, but support ends next month. And having used an LTS this late in this life cycle, I can tell you, they are unusable.


Mandriva: the last desktop version certified is from 2006 (2007.0)!

SUSE: version 11.0 is no longer supported.

Debian: not certified at all.

Fedora: not certified at all.

Mint: not certified at all.

Congratulations Linux Standard Base, you’ve managed to standardize a bunch of Linux distros no one is running!

But that’s not to say OSS is the only software affected by these issues. Let me illustrate it with an example. Before Microsoft released Vista it was codenamed Longhorn and it was a much grander undertaking than the released product. There were, what Microsoft called, the “3 pillars of longhorn”; 3 key technologies that would form the backbone of the finished Longhorn. One of these pillars was WinFS which called for all the files on a computer to be stored in a database. For those less technically minded, this was a big deal and allowed for some neat things to be done.

At the beginning, everything seemed to be going fine; Microsoft released multiple preview releases of Longhorn and, with the exception of the normal bugs, everything was moving along. Then nothing was released to the public for several months; no preview builds, no progress reports, nothing. One day, Microsoft announced that they would be releasing WinFS after Longhorn’s release and would be porting the other 2 pillars back to XP. The reason was, they simply bit off more they could chew, they kept on adding more and more features, they had to eventually crunch bugs and make a release. In the end it WinFS was further delayed and then outright canceled.

At the same time, linux had a similar open source program: Gnome Storage. Like WinFS, it planned to put every file on a computer into a database for organization purposes. What happened to it? Well, it was abandoned. It was done almost entirely by a college student, maybe he graduated, maybe he got a job, maybe he just was no longer interested in it anymore. The end result is Gnome Storage is in a perpetually unfinished state.

Two separate project failed for entirely different reasons.

No comments:

Post a Comment