Whenever we buy software for our computers, we always want the one that has the most features that are already included. But oftentimes the problem with software is either they don’t have the right functionalities that you are looking for or they have too many features that it is impossible to find the one that you are looking for quickly. In order to customize the look and feel of their programs, software makers have allowed the use of plug-ins or add-ons.
Plug-in and Add-on are two terms that are pointing to the same functionality; they are simply extensions that extends the usability of the program. It just depends on the software maker on what to call the software extensions of their programs. These extensions could be made by other companies, individuals, or by the software makers themselves.
Plug-in is the term that is usually used when referring to third party software that is meant to interact with a certain program. Take for example your web browser; you would need to install a plug-in called flash player in order to play videos. Flash player is not native to any browser but is made by a separate company altogether. It is also compatible with all of the popular web browsers like IE, Firefox, and Opera.
An Add-on also extends the functionality of a certain program but they are usually meant to function on a certain program. Taking the web browser for comparison, add-ons that are meant for Firefox would only work with Firefox and so would for other browsers. These are usually not full blown software but are simply pieces of code that you can use to modify the interface. The most common add-ons for browsers are toolbars which take a little bit more space and give you instant shortcuts to certain online services. Add-ons are also very prominent in online games like World of Warcraft, where players who have a little know-how can create their own add-ons to help other players.
The separation between an add-on and a plug-in is not really that clear. They are both made to do specific functions that are suited to a certain user’s preference. The primary reason why these codes are not embedded into the program in the first place is that they are not really that essential and while some people might appreciate having that, others might not and find it a nuisance. These are also tools that a software maker can utilize to motivate the members of their community to get involved in improving the software.