One of the features of Firebug we like least has been the enable/disable stuff. Joe Hewiit’s original 1.0 Firebug had a pretty simple blacklist scheme for disabling Firebug sites; mostly users thought it was fine. But when users tried Firebug 1.1, the impact on performance of the
eval() debugging features was too large, especially for users focusing on CSS or HTML. But the biggest problem wasn’t folks using any particular debugging feature, it was users of heavy AJAX apps like gmail.
For Firebug 1.2 we added more options to control what parts of Firebug were active. These enablement controls were hard to understand and very unpopular. But no one was willing to give up their favorite setting either. And at least you could blacklist gmail to reduce the pain of having Firebug installed in your browser.
Firebug 1.3 made some UI improvements that helped make the controls easier to learn. But the real innovation in 1.3 was the introduction of suspend/resume. This was a global off/on switch which was simple and effective.I briefly experimemented with an ‘auto-suspend’ feature but could not get it to work before we closed 1.3.
In Firebug 1.4 we started with another round of fine-tuning. Then Steve Souders pushed for a more aggressively simplifed approach.
So for 1.4 we have ripped out all of the per-site controls and even the manual suspend/resume. Everything is now controlled by auto-suspend and the panels have only “enabled” or “disabled” settings. In the new model, if you can see Firebug, then its active. If you can’t it’s not.
We hope and believe that the new solution will be very natural: you’ll open Firebug and start working. If you don’t want Firebug on a site, close it. If you have Firebug open on a site and change tabs, Firebug will suspend. If you go back the the page you had Firebug open on, it will be open again and resumed. If you really want to have Firebug running on a tab that’s not on top, open Firebug in a new window (so you can see it, then it’s active).
The Console, Script, and Net panels will be disabled by default when you first start Firebug. You can enable them if you need them; once you do enable them they will be enabled for all sites you open Firebug on. You can’t mix and match sites and panels like you could in 1.3, but we think this is a rarely used feature we can live without. There is one surprise: enabling the Console also enabled the Script panel. We hope to fix this in Firebug 1.5.
The new activation is in Firebug 1.4a14 if you want to give it a try.