Expanding the Mozilla ecosystem

Author
Daniel Glazman <daniel.glazman@disruptive-innovations.com>
Date
6-may-2009

Table of Contents

  1. Abstract
  2. The state of the Mozilla ecosystem
  3. Donations and retributions
    1. addons.mozilla.org
    2. Firefox and other products
    3. Proposal
  4. Applications/Widgets
    1. Proposal
  5. Let's be disruptive...
    1. Revenue through advertisement
    2. Mozilla Add-ons Corporation?

1. Abstract

The Mozilla software ecosystem consists of Mozilla products, Mozilla-based products, and extensions to these products. Most extensions to Mozilla-based products are freely available on the Web, and do not provide their authors with a revenue stream. If this is excellent for the community and for the software diversity on the Web, it's not the best win-win strategy for the Mozilla ecosystem and extensions' authors themselves: since they cannot make a revenue - even minimal - from their hard work, they cannot invest too much time on code. A successful and free extension driving a lot of feedback and expectations from the users, it's then difficult for the author to stay in sync with the evolutions of the Mozilla code-base and users's feedback.

This document will try to summarize the current situation and propose some changes to the Mozilla ecosystem that could trigger a revenue stream for code contributors in the Mozilla community, and hence an expansion of the Mozilla ecosystem itself.


2. The state of the Mozilla ecosystem

The following is well-known but will serve as a basis for the discussion:

  1. Firefox, Thunderbird and most Mozilla-based software can be obtained free of charge,
  2. Extensions to these products can be obtained free of charge,
  3. There is nothing at this time in the Firefox toolkit to allow extension authors to ask for donation or retribution for their work,
  4. There is nothing in addons.mozilla.org allowing extension authors to ask for donation or retribution for their work,
  5. Firefox 3 can run application packages made for xulrunner but this is only a command-line as of today.

Metrics:

Even if the iPhone's Application Store lives in a totally different system, these numbers must be compared to the following ones:

A lot of software developers are attracted by the iPhone platform (a lot of them never really worked on Mac before but moved to Mac OS X because of the iPhone) for the following reasons:

Even if the Mozilla ecosystem is a vibrantly alive community, it probably does not reach its full potential because it misses two important factors:

  1. applications
  2. revenue streams

There are a lot of things to learn from the App Store, and I think the Mozilla ecosystem could be adapted to trigger even more innovation and diversity on the World Wide Web without changing at all the core values and goals of Mozilla.


3. Donations and retributions

Donations and retributions for a given extension could be generated from two sources: addons.mozilla.org's page for this extension and the product hosting the extension.

3.1. addons.mozilla.org

