Sunday, April 13, 2008

Swinging Preferences

Having more time for myself, I'm back into the continuous effort in tuning my Ubuntu installation to match my usage preferences and making it more pleasant and efficient to use.

Two of the most interesting switches in my own preferred software: namely favouring Quod Libet over Rhythmbox; Emenese over Pidgin (previously GAIM). What's more interesting that both Quod Libet and Emesene were written in Python and were fairly new players in the open source universe.

Now, as we know it, the beauty of software in general is all about choice: there's a lot of different implementations of any application domain and users are free to choose any alternatives that were available to them. However, what kept me thinking is that: what had me making the switch from more established open source projects (Rhythmbox and Pidgin) to newer projects instead.

To think about it, Rhythmbox and Pidgin have served me very well indeed to a point I didn't see the need to change: afterall, it does what I wanted and probably more. But then came Quod Libet and Emenese that not only does everything plus the "killer feature" that I wanted badly:

  • Quod Libet: The "Random by album" plugin (Implemented as a plug-in)
  • Emesene: MSN personal message feature

Now, looking at the two features above, it's not hard to notice that these two features were never "essential" features; but rather, they were "highly desired" non-critical features. Granted, both of these software doesn't do everything their similar counterparts does, but the thing is that they position themselves as a promising alternative by not only providing all the essential features while being stable but also being able to adapt to more "minor" but "highly desirable" features.

So really that begs the question: how high such small but highly desirable features be in terms of development priority? On one hand, you need these new features to be in to attract a larger user base (especially if the feature is perceived to be important to a large number of users); on another hand, the feature may as well be a fad that lasts for a short term and devoting too much time with such "features" spells disaster for any projects. I suppose in the end, it's important to have an extensible infrastructure (the plug-in infrastructure?) and a means for users to install and uses these features in a prompt and user-friendly manner (either by bundling them with the main package like Quod Libet, or provide an easy way to obtain them like Firefox).