Developed By:

Developed By:

Monday, June 23, 2008

Streamlined Firefox 3 makes browsing safer, more productive

Desktop users, developers, and reviewers all had their download managers aimed at the Firefox Web site Monday to grab Firefox 3 as soon as it launched and also help Mozilla set a world record. World record or not, the latest Firefox release is a world-class Web browser. It looks impressive, renders text and images better than its predecessor, and helps you browse safely. But while it delivers pages faster by cutting down crucial milliseconds, its memory footprint (in unscientific tests) is still as big as a yeti.

Feature-wise, Firefox 3 is a mammoth release. Mozilla claims the release has more than 15,000 improvements -- big and small, most under the hood but quite a few over it as well. Most of its user-centric features have been vetted through an extensive beta testing cycle and were mentioned in our review of Firefox 3 beta 4.

Some improvements are subtle. For instance, the process of saving passwords is much smoother and less obtrusive in this release. Instead of a popup, Firefox 3 now displays a bar at the top of a page that asks whether you want to remember a newly entered password. The bar doesn't keep the page from loading until it's answered or dismissed. If you deal with multiple tabs, you'll like Firefox's improved tab handling. Not only is tab switching smoother, but the "Open All in Tabs" option in the bookmarks menu doesn't replace open tabs but instead opens the pages in new ones. Also, when closing a browser window with multiple tabs, Firefox now offers to save the tabs before closing the window.

There are some major and interesting changes in the bookmark and history handling as well. In the address bar, Firefox 3 displays a star which will bookmark a page when clicked once, and on double-click will let you file and tag your new bookmark. Yes, bookmarks can be be tagged as well. Thanks to the clever new autocomplete feature, you can now use the tags to quickly find a Web site you're looking for. The new unified bookmarks and history organizer helps you import and export to and from other browsers, as well as save your frequent searches for quick access to your favorite sites.

Click to enlarge

Click to enlarge

Click to enlarge

Click to enlarge

Click to enlarge

Click to enlarge

Another improvement you can't miss is the new download manager, which can finally pause and resume downloads. When you right-click on a file in the download manager, it will offer to take you back to the original download page. If you're used to copy-pasting text from the browser window, you can now select multiple text ranges using the Control key.

When you install Firefox 3, which is as simple as downloading and extracting the tarball someplace like /opt and running the ./firefox script, it will check the existing plugins and only enable those that will work with it or have new compatible versions. To get more add-ons from addons.mozilla.org, use the new Add-on manager. It includes a new "Get Add-ons" option, which displays recommended add-ons and allows you to search for new ones, displaying descriptions and ratings for both, and install them with a single click.

Improved look and feel

Firefox 3 blends nicely into the GNOME Linux desktop under Ubuntu. That's because the release bundles four distinct new themes for Firefox -- one each for Linux (GNOME), Mac OS X, Windows XP, and Windows Vista. The theme influences buttons, windows, tabs, icons, and dialog boxes to make them blend into their respective platforms.

Firefox 3 incorporates the Cairo graphics subsystem and a new graphics layer built from scratch. This improves graphics and font handling to make Web sites look better than in previous releases, with sharper text rendering and better support for fonts with ligatures and complex scripts.

There are also a large number of behind-the-scenes CSS improvements in Firefox 3. I tested its CSS prowess via the CSS benchmark test, and it fared pretty well compared to Firefox 2.0.0.14. The test measures the time it takes a browser to render a locally stored page consisting of almost 2,500 DIV tag areas positioned by CSS. The plotted numbers in the CSS Test graph are average of five test runs, and show that Firefox 3 is more than 20 milliseconds faster than its predecessor.

No wonder then that Firefox 3 passes the Acid2 rendering test, and scores better than Firefox 2.0.0.14 on the Acid3 test.

Firefox 3 for developers

The release offers exciting new features for Web developers as well. For starters, Firefox 3 bundles APIs for simple open data formats called Microformats. These Microformat APIs can eventually be used to build add-ons.

