Redesigning Firefox’s Addons Manager

When I ask Firefox users why they love Firefox, the answer often isn’t because of Firefox. Rather, it’s a particular Firefox add-on that provides functionality that has become invaluable to users. From developer add-ons like Firebug to social add-ons like StumbleUpon, a single add-on can fundamentally change how users interact with the web.

Firefox users get starry-eyed when describing their favorite add-ons

The reason add-ons are so important is because they are a fundamental way that users take control of their online life. Firefox touts its customizability as one of its main selling points, but users’ ability to customize their browsing experience is dependent on the talent and creativity of the add-on developer community. I’ve written in the past about the importance of Firefox providing a user experience ideal for as many people as possible right out of the box, without add-ons installed. But each user is truly unique and uses the web in increasingly different ways. That’s why it’s so important that add-ons be trivial to find, install, and begin using.

The Current Add-ons Manager

Add-ons are currently installed, maintained, and configured via the add-ons manager in Firefox. This window, found under the Tools menu, provides an inventory of installed add-ons and allows users to update, install, remove, enable, and disable them.

The current add-ons manager works, but could use some love

The add-ons manager has been largely unchanged since 2007, and it badly needs a redesign. One reason is that it has several usability problems that would provide significant benefit to users if fixed. For instance, the process of updating add-ons is currently characterized by interrupting important tasks such as startup. Locating a particular installed add-on currently involves navigating through categories such as extensions and plugins. Even experienced users I talked to find the distinction between these categories hazy. A redesign to address current issues should insure that installing and updating add-ons is trivial, notifications are non-disruptive, and the interface provides clear information about the state of a user’s add-ons.

However, a successful redesign of the add-ons manager must not only fix problems, but add functionality. This is because the scope and functionality of add-ons has increased dramatically and will continue to expand in future versions of Firefox. The current add-ons manager gives only the name of an add-on, an icon, a version number, and a one-sentence description. Users could benefit from more information, such as a description or a screenshot showing what UI the add-on will change. Added functionality is also needed because of new ways to modify Firefox, such as Jetpacks and Personas. These are similar to current add-ons in that users can choose items to download for added functionality, but they are installed, managed, and used differently. A redesigned add-ons manager must be able to incorporate emerging projects like these.

Redesign Priorities

From fixing current usability problems to adding needed functionality, there’s a lot that needs to be tackled in the add-ons manager redesign. To help focus the effort, the main areas to address can be described as five priorities:

1. Maintaining and Configuring

  • Allowing users to quickly locate a particular add-on by name or by type
  • Providing simple, usable controls for basic add-on operations
  • Allowing new forms of add-ons, such as Jetpacks and Personas, to be maintained and configured easily alongside traditional add-ons

2. Updating

  • Updating add-ons automatically by default. I’m increasingly convinced that most users, once they’ve decided an add-on is trusted, do not want to manually update it. They especially do not want to be reminded to update when they are starting the browser
  • Allowing users the option to update add-ons manually, update only a particular add-on manually, and possibly to undo an update

3. Installing

  • Streamlining the install process to as few steps as possible
  • Providing the user with clear indications of what action is needed, especially when some add-ons require a restart and some do not

4. Discovering

  • Providing a compelling first-run experience to new add-ons users, including clearly showing what functionality add-ons provide and what they will change
  • Providing a usable, findable way on the add-ons manager to search all existing add-ons, only requiring a visit to AMO when greater community involvement or information is sought

5. Troubleshooting

  • Providing ways to determine if a particular add-on may be causing performance problems, such as ranking by size, CPU, etc
  • Giving clear communication and instructions if there is a security problem with an add-on

This is still very much a working list open to feedback and changes (especially via comments here or on the wiki).  Basically, what I’d like to focus on is making add-on usage less disruptive and more accessible. Experienced and especially technical users tend to be very aware of add-ons and the functionality they provide. These users may see add-ons mentioned in the tech press, may talk to their friends about their favorite add-ons, and might even get involved in the add-on developer community. These are the users who say “I can’t imagine a world without add-on X.” But the benefit of add-ons is felt almost soley by this group. There are thousands of add-ons available that can improve the online experience of just about any user.  Both users and developers deserve an add-ons manager that helps make customizing the browsing experience simple.