I think there is a consensus in the Mozilla community about the following points (please note I am not saying the Mozilla community is right thinking that, I'm only quoting a fact):

  1. addons.mozilla.org is not the right place to sell extensions to Mozilla products,
  2. addons.mozilla.org should not deal itself with donations or retributions to code authors.

The following points must also be considered:

  1. once a user had found an extension on addons.mozilla.org and downloaded it, he/she does not need to go back to that extension's page on addons.mozilla.org since updates are automatic,
  2. release notes for a given extension are hosted only on addons.mozilla.org and are not visible from that extension's users even when the extension is automatically updated,
  3. the visibility of an extension that is not "recommended", not new, not one of the "most popular" or one of the "last updated" is low. Sometimes very low : 14 pages of 20 extensions in the Appearance category...

3.2. Firefox and other products

The extensions manager of these products is clearly a focal point for extension authors. It's often the user's first contact with addons.

For the time being, the extensions manager is unable to host a link to a donations page or show the release notes for a given extension. It's possible to have a link to a "home page URL" in the extension's install.rdf but using this URL is not very satisfactory:

There is also no UI guideline for an extension's author willing to add a "Donate" button to his/her extension. Where is a such a button acceptable? Where is it intrusive? How can we avoid multiple and confusing UI styles for Donation buttons?

3.3. Proposal

It's then proposed to:

  1. add a donateURL field to extensions' install.rdf file,
  2. make addons.mozilla.org show a Donate button with some prose about it on an extension's page if that field is present in the extension's install.rdf,
  3. make the extensions manager of Mozilla products show a Donate button if the donateURL field is present along the Enable/Disable and Uninstall buttons,
  4. make the default About dialog for a given extension show a Donate button if the donateURL field is present, because this dialog is often linked from the extension's chrome itself,
  5. add a authorpageURL field to extension's install.rdf file that will serve as the current homepageURL,
  6. make addons.mozilla.org add the extension's page to install.rdf as the homepageURL field,
  7. add a tab to Firefox when it's relaunched for extensions that were just updated. A lot of extension authors have to code this by hand for the time being and this is not very satisfactory since the information provided by the extension's author rarely meets user's expectations. So when an extension is updated to a new version for the first time, show a tab displaying:
    1. extension's logo if any,
    2. extension's name,
    3. extension's author,
    4. links to author's web site if any,
    5. link to homepageURL (addons.mozilla.org if the extension was downloaded from there),
    6. general information about the extension,
    7. release notes,
    8. Donate button with a prose if the donateURL field is present for this extension.
  8. in terms of security, the toolkit must make sure the donateURL for an extension is stored safely, i.e. is not overridable by another extension.

Glazoom's about page

Example of extension's tab as proposed in item 7 above (click to enlarge)

It's also proposed to revamp almost entirely the "Get add-ons" tab of the extensions manager for the following reasons:

bad results when looking for an extension

Search for "rss": one result only, while addons.mozilla.org replies 133 results...

This dialog should then be

Ideally, the search for addons could be based on a real search engine registered in the search engine dropdown menu of Firefox. That would enable third-party extension lookup dialogs.


4. Applications/Widgets

Despite of the huge interest of XULrunner for standalone Mozilla-based applications and the fact Firefox 3 is able to run packages made for XULrunner, this way of writing standalone applications did not really spread. There are many reasons for that but one of them is the lack of an Application Store like the iPhone's and the command-line interface needed to run a package through Firefox 3.

With a vastly improved JavaScript speed and new HTML elements like canvas, JS-based games, video effects software and image editing software based on web standards are becoming a reality. But we have no distribution channel at this time for this kind of packages so we don't and won't attract easily developers.

4.1. Proposal

It's then proposed to:

  1. host xulrunner-based applications runnable by Firefox 3+ on addons.mozilla.org,
  2. allow the application.ini file for these packages to host a donateURL field,
  3. have an extension and MIME type dedicated to these packages and associate them to Firefox 3+,
  4. have a Widgets/Applications manager in Firefox3 handling such packages:
    1. detect them,
    2. allow to install/uninstall them,
    3. installation should create whatever is needed on the user's platform to allow a direct call to the application (icon, directory, executable stub, entry in the "Uninstall programs" platform manager, etc.),
    4. show a Donate button in this new manager just like in the Extensions Manager even if standalone applications have less UI constraints than extensions to Firefox and can host themselves such a button, manage license IDs and even registration fees,
    5. have an update mechanism similar to extensions' update.rdf for these packages.

5. Let's be disruptive...

5.1. Revenue through advertisement

Addons.mozilla.org drives an incredible web traffic, financially supported by the Mozilla Corporation. Despite of the cost, this is a very successful strategy for Mozilla because the existence of thousands of add-ons for Firefox and other Mozilla products is clearly a big differentiating factor with other mainstream browsers. So the existence of add-ons and the hard work of extension contributors are extremely beneficial to Mozilla.

So ideally, Mozilla should do much more for extension contributors than only provide them with infrastructure only. I am only thinking at loud here, but an addon page hosting selected ads could drive a lot of income for its author.

The different possibilities are the following ones:

5.3. Mozilla Add-ons Corporation?

Mozilla Corporation, Mozilla Messenging. Why not a Mozilla Add-ons Corporation? As I said in section 3.1, the Mozilla community currently thinks that addons.mozilla.org is not the right place to sell extensions to Mozilla products. I think this is a very wrong choice, that is counter-productive and does not push the add-ons ecosystem of Mozilla towards its full potential.

I think a Mozilla Add-ons Corporation could be formed to manage addons.mozilla.org AND the revenue streams it could trigger if sold add-ons were available on the site:

That said, can it happen outside of addons.mozilla.org? The answer is no, loud and clear. Addons.mozilla.org is and will remain the focal point of the addons ecosystem and it's unrealistic to imagine there could be one site for free add-ons and another one for sold add-ons.