Firefox 3.6 | First Look

After much delay, Firefox 3.6 Final has been released. The new version brings many new features with a major change in the way extensions are handled which will make the browser more secure. While the 3.5 to 3.6 update might seem small, it has quite a few new changes which makes this an important update.

Here is a video of the new features in Firefox 3.6, in HTML5’s video tag if your browser supports it:

This video requires a browser with support for open video:

or the Adobe Flash Player. Alternatively, you may use the video download links to the right.

Extensibility improvements

One of the biggest changes you might notice is in-built support for personas in Firefox 3.6 which means that personas can now be installed without the need for having the plug-in installed. Of course, if you already had the personas add-on installed you might notice nothing at all! With personas, Firefox can now easily be dressed with simple and light themes which change the looks of the browser without needing a restart. As stated before, this was earlier possible using the personas plugin but is now an integral part of Firefox 3.6.
Personas is an effort to simplify the process of extending and customizing the Firefox experience for both the developers / designers and the end-users. Another project which makes the development and installation of add-ons simple is the JetPack project. With the Personas and JetPack projects, a Firefox user can install extensions and themes without needing to restart the browser. Like Personas, JetPack is available for download as an add-on and will be integrated in Firefox in the future.
A popular misconception is that these methods of extending Firefox will replace the current and much more powerful XUL-based plugin system. As the developers of Firefox have said, this is just not true. However the need for add-ons to use the rather more complicated XUL-based system should be considerably reduced as the functionality of JetPack nears that of the native system. Unless the plug-in adds significant functionality which is not exposed by JetPack, most add-ons will hopefully use that.

Performance improvements

JavaScript performance in Firefox 3.6 has been improved, and operations such as Garbage collection have been optimized to make for a smoother experience. JavaSctipt animations in particular should now appear much smoother.
In Firefox 3.5 we got the new TraceMonkey JIT (Just in Time) engine which improved the performance of the browser considerably. However, while TraceMonkey was enabled (by default) for webpage content, it was disabled for any scripts which run in the extensions. The functionality in Firefox extensions themselves is coded in JavaScript and XUL so while the performance benefits could have become applicable for the browser operations themselves this performance boost was absent from Fx 3.5. In Firefox 3.6 the browser will come with the new TraceMonkey engine enabled for chrome content as well and people with many add-ons installed should see a boost.
Many other improvements have been made in JavaScript performance in this version, and many operations have been become speeder up by many times.
A new JavaScript feature has also been added which allows for running scripts asynchronously. While this won’t affect existing pages, it can be utilized by web developers to significantly improve a page’s responsiveness. A web application such as Google Wave could then perform complicated JavaScript operations in the background keeping the UI JavaScript responsive.

Security upgrades

Firefox 3.6 has upgraded many aspects of plug-in and add-on security in this release. One of the most important updates being the way Firefox can be extended by external applications.
Earlier versions of Firefox allowed for extensions to Firefox being made by directly adding files to the components directory in the Firefox folder. Such add-ons were installed by 3rd party applications to integrate with Firefox. Since these add-ons were not managed by Firefox, they could severely affect the stability of the browser in case an update to Firefox made them incompatible.
Firefox 3.6 will now also warn you in case your plug-ins are out of date ensuring that you have the latest and most secure versions of each plug-in. Earlier a user needed to check for plug-in updates manually.

More web standards support

Firefox 3.6 furthers support for HTML5 and CSS3 features. Some of the most important ones being:
  • HTML5 file API. With this web application will be able to process local files
  • HTML5 Drag and drop API. For the drag and drop functionality in Google Wave.  Future application could use this to allow you to drag and drop your images into the browser instead of using the file browse dialog.
  • Support for a poster frame in HTML5
  • Support for playing HTML5
  •  WOFF Font support
  •  New CSS support for background size, gradients and pointer events
  • tag. Poster frames allow the web developer to specify what gets displayed in the video element when it is stopped.
  • tag videos in full screen

Features! Features! Features!