With the world migrating from desktop apps to Web counterparts, Firefox 3 allows users to designate Web apps, such as Yahoo! Mail, for handling mailto: links. It also supports other protocols, such as webcal:, tel:, and fax:. Web developers interested in adding Firefox's protocol support to their Web apps can get detailed information from Mozilla.

Another features Web developers should look at is how Firefox 3 implements online and offline events from the WHATWG Web Applications 1.0 specification. Using this feature, Web developers can create apps that will work even when there's no Internet connection available by storing data locally on the user's computer and later synchronizing it with the server when the computer is back online.

Firefox 3 also offers a number of improvements to the Document Object Model. Speaking of DOM, I ran the W3C DOM vs. innerHTML benchmark, designed to find out which method of generating large amounts of content is fastest in the browser. Like previous Firefox releases, Firefox 3 works better with innerHTML, but I wanted the test to show the improvements in Firefox 3. I ran each method five times and used the average time for each method to plot the chart.

Similarly, there's quite a bit of improvement to Firefox 3's JavaScript engine as well as reported by both the JavaScript speed test and the respected SunSpider JavaScript Benchmark. I performed the JavaScript test 10 times for each browser, and used the average runtime.

Security-related improvements

Our previous review covered the improved security features in Firefox 3. In addition to its inbuilt security enhancements like disabling older, insecure plugins and disallowing add-ons that use an insecure update mechanism, Firefox 3 also relies on external applications and services to make sure you stay safe. On Windows platforms, it uses Vista's parental controls settings and also invokes the resident antivirus software when downloading an executable file. It also uses Google's malware site flagging to help you stay away from phishing and malware sites.

There are some subtle but important security add-ons as well, like the Larry extension. Larry checks sites for their security certificates, and if a site has one, Larry displays its content and what the site can do and can't do in easy-to-comprehend language.

To test the browser's security I ran a vulnerability test that scans open ports and determines what personal information a browser reveals while browsing the Web. Per the test report, Firefox 3 sends information about visited sites and "may also save" special cookies for directing advertisement or finding browsing patterns. In the exploits test, Firefox 3 was able to successfully defend against several known exploits. Firefox 3 also stood against various known vulnerabilities.

Memory matters

One area where Firefox 3 may not show a significant improvement compared to the last 2.x branch release is memory consumption. Mozilla says Firefox 3 is more memory-efficient than ever, with more than 300 memory "leak" bugs fixed and new features to help automatically locate and dispose of leaked memory blocks.

Firefox 3 beta 4 had a smaller memory footprint in a test conducted by Firefox developer Stuart Parmenter, who modified Mozilla's standalone Talos framework to run a stress test under Windows. MiningLabs replicated the same test with Firefox 3.0 rc3 on Linux and found that, contrary to Parmenter's results, Firefox 3 on Linux eats more memory than Firefox 2.

I used a more unscientific and manual method of measuring memory usage. I used Firefox 2.0 over Ubuntu on an Intel Core 2 Duo 4400 2.0GHz processor with 1GB RAM for a wide variety of tasks for more than four hours, then repeated the procedure with Firefox 2.0.0.14, the last stable release of the Firefox 2.x branch. I used the ps_mem script to measure memory every 15 minutes from a cold start. The result is plotted in the Memory footprint graph. As you can see, there was hardly any difference in memory presence between the two Firefox releases. But when it comes to releasing memory, Firefox 3 does so at a far better rate than the previous Firefox release.

In summary

Firefox 3 is a wonderfully crafted release. It has new features and improvements all across the board, from the user interface to processing CSS. The release pays special attention to security, and in keeping with the times allows users to replace desktop apps with Web apps for tasks such as replying to email. Mozilla has also added smart features to existing components, like the download manager, bookmarks and history organizer, and add-ons manager. Despite all the new bling, Firefox 3 isn't bloated, and in a variety of tests comfortably outperforms previous Firefox releases.

Mozilla wants to create a world record with Firefox 3. It couldn't have chosen a better release.