Jan 032008

As the documentation cycle for Firefox 3 starts winding down, I find myself thinking, “Okay, I know there are places where these docs are less than helpful, but I don’t really know where they are, since I’m not in the trenches furiously trying to update add-ons to work with Firefox 3.”

So here’s my poser for you: if you’re working on updating an add-on to work properly on Firefox 3, what problems have you run into in terms of finding the relevant documentation or comprehending the documentation that’s there?  Where are we missing sample code where it seems like any half-witted buffoon would know that documentation should have sample code?

Given the huge amount of documentation that’s been written anew or overhauled for Firefox 3, it’s a given that stuff has been missed or done less than ideally.  But it’s also a given that I’m probably not aware of many of the deficiencies.  So if you’re banging your head on your desk or cursing my name, let us know about it!  We can’t fix it if we’re unaware of the problems, so make sure we’re aware of them.

If you like, you can do that by simply commenting on this blog post, but if you really want to make my day, you can file a bug report against MDC’s “Documentation Requests” component.

You can also infer from this request for your input that we’re looking forward to seeing more extensions updated for Firefox 3 compatibility!

 Posted by at 12:12 PM

  4 Responses to “Updating add-ons for Firefox 3: Where do our docs blow?”

  1. I believe that parts of the Places documentation might be documenting what the interface claims, not what was actually implemented. Not certain on this though, since I was actually trying to use it a while ago before giving up (Places didn’t do what I wanted it to). Also mentioned this to mfinkle in #extdev.

  2. In my experience the documentation for fx3 is fine. There’s a standardized feel, examples (that work!). No problems here.

    What’s much more difficult is setting up a new extension, learning the basics. When I started coding in Mozilla a few months ago I had great difficulties: The examples were outdated (often simply didn’t work in fx2), didn’t apply if you weren’t using them in the default way. Say, if you wanted to create a sidebar, like I did. So in order to make things work, or even appear in fx I started looking at other extensions, sometimes only learning much later what was actually going on or that half the code wasn’t even needed.

    If you’re new to hacking Mozilla try to create and manipulate a Custom Tree View, it’ll make you pull you hair out.

    XPCOM still is a magic box to me: you use but you don’t really know what’s going on.
    Stuff like: var prefs = Components.classes["@mozilla.org/preferences-service;1"]

    is really scary if you’ve never used it before. (The above example, btw, is the successful end result of quite some trials and errors, there was no complete example like this…)

    Actually this wasn’t my first try. All earlier attempts at creating a sidebar extension were just too frustrating to continue. That was before there was a Wiki on DevMo.

    I realize this is slightly off-topic. But hopefully some good comes from it.

    All you developers who have had trouble achieving what you wanted try to integrate the information you were hoping to find on DevMo. Give something back to Mozilla! I spent quite some time updating the Storage (mozStorage) pages there. Anyway, thanks Sheppy for the great work!

  3. Please improve documentation for dynamic bookmark containers.

    nsIRemoteContainer no longer exists (bug 382877), this page should probably be deleted.

    This page refers to nsIRemoteContainer, and also talks about an supported “mode” near the bottom, if this will not be supported by Firefox 3 final, can this be clarified?

    This section should likely point to the new documentation:


  4. Whoops, that was supposed to read “an unsupported mode”. I’d be happy to help with all this, /msg me (fR) on IRC.