After reading and responding to many comments over here and elsewhere, I've been persuaded that my plug-in rant oversimplified some, that it was too "black and white" and didn't account for several legitimate approaches to browser integration.
(Note: I'm not going to discuss what Firefox should or shouldn't be doing about unrequested or unwanted integrations. My concern here is not how users defend themselves against those software installs. My concern is what is and isn't appropriate behavior on the part of the software making those installs. For the record, I support Firefox taking measures to alert users to changes made to Firefox by third party software. We do some of that today and we'll do more of that soon. If you want to talk about what Firefox should be doing with third-party installs, please take that to one of the other posts. Thanks.)
In my previous posts, I harped on "ask first" as the correct way for third parties to integrate features into Firefox. I was overly-focused on a few specific examples where I really do believe that "ask first" is the right answer, but "ask first" probably isn't the only legitimate approach and may even be the wrong approach in some cases. For example, when I downloaded and installed a software package called Adobe Flash Player, I clearly wanted the feature added to my Web browser. That's only way that the Flash Player works and that's the specific reason I installed it. Asking permission to integrate with the browser in a case like that is at best unnecessary and at worst potentially confusing to users.
If it isn't black-and-white-always-ask-first, if there is no one-size-fits-all approach to browser integration, then the question becomes: what are the range of acceptable practices and when to use which approach.
I've scoured the Web for a couple of weeks looking for any existing guidelines or best practice documents on this subject and while there are plenty of technical howtos for integrating third party software with Web browsers, I don't see anything covering the actual user experience of integration or offering guidelines to software vendors around what's appropriate and what's not.
Since that seems to be missing from the Web, I thought I'd take a stab at it. Stay tuned for follow-up posts where I offer my take on how vendors ought to behave when it comes to integrating their software with Web browsers.