GSoC/GCI Archive
Google Summer of Code 2009

Mozilla Project

Web Page:

Mailing List:

The mission of the Mozilla Project is to preserve choice and innovation on the Internet. We are the producer and provider of the award-winning Firefox web browser and Thunderbird email software. We are an advocate for open standards on the Net, and provide tools for developing standard web content. We also provide software development tools used by hundreds of free software projects worldwide.

SoC opportunities are available to work on Firefox, Thunderbird, Camino, SeaMonkey, Fennec (mobile), Rhino (JavaScript engine in Java), our IT infrastructure, localization and other areas of  the project, using a wide variety of technologies. There's something for everyone.


  • HTC "click wheel" integration The directional pad on the HTC Touch Pro (and other phones) is touch sensitive. That interface could be used to control zooming in Fennec.I can also guarantee support for Samsung Omnia.
  • Implementing new EcmaScript 3.1 features in Rhino The aim of this project is to investigate and begin implementation of the new EcmaScript 3.1 language features in Rhino, based on the latest version of the EcmaScript 3.1 specification.
  • Improving the Register Allocator of Trace Monkey The objective of this work is to augment the TraceMonkey just-in-time compiler with a puzzle based register allocator specially tuned for just-in-time compilation. We expect that our new allocator will produce better native code than the current register allocator used by TraceMonkey, without compromising its compilation speed.
  • Updating Camino's Address Bar The address bar in Camino is beginning to show its age. I propose to update it this summer with the following changes: • Inline autocomplete • Autocomplete from local bookmarks • Tweak layout of autocomplete list (see screenshots) • Implement a sorting algorithm for autocomplete results similar to Firefox's frecency algorithm • Integrate with online bookmarking sites • Tag search
  • Web pages over rsync My proposal is to implement the "Web pages over rsync" idea. This idea has great potential to revolutionize the way the Web is used in large organizations and ISP's, especially for networks where bandwidth is severely limited. Basically when a Webpage changes, the proxy / client would receive the delta instead of the complete page, saving precious bandwidth. A proof of concept proxy already exists, and my proposal is to extend and improve that proxy and write a Firefox extension to use with it.
  • Weighted & GSLB GeoDNS This project aims to build upon the GeoDNS infrastructure to provide better a load balance solution by implementing per resource weight so that the DNS server could return answers that result in a better sharing of load among the mirrors.