BarCampBrussels – Firefox extensions

Here are the notes I used to give a short (and unplanned) talk at BarCampBrussels on “Firefox extensions – Mashing up the web”. Most of the audience were Firefox power-users but none had written their own extensions.

Getting started writing your own extension

Firefox extensions are written in JavaScript. The Greasemonkey extension is a great way to start as it avoids the steep learning curve of writing full blown FF extensions. Download an existing Greasemonkey script, write a few lines of JavaScript and you’ve got a working prototype. You can edit the scripts live (without restarting FF).

Things you must read

  1. Dive Into Greasemonkey
  2. Your First Firefox Extension
  3. Building an Extension

My experience of writing ViewMyCurrency

(I had no knowledge of JavaScript, XUL or extensions when I started)

  • 3 days to prototype the currency conversion function (without a GUI)
  • 3 weeks to produce a full-blown Firefox extension. Learning JavaScript, XUL, packing of extensions, versioning and writing build scripts. The XUL documentation wasn’t perfect but it’s getting better.
  • 3 months to produce user-friendly robust version. My extension is used by a lot of non-geeks. It took a lot of effort to get the extension to the state where things just work. By this point the extension was large and complex. JSUnit tests are used to prevent regressions.
  • Release your extension on https://addons.mozilla.org I got almost 2000 downloads in the 2 days I was on the “Recently Updated”
  • Help users give meaningful bug reports. In the beginning I lost a lot of time emailing back and forth to collect basic data on a bug. Now there’s a “Give Feedback” option in ViewMyCurrency which collects it all in one go.
  • A simple video demo is worth a thousand pictures.

Although unplanned the talk seemed to be well received. Next time I’d prepare a demo of XUL (using the real-time XUL editor) and make some graphs showing usage of ViewMyCurrency.

Anybody up for organising a BarCampLeuven?

 

Advertisements

5 Responses to BarCampBrussels – Firefox extensions

  1. […] I gave a talk at BarCampBrussels about my experiences of developing ViewMyCurrency. […]

  2. Simon says:

    BarCampLeuven… sounds interesting. Was talking with Bunker the other day when we came back from d.Construct in Brighton playing with the same idea. Something small on some location with free WIFI. Ask the Rega institute to sponsor the location and get a whole geeky student audience as an extra?

  3. Simon says:

    Maybe we could add a mapping weekend for Leuven at the same time? See http://www.openstreetmap.org for more information.

  4. Bunker says:

    I would be in and like we were talking about it in the car on the way back. We could probably pull that off to 🙂

    BarCampLeuven will rock 🙂

  5. […] BarCamp Brussels Firefox Extensions, post at Will Moffat’s site […]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: