Firefox Browser Goes Mobile

Mozilla late last night posted the first beta release of Fennec, its mobile version of the Firefox Web browser.

The Fennec 1.0 beta 1 release currently is only available for one mobile device, the Nokia N810 Internet Tablet, which runs Nokia's Maemo open source operating system. But beta versions have been released for Windows, Mac and Linux desktop PCs, to let users and developers experiment with the new application and start building the all-important Firefox plug-ins.

One powerful newly added feature is the TraceMonkey JavaScript compiler, which promises to dramatically speed up many aspects of mobile browsing. Unveiled last summer, TraceMonkey is the same engine used in the latest beta versions of desktop Firefox.

The beta release notes are available online.

Besides the new JavaScript compiler, the beta version also introduces:

- faster application start-up time.

- faster panning and zooming.

- improved bookmark managing and new bookmark folders.

- plug-in support.

Mozilla released the Fennec alpha version for the Nokia tablet last October. In February, it released a Windows Mobile preview (or "pre-alpha") version that almost immediately ran into major problems, apparently because of the way Windows handles memory allocation.

TraceMonkey is an evolution of Firefox's SpiderMonkey JavaScript compiler, and was unveiled last August for the desktop browser. TraceMonkey adds a technique created at University of California Irvine that in effect greatly streamlines the compilation process, leading to huge performance gains for JavaScript. The gains are so great that Mozilla developers have suggested that JavaScript will be able to compete with native code, and even eliminate the need for proprietary plug-ins, such as Adobe Flash, that are needed today to handle highly interactive Web-based graphics content.

TraceMonkey is only one part of the recent performance optimization work found in the beta release. The developers have been looking widely and deeply into making the browser as fast as possible at all levels. Nearly all of the improvements for Fennec on Maemo are directly applicable to Fennec on Windows Mobile, according to Mozilla developer Mark Finkle, writing in his blog. One area is an improved rendering engine, resulting in faster pageload times and greatly improved panning.

Fennec makes use of many, if not most, of the same underlying components as the desktop browser. But creating a truly mobile browser experience has required an in-depth re-examination of how those components work and interact, and a completely redesigned user interface.

One area still being worked on is the overhead demanded by XPConnect, which is the bridge between JavaScript and C++ code. For mobile devices, this overhead is "non-trivial," Finkle writes. Mozilla is reducing the number of XPConnect calls, and exploring the use of code, called "quickstubs," that "short circuits the XPConnect bridge, making the call faster," according to Finkle.

Under the covers of the visual user interface, a lot of invisible work has been done, Finkle says, such as getting the Flash plugin to render on the browser's canvas display surface, or allowing the browser to pan any scrollable list in the user interface's chrome -- the graphical control elements such as the window frames, menus, toolbars and scroll bars in the browser's border.

Visible user interface changes include a slightly larger default font size, for easier reading of text during auto-zooming, and new bookmark features.

The bookmark system was identified as part of an important performance drag. During the initial startup of the browser, the Places system (bookmarks and browsing history) is initialized, and then Fennec loads the bookmark list. The programmers found there's actually an intermediate initialization step. And the bookmark list loading time is further slowed by accessing, for each bookmark, the bookmark system for information that's used to display the final list.

"In a simple test using just 10 bookmarks, it can take almost 3 seconds to load the list," Finkle wrote, "Luckily, we were able to avoid some of the calls to the bookmark system and have improved load time by almost 40%."

Vendors are racing to create better browsers for the mobile Web. Microsoft will introduce as early as mid-2009 its Internet Explorer Mobile 6, the company's first mobile browser based on the rendering engine in desktop IE 6. Other mobile browsers are available from Nokia, Skyfire, Opera Software, Apple and Bitstream.

This story, "Firefox Browser Goes Mobile" was originally published by Network World.

Note: When you purchase something after clicking links in our articles, we may earn a small commission. Read our affiliate link policy for more details.
Shop Tech Products at Amazon