DevMo Project Plan Notes

From MozillaWiki
Jump to: navigation, search

Introduction & Caveats

This is a working document that outlines the short, medium, and long-term vision and plans for a Mozilla Developer Network. The name of the project has not yet been decided, so "Mozilla Developer Network" is simply a working title.


The Mozilla Developer Network is an organized and carefully maintained collection of resources for the international community of Web Developers, Mozilla ISVs, and Mozilla Contributors.

Resources to Include

  • Documentation
  • Training and Educational Materials
  • Development and Project Management tools
  • Developer community news, events, and announcements
  • Community support infrastructure, including forums, mailing lists, weblog hosting, and/or whatever else could be useful

Guiding Principles

The guiding principles for the Mozilla Developer Network are that it be:

  • Usable
  • Practical
  • Comprehensive
  • Accurate
  • Up-to-date
  • Accessible, and
  • A reflection of best practices at all levels


The goal of the Mozilla Developer Network is to become a daily touchstone for all Mozilla and Web developers.

This can be accomplished by creating:

  • A high quality documentation library that is continually improved over time.
  • An extensive library of accurate, reviewed, and well-documented code samples.
  • A set of online and offline education resources for all developer types and experience levels that allow people to learn at their own pace.
  • A central online Commons for developers that includes forums, mailing lists, weblogs, RSS feeds, news, wikis, and any other tools that facilitate community communication and cooperation.


Taken as a whole, this project is entirely too large to tackle at once. The project needs to be broken up into manageable components, each of which will be developed independently and later integrated into the greater whole.

Each of the “Components�? discussed below should be thought of as independent projects. Sorting out which to work on first will be a matter of prioritization.

Keys to this project’s long term success:

  • Components need to support and reflect open standards as much as possible, if not completely.
  • Look and feel must be kept as separate as possible from content and structure.
  • Adopted technologies must be field-tested and easily scalable whereever possible. We must ensure long-term maintenance and stability.
  • Adopted technologies must make it easy and rewarding for users to contribute content. The barrier to entry must be as low as practically possible. Openness is not optional, and gatekeeping/elitism must be kept to an absolute minimum.
  • Central community of contributors and volunteers must be empowered to help maintain the contributed content as much as possible. We need many trusted eyes to keep an eye out for spam, inappropriate contributions, organizational errors, and so forth. This central community will act as contribution facilitators, not gatekeepers. This team is absolutely essential to the success of the project as a whole.
  • Cooperate with and help promote/support complementary projects.

Overview of Possible Components

Front-end Portal/News System

This would be used to create front end "glue" for the main site and any subsites. This front end would integrate and organize other components, provide comprehensive search facilities, and provide a news and announcements "weblog".

  1. Mozilla Developer Network front end
  2. Web content and applications developer subsite front end
  3. MozISV subsite front end
  4. Mozilla Contributors subsite front end

Mozilla Developer Documentation Library

Single repository of all Mozilla-created and hosted developer documentation, including:

  • Product and Reference documentation
  • Mozilla Education Center documents (tutorials, lessons, classes, presentations, etc.) ** see below
  • Task specific procedural documentation ("Cookbook"-style)
  • FAQs
  • Developer Knowledge Base
  • Annotated sample code and other examples
  • Whitepapers
  • Tools documentation
  • ...whatever else

Mozilla Education Center

Technically this could be part of the Documentation Library, but this collection of documents, files, and code samples is focused on helping people learn how to use the various technologies being discussed. Also could be used toward developing resources for offline training and education, akin to the "Mozilla University" project idea.

Mozilla Code Samples Library

Central repository of correct, tested, and well-documented code samples, for all developer audiences, obtained from a variety of sources (most importantly from the developer community itself). Annotation/comments should be possible on a per-sample basis.

Mozilla Tools Library

Single repository of all Mozilla-created and hosted developer tools, including sidebars, Venkman, validators, Bugzilla, Bonsai, Tinderbox, etc, including links to Documentation Library resources for each tool (docs, education center resources, FAQs/Knowledge Base, etc.)

Mozilla Contributor’s Dashboard

This is Chase’s idea – create a system that allows us to display the current status of bugzilla, tinderboxen, bonsai, etc on the front page of the Mozilla Contributor’s subsite.

Mozilla Community Commons

Community tools:

  • Wiki(s)
  • Forums
  • Mailing Lists and Newsgroups
  • Hosted Weblogs (would we provide weblogging facilities for people?)
  • Syndicated RSS feeds of weblogs (users can sign up their feeds)
  • IRC
  • ...whatever else


Short Term

  1. Set up a wiki using the MediaWiki software.
  2. Set up a basic structure within that wiki towards organizing the content in meaningful ways. This would be largely, but not entirely, based off the Documentation Taxonomy.
  3. Sort through the existing documentation and other relevant content we have and figure out what state it's in. This has been started at Links to Existing Content.
  4. Start moving still-valuable content into the wiki within the basic structure.
  5. Start promoting the wiki within the existing developer community. Hopefully they will take the time to update, edit, and add new content where they see errors, problems, or holes.
  6. Finish branding and layout modifications for the wiki. Create and brand an initial portal/news-weblog system, then launch to a wider audience. At that point, if we've done things properly, it will start to take on a life of its own (with some serious care and feeding in the background).

Medium and Long Term

Once we have the short term goals taken care of and an initial site launched, we'll have a better grasp of where to go from there. At that point we'll evaluate possible options and formulate a new set of short and medium term goals.

Other Notes and Ideas

Moved to Other DevMo Notes and Ideas.