Updated: March 1, 2013
This may sound like a weird topic. And the answer is, plugins are not extensions, although this may be your first assumption. It's a fairly common mistake and quite understandable. While both fulfill a somewhat similar role in enhancing your browser experience, they must be categories in a different manner. Even Mozilla separates them.
Now, what do I want to talk to you about today? I want to give you a brief overview of what plugins are, how you can use them, enable or disable them, stay up to date on the security front, debug problems, and whatnot. This should be an interesting exercise, although most of you are already well familiar with the topic, so I apologize for being boring in advance. Now, follow me.
Open the Firefox Add-ons menu, or just go to about:plugins, and you will see several items listed. One of these reads Plugins. This is what we are all about. The exact content of the list will vary based on your setup, your operating system, and other factors. But what you will see is a list of external utilities that enhance your browser.
This is one of the interesting thing that separate extensions from plugins. Most often, the plugins are provided by third-party software to facilitate and add functionality between the browser and said programs. Extensions become a part of the browser itself and change how the browser behaves.
Let's look at the list above. For example, the Nvidia 3D Vision plugin allows you to utilize 3D acceleration in videos out there. This may be something you want or not, but it comes with the graphics drivers for your card. Shockwave Flash is the familiar one. Foxit Reader allows you to open PDF files directly inside your browser, and so forth.
All of these are supplies by these other vendors and may very well be closed-source. They will feature in the form of shared libraries or DLLs and will be loaded on demand into the browser's memory space, with all their goodies as well as possible bugs and security issues. Which brings about the question of need.
Some plugins may show up inside your browser without your knowledge. For example, install Java, and it will most likely add its own mark there. But perhaps you do not wish to have Java enabled in your browser, even though you want the framework. There are several ways to go about this, but you can just toggle the plugin state in the Plugins menu.
You can do this for convenience reasons, hassle reasons, performance, security, or else. Whatever you require to get the job down. The ability to selectively toggle the plugins on and off is a useful feature, because you can temporarily modify the browser capabilities without having to uninstall software. These changes require a browser restart most often.
Now, what if you have a dozen plugins installed. Well, you might want to keep them up to date, for a variety of reasons. Like actual compatibility, security perhaps, etc. In Linux, the management is fairly easy. You fire up your update manager and you get everything you want and need. In Windows, you must go manually about it, tough luck.
Still, the process is somewhat streamlined. If you look at the about:plugins page, it does read Check to see if your plugins are up to date. If you click on this link, you will be taken to an automatic check page, which will inform you whether your plugins are outdated or even known to have serious bugs or security problems. The next logical step is to download the missing software and restart the browser afterwards.
Most notably, Firefox will automatically blacklist and disable extensions and plugins that are considered a serious stability or security risk. You can manually override these settings or update your software to remedy the situation. Again, this is mostly true for Windows, because of the cumbersome manual update procedure.
Furthermore, there's the question of how you treat plugins from the security perspective. Let's focus on Microsoft EMET, for a moment. This super-awesome program can stop a whole range of memory violations from becoming an arbitrary execution of code or an escalation of privileges. Now, in theory, you might need to isolate different plugins separately, because they are essentially third-party components. However, they are all called and executed through the plugin container, which makes them subject to the same restrictions as the browser and the container. Therefore, limiting the firefox and plugin-container binaries is sufficient.
Now, let's assume you have issues with your browser. Slow startup time, memory leaks, crashes, other weird behavior. You may want to examine your Add-ons, including plugins. The best way to do this is by disabling all of the plugins and loading them one by one, to see which one, if any triggers a potentially bad state. Then, remedy the problem with a proper update or by keeping the plugin disabled. This goes back to selective toggling on/off the browser plugins.
There you go. Hopefully, this little guide sheds some light on how to properly manage your plugins in Firefox. The fact they are also Add-ons, and the fact most people use the word extensions to categorize all add-ons, including themes, scripts and, last but not the least, plugins themselves, does create a bit of a confusion, especially among the less skilled users.
If you want your browser to be in a tiptop shape, then you have a range of tools and options before you. How to properly debug, selectively disable or enable specific plugins that you require, how to check for up-to-date versions, examine the behavior of your plugins, and finally address potential security and performance problems.
That would be all this time. See ya around.
The plug image is in public domain.