52 Comments

Chime in Leave a Comment

  1. Regarding discovering new addons: when you first install Songbird, it will suggest a small set of addons. Its forced on the user, but because its done on the first run, its not interrupting any task.

    Also, I think extension sync (or at least listing of extensions from other devices) is a component of maintaining addons. Its a real pain to manually install the same addon on multiple devices, but I’m guessing that its usual for people to have the same addons installed on each of their devices.

  2. Dan says:

    I like most of these suggestions, but I actually like the addons categorised into different tabs in the manager. Plugins are different to extensions, people are finally starting to realise that and the current UI has helped that.

    • jboriss says:

      Dan –

      If anything, different categories will become more pronounced and obvious as different ways to extend Firefox begin to be integrated here. You’re right that dunping everything into one pile certainly wouldn’t make it easier.

  3. Just a user says:

    I am glad that you are always trying to improve things. That is a healthy approach. But please don’t start from the premise that it “badly needs a redesign” because it is somehow flawed or *bad*. It is not. It is good, and works very well. And of course the better something is, the more difficult it is to improve on it, so please just be careful not to break anything! Good luck with the re-design.

  4. Chris says:

    Currently the addons manager looks completely different to addons.mozilla.org. Why not integrate them – for example, make the addons manager open in a tab, rather than as a dialog box, with the same styling and hyperlinks back and forth. that would also fit in with the design direction of Firefox 3.7 and 4.0.

  5. My extension, Stylish, puts a new panel into the Add-ons manager. It was a pain to make this work and it’s still kind of buggy. An easier way for me to integrate my items into the manager would be welcome.

    • jboriss says:

      Jason –

      My goal is that the new addons manager make life simpler not just for users, but for developers. Easier and more consistent ways to write preferences I think also would be a huge benefit.

  6. Lucas says:

    Dear Boriss,

    I think there is one confusing things about the add-on screen.

    If you go to this screen, then one add-on is selected and it shows an ‘uninstall’ and ‘disable’ button.

    At first, it was not entirely clear to me (as experienced computer user), that the selection was a selection. So, I got the impression that there was something wrong with the add-on and that it was disabled or needed to be disabled.

    I suggest that the selection will not be persistent, after closing the screen. This might less friendly, because you are likely to do something with the latest add-on you did something to.

    As alternative, Firefox could put the add-ons that needed modification on top or something like that.

    Regards,

    Lucas

  7. steve says:

    while you’re at it you should improve the plugin system, ideally make it more like extensions

    specifically:

    1) single clear location on user hard drive, ideally under firefox profile. when updating applications, sometimes leftover files exist and it’s annoying trying to figure out where the leftover is. the primary culprit of this is jre updates

    2) when a different program installs a new plugin, user should be prompted to enable it on browser start. likewise there should be an uninstall option for the plugin inside firefox

    3) the plugin panel should make it easier to update or check for updates

  8. custom.firefox.lady says:

    An addition I’d really like to see is a link to the add-on’s amo page (if any). Most of the time it’s the amo page I’m wanting to visit rather than the homepage. One can go to amo and search, but a direct link would be helpful.
    I’d also like some notation in the manager if an add-on is experimental, since those don’t auto-update even when using ‘check for updates’.

  9. gozala says:

    I would’ve actually consider of merging with AMO, to have a sort of hybrid like it’s done by http://www.feedly.com/

    There is no real need to have two different places for looking at addons.

    Some social stuff like recommendations for similar addons / related addons will be really cool addition IMO

  10. johnjbarton says:

    An emerging area is extensions for extensions (Firebug has over 20 by now). We’re planning our own extension solution more like AMO collections except as co-tested, installable bundles. We want the user experience be less about managing software and more about managing features. I don’t see a lot of overlap in our use models however.

  11. Ken Saunders says:

    I’d much rather manage my add-ons in a tab and I do (chrome://mozapps/content/extensions/extensions.xul) but I still have to deal with the add-ons manager window popping up after an add-on install and Fx restart.

    I really believe that it’s time to stop fragmenting Firefox and breaking the user’s continuity with the main browser window.

    It’s so old IE6-ish to have to minimize a window or change focus to get to another that is part of the same app. One of the million appealing things about discovering Firefox was that it had tabs so users wouldn’t have to deal with that any longer.

    We do more now in a single app and browser window than ever before (thanks to Mozilla and the awesome add-on developers all around the World) so it only makes sense that Mozilla integrates the add-ons manager into the browser’s main window where it really belongs to keep a user’s interactions with Firefox consistent and at least feel uninterrupted.

  12. Ken Saunders says:

    Oh, I forgot to add the URL,

    about:add-ons 🙂

  13. Brian King says:

    A couple of suggestions:

    1) Flag add-ons not hosted on AMO. See:
    http://adblockplus.org/blog/extension-conflicts-2009-edition
    These don’t go through the review process and should be seen as higher risk.

    2) Integrate Collections (RE: the Add-on Collector) by default.
    https://addons.mozilla.org/en-US/firefox/addon/11950
    Collections are huge.

  14. mawrya says:

    Glad to see some attention to the confusing categories – plugins, extensions, etc. Not that the categories should be done away with, just that they are confusing to most users.

    Also, I agree it would be nice to have some more screen real estate instead of being locked in this tiny little dialog – when people are working with a dialog, that’s where their focus is, so why not use up most of the screen? A tab might be a good way to do that, but it might be nice to somehow differentiate it from tabs displaying external websites.

  15. J & L says:

    For the benefit of the new Firefox users, and that’s the name of the game, we need to do everything possible to be instructive and intuitive. We need a bullet description, a quick recommendation, and a visual up front. A click away we need in-depth descriptions, maybe more visuals, and compatibility details. We most clearly need to know what is “recommended,” what is not, and why not. Why list any add-on incompatible with 3.1.X when 3.5.5 is the going show?

    We need a quick, tested, sure-fire and uncomplicated way to download and add, and the same to get rid of one we thought we might like but did not.

    Why show a million downloads when three-quarters of them were uninstalled. The credibility of the high number is questioned as a “gee whiz” number that means little.

    At Tool/Add-ons, you’re very much on the right track. That’s the logical place for new users to go and we need more TLC. What’s the difference among the four headings? In “Get…” if FireShot is an Extension why is it under “Get Add-ons”? If not recommended, why five stars? Got room for the “Browse All…” and “Browse All Recommended…” with “Recommended” above the other one and BOTH links together at the top or bottom? None of the ones that popped up for me were recommended, so why do they pop-up? “Recommended” scrolls off the lower page and some will miss it.

    If I do a search for “color tabs,” should be search results be ordered on “Recommended” then alpha with other not recommended in alpha below recommended?

    In Plugins, what is “MetaStream 3 Plugin 3.2.2.26 MetaStream 3 Plugin r4,” what did I do to add it, and do I dare disable it? Firefox 3.6 may add a feature to monitor whether plugins are current, and perhaps that should be able to be checked from here.

    Thanks for undertaking this very important headache, and please thank Deb for getting it into the newsletter. We need to keep this in from of all users, in as many ways as we can think of, to get as many comments to you as possible.

    I am running out of space! Good Luck!

    • jboriss says:

      J & L –

      Thanks for all the useful feedback. A lot of your good points boil down to inconsistency in the current design. Rather than having a bad overall design, some of the systems that govern addons and the addons manager simply conflict. Your example of a five start add-on not being “recommended” is a good one.

      When searching, there should definitely be some indication if an addon is a “main” or very popular addon. Perhaps experimental and other addons should be shown, if not to all users to some, but this two should be indicated.

  16. Robert Strong says:

    “Allowing users the option to update add-ons manually, update only a particular add-on manually, and possibly to undo an update”

    Both “option to update add-ons manually, update only a particular add-on manually” are definitely already part of the existing design and I believe “undo an update” is already part of the existing design though not easily discoverable.

    btw: the exclamation points are to point out there is interesting information (red = bad and green = good) regarding this add-on and clicking it will expose that info. I’m all for making that clearer but I would hate to be inundated with all of the details available without having to select the add-on and I would equally hate not being informed that there is info of interest for an add-on or not being able to skim the add-ons for the ones that have this info.

    The Find Updates button *is* the manual check which it appears you plan on keeping around in some form or another.

    I’m totally on board with not bringing up ui to install updates (not required with the existing ui anyways), providing more detail for the selected add-on (something like Madhav’s design), and having a single / simplified view (something like Madhav’s design).

    • jboriss says:

      rstrong –

      You’re right about the update options. I more want to say that no one should be worried that this functionality would go away. Although the “undo an update” I didn’t know about.

      The exclamation marks mean you’re running an incompatible version. A selected and incompatible addon does say this, but nowhere near the icon nor in the same color, making it a bit tricky to realize the two are associated.

      I agree with your other points. Madhava was totally solving most of these problems years ago, I think there just wasn’t enough resource around to implement.

  17. Jake Munson says:

    I am one of your “experienced and especially technical users”. I would welcome a redesign of the addon screen, though I think it does a pretty good job already. I mainly wish there was more information available for each addon, as you described in your post.

    I’m also curious which future Firefox release you are targeting with this work.

  18. Takoosh says:

    I’d really love the addons manager UI to expose which addons are not successfully checking for updates, as I have a fair few installed from external sites.

  19. Snap says:

    Hello Boriss,

    Don’t take it bad, I find the Add-on Manager great and when I first read your post I thought “I hope she does not use bad faith to justify her work”.

    I was slightly shocked seeing your annotated screenshot. The categories are not confusing at all. If they are, this is because of the web vocabulary but users can easily see what is a “plugin” and what is not.

    Then, I did not see the green and red exclamation marks but of course this is confusing. If users want to know more about and add-on one could give a quicker access to the “about” box”, it may encourage extensions developpers to fill it.

    I totally agree with the automatic updates. The FInd Updates feature is a geek thing. There could be an option merged with “automatically update firefox”.
    But be careful with add-ons not hosted on AMO, this could lead to serious security issues if the domain name was bought by another person.
    Plus, sometimes updates remove or break features. Normal people are not “update addicted”, they just want things that work. It would be interesting to make the difference between minor and major updates, or better, let extensions developpers say in the update feed “this is a feature and/or bugfix and/or security update”. Then, one could decide “This extension works, I never want to update it” or “Only where bugfixes and security issues are available”, and so on. Undo an update is another interesting point.

    My two cents

    • jboriss says:

      Snap –

      I absolutely agree that linking to more information from the addons manager – about the addon at the least and possibly the author to – is very important. After all, we have AMO to provide all the additional functionality – including adding comments.

      I wouldn’t be too shocked that people find categories confusing. I’m not saying we should throw it all out, but consider especially the words “add-ons” and “extensions.” They really seem like synonyms. Even the developers I talk to sometimes forget which category is which. The redesign should make all the categories meaningful, both to people with a web vocabulary and without.

      Your comments about updates are very helpful. Having a way to undo an update, either by downloading an old version or temporarily caching it, could help users who find they don’t want an update. Updating non-AMO addons automatically definitely has some security implications – I’m not sure if we could do it automatically.

  20. Jean Couprie says:

    The addons manager should show the compatibility information of each extension : an update that just change it is not seen by the user. And the user does not update FireFox fearing to break his favorite extension…

    • jboriss says:

      Jean Couprie – You’re absolutely right – making sure the user can always be assured an update will not break their addons experience will be of great importance in a redesign.

  21. I just love the unicorn.

    -Max

  22. Tanstaafl says:

    The add-ons window needs improvement but I think in several cases you’re trying to solve non-existent problems. Whatever solution you add to “quickly locate a particular add-on by name or by type” for example will just make the user interface more complex and isn’t a frequent enough task to justify it.

    I hate the discover add-ons feature. What it pushes has no relationship to what add-ons I’m using or my personal preferences. I feel like I’m watching some corporate ad. If you want to “provide a compelling first-run experience to new add-ons users” the add-ons window is the wrong way to do that – leverage the startup screen when they first install Firefox instead. For example, bring up another tab for the Mozilla add-ons web site.

    The Mozilla add-ons web site is awkward to use, integrating it more closely is a bad thing.

    There are many extensions on http://forum.addonsmirror.net/index.php?showforum=2 that are not available on Mozilla’s web site. They’re just as trustworthy. If you really want to have users find/fetch add-ons via the add-ons window it would help if you supported some other locations. Even if its just a bunch of URL’s that they can click on.

    The “Integrated personas” support forces you to chose between a real theme and having a pretty background for the toolbar while using the default theme. Unfortunately the AnyColor add-on that used to let you customize your theme is abandoned. Some built-in solution that makes it easier to customize themes would be useful.

    A new Firefox user might use the add-ons window a lot for adding extensions but after you’ve gone through that phase my experience is you use the add-on window mainly to deal with problems due to Firefox upgrades or to try to find the right theme/personas.

    If you want to control what plug-ins get loaded you need to learn how to use about:config and what scanning settings to change. Even then you may find there is no setting to control that specific plug-in and you’re out of luck. It would be nice if all of this could be done from the add-ons window, hiding any messy details from the user.

    • jboriss says:

      Tan – Thanks for the feedback. Definitely no solution that made the task of finding an addon more complex would be considered. The idea is to simplify rather than make more complex.

      The reason for the current discover add-ons screen is roughly the same as a photo in a frame – it gives new users an idea of both what addons are and what they can do. For advanced users like yourself, this is unnecessary. But, those five “featured” addons get huge traffic from all the downloads.

  23. Snap says:

    Boriss, I’m glad to help !
    I noticed a problem when updating an addon in Thunderbird 3 (I think it happens on Firefox too). If the update fail (let’s say download error), there is no way to retry, so you have to restart the software, update, and restart again to apply it !

    I did not searched on Bugzilla to see if this is has already been reported.

  24. Snap says:

    Another bug, still in the addon manager of Thunderbird3: it is not possible to enable/disable an addon which has been updated and which requires a restart.

  25. Jean Couprie says:

    An other idea of improvement in the same direction of my previous post : allow for each extension the right to test or not to test the compatibility information given by the author. There are some extensions that allow this but generally the choice is not reversible : if you have suppressed the test you cannot go back by re-allowing the test. The choice at about:config level is too coarse : it applies to all extensions.
    There are 2 groups of authors :
    1) they are confident and put * in the compatibility for new versions of FireFox…
    2) they have been burnt once or several times and wait to have tested the new version of FF before increasing compatibility information… The users are in trouble if the new version of FF occurs during vacation of the author !
    As this new functionality (reversibility of choice) has not yet been implemented, it may be difficult to program !

  26. BW says:

    I’m one of those before mentioned GM users, who happens to be contemplating converting a GM script into a first class citizen… an addon.

    Now the current trend has been to integrate everything into the browser window via “about:” & “chrome:”. I guess I’m old school, I don’t like this new approach. I like settings windows to be their own windows. There is no transitory state about them. They are solid and clearly defined. How ever when they are embedded they become part of the browser. They loose there autonomy, they are now subject to the browser window. Of course the entire issue of autonomy is moot when you run an extension like userChrome.js ^_^

    And thats the beauty of Firefox, you can hack it to be and do anything you want. It’s so pliable. Part of what makes it so pliable is the plethora of extensions that expose it’s inner most secrets. You have FireBug, ChromeBug, MenuManipulator, Chrome List, DOM Inspector and thats just to name a few, there are countless others. Some just add a little functionality to another extensions some are full fledged extensions.

    Firefox empowers the user to solve problems they use to think they couldn’t solve. By sharing those solutions they turn a baron wasteland into a thriving community. But I’m preaching to the quire.

    I’d write more about how to redesign the window but I need to sleep (and prod the bad cat).

  27. iNsuRRecTiON says:

    Why is my comment not here??

  28. darkdruid99 says:

    nice article.. i using IE for my internet.. 🙂

  29. Berkemeijer says:

    Main issues:

    1. Add-ons slow down the start-up time of FF
    2. You don’t need all add-ons all of the time

    Solution:
    1. Make it possible to define an add-on as ‘latent’
    2. ‘latent’ add-ons will not be active after start-up
    3. Make a single menu of ‘latent add-ons’
    4. Clicking a ‘latent menu add-on’ makes it active

    Main problems solved

  30. Snap says:

    Berkemeijer, you underline a major problem with chrome: the need to restart Firefox in order to enable/disable/install/uninstall an add-on. It would be great if we could perform these actions dynamically.

  31. Jean Couprie says:

    Good new : In Bug 534090 Comment 15
    “Since as of 3.5 the default behavior for minor updates we now only notify when an enabled / compatible add-on will be disabled ….
    Bad new : In Bug 500303 Comment #6
    “The add-on compatibility check is best effort to cover the typical case of a user having only one profile.”

    I am a Security minded personal user : I run in non-admin account for my normal daily and web surfing activity. According the security sites advices, I divide by 4 to 5 the probability that malwares install with this. So I have 2 Windows accounts : administrator, limited rights. As many users have chosen Firefox instead of IE for security reasons, many of them should also have this 2 accounts and cannot benefit of the compatibility notification (“the typical case” has low probability except for very basic default users)… And more, my limited account has 3 profiles : 1 normal surf with strict security options (I cannot register to AMO because I don’t see the anti-bot image to copy), 2 default options (in case 1 is too strict, I can see the anti-bot image) and 3 more lax for some applications. They have different extensions installed.

    As Far As I Know, presently the extensions are installed in each of the profiles (probably for write rights), if you keep this it is very difficult for a program to access and test the install.rdf in each Windows account and each of its profiles. Is it possible, at installation or update times of extensions, to create and update a database (or a file or a repertory with 1 file per account for write rights) duplicating the informations : Windows account, profile name, reference (“name”) of the extensions, min/maxversions now included in install.rdf ? A general test would be possible in this case. There is still a problem : What to do if an extension exists under 2 versions in 2 profiles, one being compatible but not the other !

  32. nice info ..
    very informative ..

  33. JIMMY says:

    @yerrboiJOSEPH I found my victim http://t.co/gK4uFGIz

  34. Nigelle says:

    Boriss or Jennifer Morrow

    Are you still listening to this blog ?

    I think that you are missing priority 0 the up-most level that is to work well, security and clean system wise : a way to definitely and completely clean the PC from an outdated or unwanted extension !

    For example I have :
    -1 extension that say : xx has been uninstalled restart immediately and keep saying this if I restart.
    – extensions in disabled state with an uninstall button, if I click on it, they ask to restart FF after restart nothing is changed !
    -1 extension in disabled state that still call its mother site, as the certificate is outdated the call crash… This is a security exposure !
    – extensions in disabled state without an uninstall button.

    We need a way to force complete suppression of these garbage.

Trackbacks for this post

  1. Redesigning Firefox’s Addons Manager - Donna's SecurityFlash
  2. Redesigning Firefox’s Addons Manager - Donna's SecurityFlash
  3. Refonte de la gestion des extensions de Firefox – Philippe Scoffoni
  4. Mozilla Project Weekly Status: November 23, 2009 « The Firefox Extension Guru’s Blog
  5. Mozilla Project Weekly Status: November 30th « The Firefox Extension Guru’s Blog
  6. Relocating Firefox’s Add-ons Manager « Boriss’ Blog
  7. Customization Chaos « Thans Gedanken und so weiter
  8. Using Amazon’s “Mechanical Turk” for user research « Not The User’s Fault

Comments are now closed for this article.