DevMo Project Plan Notes
Contents
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.
Vision
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
Goals
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.
Strategies
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".
- Mozilla Developer Network front end
- Web content and applications developer subsite front end
- MozISV subsite front end
- 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
Plan
Short Term
- Set up a wiki using the MediaWiki software.
- 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.
- 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.
- Start moving still-valuable content into the wiki within the basic structure.
- 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.
- 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.