Mozilla has announced the official release of Firefox 3.5, the next major version of its popular open source Web browser. The new version boosts performance, introduces useful new features, and delivers strong support for emerging Web standards.

Mozilla aims to "upgrade the Web" by improving the Firefox user experience and expanding the range of tools that are available to Web developers. The company boasts that Firefox 3.5 includes over 5,000 enhancements that span nearly every aspect of the browser's functionality and behavior. Among the most compelling advancements in this release is support for the HTML 5 video element, which enables native video playback in the browser without requiring proprietary plugins such as Flash.

We got our earliest insight into the roadmap for the new version shortly before the release of Firefox 3.0 last June. Mozilla was planning to adopt a more incremental development model and tentatively aimed to have a 3.1 release ready to ship in late 2008. As the roadmap increased in complexity and more sophisticated features began to land, they pushed the planned release date back into mid-2009 and changed the target version number to 3.5. That version arrived this morning, after 12 months of intensive development.

Although it is not as radical as the broad architectural overhaul that was undertaken for the 3.0 release, the development effort for 3.5 has brought many important changes to the browser. It includes a lot of features that leverage the 3.0 architectural enhancements and it also includes a lot of features that were originally planned for 3.0 but were deferred for various reasons.

Privacy improvements

Firefox 3.5 includes a new private browsing mode that allows users to traverse the Web without leaving behind a trail that can be recalled later in the browser's history, cache, and cookies. This feature is becoming nearly ubiquitous in mainstream browsers as it is already included in Safari, Chrome, and Internet Explorer 8. Mozilla's implementation is reasonably reliable and appears comparable to its competitors. We first looked at the private browsing feature when it landed in beta 2.

With a stroke at the keyboard, users can erect stiff privacy barriers that will prevent their Web surfing habits from penetrating the browser history and defiling the sensitive auto-completion system with incriminating data where it might arouse the suspicions of subsequent users. Thanks to Private Browsing in Firefox 3.5, your friends and coworkers will never discover your unwholesome obsession with the hot pussies in the Cats-n-Racks section at CuteOverload.com.

When the user enables private browsing mode from the browser's Tools menu, the browser will end the current session and start in private browsing mode. While it is in this mode, the browser will function normally but the data that it tracks will not persist. When the private browsing mode is disabled, the user's previous session will be reloaded and there will be no sign of the activity that transpired during private browsing. This feature is typically referred to as pr0n mode, but Mozilla points out that it has broader uses and can also function well as a "guest" mode in situations where users allow their friends to make use of their browser.

One downside is that the browser doesn't provide a convenient way to perform private browsing alongside a regular browsing session. Google's Incognito mode, which enforces privacy on a per-window basis, doesn't suffer that particular limitation. If you have a lot of tabs open, waiting for your regular session to reload at the end of private browsing in Firefox 3.5 can be a bit painful.

There are also several other features that give the user more control over privacy, such as support for clearing recent history and a "Forget This Site" capability that allow users to purge history and data pertaining to specific fetish porn websites.

User interface improvements

Mozilla was planning a few highly ambitious user interface changes for this release, but they were discarded as development progressed. Tab switching, activated with ctrl+tab, was going to be altered dramatically, both in behavior and appearance. The first alpha release included an experimental visual tab switcher that displayed thumbnails. It also changed the tab switching order so that it was based on last use. Both of these changes were dropped in later prereleases and are not included in the final 3.5 release.

Mozilla designer Atul Varma wrote a blog entry last year in which he described some of the usability failings of the experimental tab switcher and acknowledged that it was harder to use in many cases. It's possible that we could see some of the underlying concepts resurrected in future releases with a better approach.

The plans for major tab changes were dropped, but the new release does include a few subtle tab improvements. By default, the browser will now display the tab bar when there is only one tab. This change will improve the discoverability of tabbed browsing and will also be welcomed by users who find it jarring when the tab bar pops into view after the addition of a second tab. Another subtle change is the inclusion of a button in the tab bar that can be used to create a new tab.

Support for moving tabs between windows is better in this release. In Firefox 3.0, dragging a tab from one window to another would cause the associated page to reload itself upon arrival in the new window. In Firefox 3.5, you can now drag tabs between windows without disrupting page state or suffering a forced refresh. The 3.5 release also adds support for snapping tabs out of the browser to create a new window. Dragged tabs are accompanied by a translucent page thumbnail that makes it easier for those of us with short attention spans to remember exactly what they are dragging.

Session management is better in 3.5, too. The 3.0 release introduced support for reopening closed tabs. The developers have expanded on that in 3.5 by adding the ability to reopen a closed window. Crash recovery is also handled better now. When the browser is restarted after a crash, the user will be presented with a session restore screen that will show them the contents of their session and allow them to select which tabs should be restored.