Mozilla Corp. is gung-ho on support for offline applications, but it's not committed to using the just-announced Google Gears technologies in the next Firefox, an executive of the open-source developer said today.
There's no question that Firefox 3.0, scheduled to launch later this year, will work with offline applications, said Mike Shaver, Mozilla's director or ecosystem development. What's up in the air is whether Firefox will use Gears' three application programming interfaces (APIs) to build its support, or whether the browser will rely on the work already done by paid and volunteer developers.
Gears' APIs include LocalServer, a specialized cache that intercepts an offline Web application's URL requests and serves them from the user's own drive; Database Module, an SQLite-based database that stores the user's data on the local machine; and WorkerPool, which runs scripts in the background to keep the browser or Web app interface responsive.
Shaver, like many developers in the first days after Google's announcement of Gears, was enthusiastic about its potential. "Gears is a set of capabilities, three powerful primitives being added to the Web 2.0 platform," Shaver said. "There haven't been a lot of big flag days in the Web, [but] Gears will create an explosion of Web apps, in a good way, in a creative way. It's the way forward for the Web."
Yet he wasn't as sure how Gears would fit into Mozilla's own plans for Firefox 3.0. A lot of offline app work has already been done -- enough to demo the browser's offline app support -- and Mozilla won't discard that work, even though Google payments to Mozilla make up the bulk of its income. In 2005, Google paid Mozilla $52 million for setting Google as the default search engine in the FireFox browser.
"We're talking to Google engineers and looking at how these two models -- ours and theirs -- compare. This is in the open now, and going forward we'll see what we can learn from each other," Shaver said. "But there's a lot of work that's been done already [on Firefox 3.0], and we're not planning to throw that work away."
And at least one of Gears' APIs looks too ambitious to Mozilla. Developer Module, which uses the open-source SQLite to store unstructured data, is a "bold" move, said Shaver. "Using SQLite, that's the hardest one for us to figure out [if it will work with Firefox]."
Firefox 3.0 already uses SQLite, but for "Places," the revamped bookmarks and history feature. Shaver said the Database API was the least likely to be adopted in Firefox 3.0. Instead, according to planning documents on the Mozilla site, the new browser will rely on DOM Storage, a Web Applications 1.0 specification that exists in the current Firefox 2.0.
In other places, Mozilla and Google are on, or near, the same page. "Our ideas on a local server are not conceptually very different from Google's," said Shaver, referring to Gears' LocalServer API.
"We have to put a lot of thought into this," said Shaver. "Actually, we're in a perfect situation. We can watch people experimenting on the leading edge [with the APIs], see what the performance characteristics are." And while there are benefits to standardization -- for Firefox to use Gears' Database Module API, for instance -- "you also want to have experience with it before you make your decision," Shaver said.
"The nice thing about Gears is that it's pretty much a la carte," he said. "It's like 'if you don't use it, you don't pay for it.'"
Bottom line, said Shaver, Mozilla doesn't feel a rush to adopt Gears, whether in those parts or as a whole. "We [Google and Mozilla] are agreeing on some things and not on others," he said. "We want to figure out if there's a way to combine their APIs with what we have, so we're not bundling all those components.
"[But] we're not in any hurry to get there. The current model of the Web is much more collaborative rather than competitive," Shaver concluded. "If we all can get the core primitives and focus on what we can't do today, we can see what we can add to the stack and then get a universal buy-in on those."