Firefox 3.6 comes with many new small features which can make your web experience more powerful, such as  hiding the menu bar to save space — the menu bar will auto show when you use a keyboard accelerator — screen orientation aware web pages and add-ons etc.
While this may just be a minor update in the Firefox release cycle it brings quite a few new features, and for Firefox 3.6 users, this is not the end. A change is coming in the very way Firefox delivers new features to users.
This new pattern of releases has be misrepresented in many places as a dropping of Firefox 3.7 from the release roadmap, however it is not an abandonment of features, just a revamp of how they are delivered.
For any user, an update which improves performance and security without any visual or interactivity changes is not something that will alarm the user. Mozilla’s director Mike Beltzner equates this to finding out your car performance has increased significantly as result of a servicing. Nothing to be unhappy about and nothing that a user would mind.
However a changing the location of your gearbox, or painting your car pink are things you’d probably wouldn’t want done before being told first!
In essence, any update to Firefox which does not affect the way the browser looks or interacts with the user need not wait for a major version upgrade to be delivered. For example, Mozilla’s Electrolysis project, which allows plug-ins to run in a separate process is something which improves the stability of the browser — since plug-in crashes will no longer crash the browser — and yet the user need not be aware of anything more than the fact the their browser is working better.
Out of process plug-ins could then make it into Firefox as part of a 3.6.1 or 3.6.2, or other minor upgrade instead of waiting till 3.7. This could possibly delay the release of Firefox 3.7 as more testing will be required for the new feature, however 3.7 is not abandoned.
This release strategy might be adopted for future versions of Firefox as well.

Firefox 3.7 and beyond

So what can you expect from Firefox 3.7 and beyond? Some very interesting things are on the line. Firefox 3.7 has become quite famous already, many months before its release due to the visual revamp it comes with.
Firefox 4 is to come with an even bigger visual upgrade, as the browser will adopt a look similar to Chrome, and works towards this has already begun. In Firefox 3.6 you now have the option to hide the menu bar to save space, and Firefox 3.7 will come with a visual style which lies between the current and Firefox 4 styles.
In 3.7 the menubar will be gone, and the browser will adopt a more native look for each OS, with Glass transparency support in Windows Vista / 7.  By version 4 you will probably have a UI with tabs on top no menu bar, no bookmarks bar, no space wasted at all!
There are some features in works for Firefox which are very very exciting. Among those would be the new JetPack model for creating add-ons, however that is not it. Here are some of the features coming in future versions of Firefox which I find most exciting:
  • Multi-process plugins. Plugins such as Flash and Silverlight will run in a separate process than the browser, meaning that a crash of a plugin doesn’t mean the browser will crash as well. This might be extended to add-ons and Tabs too in the future.
  • Integration of Mozilla Weave with Firefox. Currently available as an add-on, Weave synchronizes your browsing history, your password, your bookmarks and even you open tabs so you can access them from any Firefox set up with weave.
  • Home Page. Firefox, starting with 3.7 will feature a new home page like the one in Chrome.
  • App tabs. With a growing focus on web application, app tabs will allow Firefox to recognize some tabs as application. Think of this as pinned tabs in Chrome.
  • New notifications system. While the notification bar is nice, it is quite flawed, as it has poor support for multiple notifications and it is difficult to get it back in case you dismiss it hastily.
  • Tab progress bar. Tabs will feature a minimalistic progress bar which will give feedback of loading progress. You can get an idea of what this will be like by installing this extension.
  • New updater. With a new updater for Firefox users will get better notification of new major Firefox releases. While this is something which doesn’t seem too glamorous, it means that more users will upgrade to newer Firefox versions faster.
  • New approaches to tab management. While Firefox might be good at handling tabs, the fact that any power internet user will need to install some or the other extension for the same means something is missing. Fortunately, the developers have some nice ideas.
Firefox 4 will be a completely new browser, and while many users might feel that the old design was better, this is where add-ons and themes come in! They are the biggest strengths of Firefox giving us the worlds most customizable browser.
While you patiently wait for the new Firefox versions to arrive you can stay ahead of the rest by downloading and using the Nightly versions of Firefox,, which as their name suggests are crated every night from the latest version of the Firefox code.
Note: If you are worried about doing important work on a potentially highly unstable browser, here is a small trick for you. You can actually run two version of Firefox in parallel by using a special commandline parameter. However this will require you to create an additional profile as the same profile cannot be used by two instances.
Launch Firefox with the commandline parameter “-no-remote -P”
You can do this by creating link to the Firefox executable file and adding the “-no-remote -P” at the end.
Here the “-no-remote” allows you to run multiple instances of Firefox (different or same version) on the same computer, and the “-P” launches the Profile manager which will let you create and select a profile to use with this instance.