Here are a few ideas from the experts:
To prepare for extension developing, it is important to set up the development environment. A clean (new) installation of Firefox, with a clean (never used) profile, can make debugging much easier.
Some preferences make extension development much easier. These, used in conjunction with Firefox command-line options, make testing easier.
A number of extensions have been created just to help others create their extensions. One notable extension is the Extension Developer extension.
Firefox has a debugging console that is displayed when Firefox is started with the -console option.
Developers can set an environment variable to allow multiple instances of Firefox to run. Normally, Firefox runs only one instance (copy) at a time.
Programs and objects are uniquely identified using a GUID. There are programs to create GUIDs and websites that will create GUIDs online.
Understanding Firefox command options is important for developers. Having shortcut icons on the desktop preconfigured for these options lets you easily launch Firefox with an option.
Extensions have a basic arrangement and names for the extension's folders. Following these conventions makes an extension's development easier.
The chrome.manifest file is new to Firefox 1.5. This file is designed to replace the contents.rdf file with a file that is easier to work with.