A Tutorial by Manish Singh
We propose a two part tutorial, the first covering the basics of writing an
extension for Mozilla-based applications, and the second walking through a
non-trivial extension which interacts with network services.
Extensions are a powerful way to extend and enhance Mozilla-based applications
such as Firefox, Flock (which Ian and I work on), Epiphany, Songbird, etc.
The technology behind them is also useful for developing standalone
applications with rich web and network access, via the XULRunner platform.
The first, basic tutorial will cover:
* XPCOM: The Mozilla component object model
* XUL: The UI language
* Bundling and distributing and extension
* Things to watch out for to prevent exploits
The more advanced tutorial will cover:
* Interacting with a web service
* Data storage
* More complex UI usage
* How to target multiple Mozilla-based applications
* Security implications of dealing with web services
Both tutorials will guide the attendees through building a working extension.
The advanced tutorial will involve some Flock specific features, but the
extension will still work in Firefox, and only enable some things if it is
run under Flock.
More information on what Flock is all about is available at
Attendees are expected to have some programming experience, preferrably in
languages shouldn't have too much trouble picking it up. People attending
the advanced tutorial should have some prior GUI and network programming
experience as well.