Friday, April 20, 2007

Mozilla Extensions and breakage...

One of my major pet peeves with Mozilla products is Extensions and how they break between versions of the products and how developers are not on top of releasing updates to those extensions.

I'm not necessarily an early adopter of stuff, but I do have a tendency to be cutting-edge on certain applications. I don't run bleeding-edge stuff except for my own product line where I'm constantly adding a new feature here and there.

Mozilla Thunderbird is the latest of major annoyances. Thunderbird 2 just came out a couple days ago and several of my extensions broke. For the most part, extensions break because a single string that says "I work with versions of Thunderbird from x to y" where y is less than the current version exists.

Let's take a look at how Outlook would handle the scenario. You've got millions of happy Outlook users with their extensions implemented as COM objects (DLLs). The latest version of Outlook will attempt to load the extension and, if it fails, Outlook will crash. The user will be moderately unhappy that Outlook crashed but the next time they start Outlook the extension won't load.

Mozilla products will simply refuse to load the extension even if it would work just fine. They don't let users say, "I don't care if it won't necessarily work or even work as expected, let ME decide if it works or not." Just because it says it won't work doesn't mean it won't. In other words, I want to see an override option to force the extension to load anyway - in most cases, such an option will work just fine. There are certain extensions people can't live without and are willing to run the product with the potential for instability to keep those extensions. Mozilla developers are clueless to user needs. It would be interesting to know if an extension to forcibly load "out of version" extensions could be made.

I use several Thunderbird extensions, but two are business critical enough for me to drop back to TB1.5: XNote and Mail Redirect.

No comments:

Post a Comment