You can clone with
- Add-on SDK:
Everything but simple to use. Requires command-line interaction to build an add-on for Firefox...
Needs to open Firefox with another Profile... Really?
[Jeff] one design goal of the SDK is that it should integrate easily with existing development
environments, hence the command-line interface. This is a bias of ours. I take it you think we
should ship a GUI tool similar to, say, Google's AppEngine? As well, we have another goal for restart-less testing, hope to ship soon.
- Add-on Builder:
Good idea, but again, requires an add-on to be installed so devs can test their add-ons without
[Jeff] the add-on helper is a 1-time install, and restart-less. Slightly more start-up friction
than Opera, but to me not a deal-breaker. YMMV.
- Documentation (https://addons.mozilla.org/en-US/developers/docs/sdk/1.2/dev-guide/addon-development/about.html):
Difficult. Can't search? Very few real world examples/code samples.
How do I make a simple add-on with a button in the main browser window opening an add-on popup
with some HTML content inside? No idea. Can't find any answer nor code sample for that. The
documentation is so uninviting I've given up every single time actually building something for
Firefox. I would think Firefox/Mozilla should make things easy for me, as I'm willing to give it my
time to build add-ons, for free.
[Jeff] All good points which I will forward on to the team. I take it you either didn't work
through or didn't find the 2 example projects in the docs? Also, we are currently considering
moving docs to MDN where they would benefit from that site's search functionality. This would also
de-couple publishing new docs from the SDK release cycle.
By contrast, in Opera (somewhat similar in Safari):
- Nothing to download/install. It all just works. All the developer has to do to use/test his
Extension is to drag and drop his "config.xml" file onto the browser: the extension will be
installed and loaded. No restart required. "It just works".
- Amazing documentation, clearly explained, and with great, simple guides on how to actually make
extensions (ex: http://dev.opera.com/articles/view/hands-on-building-an-opera-extension/)
- Opera devs ready to help (not just on IRC).
[Jeff] where ( besides IRC ) did you go to look for help? What happened? What sort of help did you
get from Opera?
Basically I think Mozilla/Firefox should work on making Add-ons simple and effortless to do. It
takes way too much involvement for the developer to get to "see" his stuff work in Firefox - while
it takes mere seconds to start seeing things appear in both Opera and Safari (basically, just a
drag and drop, and you're seeing your extension "working" in your browser already).
I want to be able to code my add-ons locally, with my (desktop) code editor of choice, without
having to restart my browser at anytime, nor having to install any extra add-on.
[Jeff] This is an excellent statement of goal! I am going to shamelessly steal this, and as such
owe you a beer should we ever cross paths.
There are trade-offs to how Opera/Safari/Chrome do extensions vs Firefox. In particular Firefox
extensions allow you access to the entire Mozilla API, not just a sand-boxed JS API. The SDK and
Builder are an attempt to close the gap of usability especially for the relatively simple types of
extension capabilities afforded by the other browsers but as you point out we have a ways to go.
Thanks for the comments!