Besides its basic configuration panels, Firefox offers more tweaking options by manually editing a sort of internal registry (in some ways similar to Windows' registry, but without a hierarchical organization). You can access and edit all possible configuration keys by typing about:config in the address bar. If a specific key doesn't exists already, you can create it using the context menu.
Here's a few key that I always change :
- network.prefetch-next
Firefox allows web pages to mark some of their links as prefetch. When such a link is encountered, Firefox will start loading the target URL in the background so that in the event that you click on it, all the data are already in the cache and loading is faster. Now, do you really want your browser to silently fetch stuff at the order of any page without you even knowing about it ? Do you want it to use your bandwidth loading stuff that you are likely to never use ? I don't, so I set this value to false.
- config.trim_on_minimize
Firefox can take up a lot of memory. If this value is set to true, Firefox will release most of the memory it uses when it is minimized. It's supposed to make things a bit slowed when re-opening Firefox's window, but I haven't noticed any slowdown.
- network.http.pipelining and network.http.proxy.pipelining
Pipelining is a HTTP 1.1 feature that allows a browser to request several files sequentially without waiting for the first one to be received (and as such greatly boosting page loads). Supposedly some sites might break if you enable this, but version 1.1 of the HTTP protocol has been around since the end of the 90s, and I haven't noticed any issue either (but I did notice quite a speed up on some sites). So set both of these to true.
- network.http.pipelining.maxrequests
This works with the previous pipelining settings, and indicates how many files can be resquested sequentially. 8 seems to be a good value for it.
One nice thing about Firefox is the possibility to extend it with plugins. There are now quite a lot of them around, but some of them can make your life a lot easier. Here's my top 5 favorite ones:
- Firebug
No Web developer can live without this one: it's a complete and very polished web debugging package. Explore your HTML code and watch what CSS properties are in use (and edit them on the fly to see how the page changes). Debug Javascript with breakpoints and step-by-step execution. Watch how the browser fetches the images and files that make up your web page. It's all there and more. How did I ever live without it ?
- Sage
Once you are used to RSS feeds to keep track of your favorite programs, you can't go back. There are a million RSS reader out there, but Sage has the advantage of integrating nicely into Firefox by using normal bookmarks to track feeds and a sidebar to show them. It's simple, clean and elegant.
- Dictionnaries
Few people know that you can have a live spell checker inside Firefox in many different languages (even though it was a touted feature when the 2.0 version was released). Those offered here are not perfect but they'll greatly improve the quality of your posts in blogs and forums.
- DownThemAll!
If you need to download a bunch of files from a web page (images, articles, etc.), this is the extension for you! It's highly configurable and you can set it up to check for certain file types or follow certain links.
- AdBlock
This must be by far the most popular Firefox extension. Firefox has a simple built-in image blocker but AdBlock offers a lot more options and capabilities than just blocking pictures. However I do not personally use it because ads are what make the web mostly free, and once in a while I actually find a valuable site with the help of a good ad. But for those who are too annoyed by it, this is the ultimate solution.