Add-ons: To SDK Or Not To SDK

Myk Melez’s recent post on the Jetpack project 2011 roadmap is timely. Firefox 4 final is approaching fast. Quite a decent percentage of add-on authors have updated their add-on already. For those who have not, I imagine some are wondering whether they should migrate from the traditional XUL add-on approach to using the SDK. It’s worth noting that there are already many SDK add-ons out in the wild, most conceived as new ideas.

The Add-ons Wall

Myk’s post is long but well worth reading fully. However, I want to hone in on this part related to why the SDK is not good for updating traditional add-ons:

First, but definitely not foremost, the SDK is still in beta, which
means it is not yet at a level of quality and functionality that is
appropriate for many developers.

More importantly, the SDK delivers not just Firefox 4 compatibility but
also, and primarily, a new way of building add-ons, and that means that
using it to upgrade a traditional add-on means rewriting the add-on to a
significant degree (at least the parts that touch the Firefox user
interface). And that’s a lot more work than it would take to make the
minimal changes necessary to make that add-on compatible with the
changes to Firefox 4’s user interface.

The latter is talked about in more detail. Of course, there are always exceptions and those that come to mind for me are add-ons that use the Greasemonkey compiler to build an extension based on a user script that provides functionality for a particular site. The page-mod module in the SDK is a good alternative for this.

At Briks we’ve been using the SDK recently, for fun projects and for client work. We’ve been using the cfx driven command line tool, which is solid and easy to use. The last time I checked the Builder was broken (but it is getting more solid by the day). We’ve been updating other traditional add-ons for Firefox 4 and David and I recently had this conversation (paraphrased):

Brian: Stepping back, what is the win from using the SDK?
David: forwards compatibility?
David: easier maintenance?
Brian: I’m not convinced of either, because this is such a XUL/overlay heavy add-on
David: yeah me too. hence the question marks :)
Brian: unless at some stage in the future it loses a lot of XUL, but I doubt that will happen because …
David: aye.
Brian: if https://jetpack.mozillalabs.com/sdk/1.0b1/docs/#guide/xul-extensions works, we could have our cake and eat it
Brian: i.e. use the SDK for packaging, but update the code as we like isolated in a directory inside
Brian: maybe we should try that with the exisiting code as an experiment
Brian: and hack install.rdf to support 3.6 and try it there first
Brian: thoughts?
David: hmmm.
David: 1 sec
David: just reading up on that.
David: could try with a test addon
David: i’m not sure of the advantage of just using the sdk to package?
Brian: me neither
Brian: Ok, lets ditch it

So to summarise:

  • If it ain’t broke, don’t fix it. If you have a XUL based add-on take the path to least resistance and get it ready for Firefox 4. The chances are you won’t get some of the things you are looking for, such as no restart.
  • If you have a user-script driven add-on, or a XUL-less Web focused add-on, consider the switch.
  • If you are starting something new, try the SDK first.
  • The SDK is still in beta, beware of rough edges but at the same time try to play a role in making it stable and moving it forward (see Myk’s post).
Enhanced by Zemanta

27 Replies to “Add-ons: To SDK Or Not To SDK”

  1. Thanks for mentioning Myk’s post! The jetpack group is not available in newsgroup form, so I would have missed it if not for the fact that you were syndicated to planet.

  2. By thinking about all of those elements, it will be fairly straightforward to locate the proper location to travel to at any point in time.Dickey is under contract for 2013 at $5 million, but New York is serious about trading him if they are unable to come to terms on an extension.As stated in the starting, there is quite a bit of facts in regards to buying real estate. Almost all the best hybrid ultrabook convertibles are incredibly responsive. You should now get oneself ahead of the game in case you are working to turn out to be an expert, or just attempting to get a little bit of background facts.

  3. A few of that suggestions which has proven useful inside the past for individuals would be to figure out what kind of attraction they want to see when traveling, to figure out how much cash they’ve offered to spend around the excursion, as well as how long they can spend at the place without having it creating harm. Rather, you should offer informative insights into your products and business while slipping in an occasional marketing message. Use concerns in headers. If you are looking to be the market leaders, then you have to search for ways helping you minimize the running costs. Believe it or not, you will like to come back using this kind of customer care.

  4. Please let me know if you’re looking for a article writer for your blog. You have some really good articles and I believe I would be a good asset. If you ever want to take some of the load off, I’d love to write some content for your blog in exchange for a link back to mine. Please send me an e-mail if interested. Many thanks!

  5. any introduce of one’s latest operating system, Nokia is usually at your residence a small number of slow down, which often undermines its type representation. The provider traditionally launched inside the second three months, os in this handset, Symbian About three, although the computer itself in
    Yeezy 350 Boost

  6. I beloved up to you’ll obtain performed right here. The sketch is attractive, your authored subject matter stylish. nonetheless, you command get got an edginess over that you want be delivering the following. sick for sure come more in the past again since exactly the same nearly a lot regularly within case you protect this increase.

  7. Thus, take the time in getting to know your dry cleaning equipment New York proposals.Twins Still In Play For Saltalamacchia – RealGM WiretapThe Minnesota Twins are “still in play” for free-agent catcher Jarrod Saltalamacchia. You have to panic about not in the least have to learn more about manage their payroll and keep adequate comprehensive information on-line. Do this and it will aid them determine the correct action.No matter how long you have been connected in best mlm training small business, every new style of enterprise challenge you try will call for a distinct skill and new tactics to be productive.

  8. 2? ?????????? ????????35%???????????????????? ?????????? ????????????????????1000?????????????????????????????8.?????????????????????????184t?????

  9. Leinart has not impressed in the opportunities he has had under center since being drafted. And then, he had offers above what we would have considered, so we never made a proposal. The actual ethical from the tale is literally, in case your therefore known as SEARCH ENGINE OPTIMIZATION Organization hasn’t spoken via the over along with you, after that it is extremely most likely they are not really a correct SEARCH ENGINE OPTIMIZATION organization and just would like your hard earned money. Brandon Marshall is gone and Eddie Royal was a no show last year. Cautions Limit meat and dairy products, limit saturated fats, limit coffee intake as that can elevate blood cholesterol levels, limit cream substitutes.

  10. 1? ?????????????7.???????????????????????????????????????????????????????????????????????36??????????????????????4. ???????????????????????????????????????????????????

Leave a Reply

Your email address will not be published. Required fields are marked *