Before I go into story-telling mode, I’ll save most of you the time and just link to the XUL School Tutorial. You’re welcome ;).
And now, our feature story.
But they were difficult times as well. Other than the tutorial, little information was there to be found. XUL is full of quirks, and figuring them out has always been a daunting task. Back then it took a lot of googling around to find a solution to a problem, if any. Now we have a voluminous MDC, with an updated XUL Tutorial and a myriad of articles on the Mozilla platform and add-on development. The documentation landscape has improved a lot.
However, a couple of years ago I still thought that an important piece of documentation was missing. The XUL Tutorial served very well as a reference to XUL as a language, but I felt it fell short as an add-on development tutorial. I thought there was room for a tutorial aimed at getting add-on developers set up and coding right away, leaving lengthy specs as references and focusing on getting things done.
At the time I was working at Glaxstar (now Appcoast), and I was in charge of training new hires and turning them into professional Firefox extension developers. Producing this tutorial fit perfectly under that plan, so a few coworkers and I set off to basically dump all of our combined experiences into it. The XUL School tutorial was born.
We loved the outcome and thought it would be great to somehow make this available to developers everywhere. But as it often happens, other tasks took priority and the tutorial was kept for internal use only.
Fast forward to a few months ago, when I was just getting started with Mozilla. Getting XUL School on MDC became a high priority for me, so I contacted Appcoast about it. They were more than happy to donate the material. Now it was just a matter of porting it to MDC. That took while mostly because I was too busy trying to get the review queues under control. Luckily, the editors have been doing an extraordinary job lately (also thanks to Appcoast!) and I’ve been able to spare some cycles porting the material and updating it.
So now it’s done, and I hope everybody can benefit from it. Whether you’re a seasoned developer or just getting started with extension developer, please take some time to go through the XUL School Tutorial. I would really appreciate your input and corrections.
Finally, I’d like to extend my sincere gratitude to Glaxstar/Appcoast, who have always been outstanding community members, and to all the people who helped me produce this tutorial.
Localizers: do your thing
You can contact me directly (jorge AT mozilla.com) for anything you need. Thanks!