Wednesday, May 23, 2007

Open source in the mainstream world

A Slashdot article was [somewhat] recently (it's summer, I'm lazy) posted referring to a Wired article (seems increasingly common nowadays), debating whether or not Firefox was becoming bloated due to more users using it and requesting more features (integrated RSS, all that fun stuff). Everyone's favorite browser (including mine, a Microsoft fanboy! *gasp*), becoming bloated?! No way!

This topic actually came up to some degree in the comments for one of my earlier posts (which apparently got two diggs, thanks to Dylan--but apparently I'm not cool or interesting enough). It seems like a lot of open source projects in the past have [over]emphasized modularity in their application architecture. The Firefox developers seem to be well aware of this, otherwise this article would have never appeared.

The Slashdot article accused Firefox of heading in the IE direction, i.e. (ha ha) bloated, like all Microsoft products are, according to some. That's a rather interesting accusation, considering Firefox is the jewel of open source. So why is Firefox heading in this direction?

Shamelessly citing my own comment, I was arguing that "extremely modular architectures" are not acceptable for non-technical users, and because of this, the most popular open source software would have to "bloat up" to really grab the attention of this population (which is who the open source crowd is targeting nowadays, right?). Interestingly, this implies that software bloat and "normal" customer satisfaction have an inverse correlation. I'm sure a large quantity of people, myself not withstanding, want their software to work, work well, and do everything they need--without having to install plugins!

Microsoft is constantly accused of developing bloated software, and that open source alternatives are so much better, because they aren't bloated. Can anyone really win this war? If more users equals more bloat, then there's a bit of a Catch-22 going on, especially for the "elite" users that complain about bloat in the first place. How can you satisfy more than one group of people? For example, a few comments on the Slashdot article pointed out that things like RSS integration are unnecessary to a browser and are really just bloat, and another complaining that excessive memory wasn't really limited to just Firefox.

This seems to be a pretty hard problem (perhaps NP hard? hurr), that I have no immediate solution to--it's more than just a programming problem, that's for sure.