Websites/Mozilla.org/One Mozilla: Difference between revisions
m (→Overview) |
|||
Line 35: | Line 35: | ||
*Why bedrock: http://etherpad.mozilla.com:9000/why-bedrock | *Why bedrock: http://etherpad.mozilla.com:9000/why-bedrock | ||
*Hacking todo list: http://etherpad.mozilla.com:9000/bedrock-hacking | *Hacking todo list: http://etherpad.mozilla.com:9000/bedrock-hacking | ||
*Docs (scarce right now): | *Docs (scarce right now): https://github.com/mozilla/bedrock | ||
== Goals == | == Goals == |
Revision as of 10:53, 28 November 2011
Overview
Now that we're running the Firefox product site (formerly mozilla.com) under mozilla.org/firefox, we're ready to move to the next step (one of many) to build a real One Mozilla, a single platform where Mozilla.org and Mozilla product sites (Firefox, Thunderbirds, Apps, etc.) can co-exist and share code.
Why Build a New Platform?
Mozilla.org is a pretty simple static content site (though, we have a lot of it!), but working on the site has become increasingly hard over the past few years. Here are some of our pain points (some might sound all too familiar to you in your job):
- Mobile, we currently don't have framework for handling mobile pages
- Templates, we currently don't have clear separation of templates and code, which is messy, hard to understand
- SVN, we currently use SVN instead of GIT and SVN doesn't excel when it comes to tracking features and managing rollouts quickly
- (Here's more on our SVN pains: http://jlongster.com/s/git-transition/)
- Libraries, we currently can't leverage popular libraries of optimizations that other mozilla sites use
Why Bedrock
- Mobile, we will have libraries to handle mobile views of pages with a lot of nice features (keeps track of user's preference, uses templates to reuse code, etc)
- Templates, we will have a powerful templating system: jinja2 (http://jinja.pocoo.org/docs/)
- GIT, we will build on top of git instead of SVN, which allows for easy branching and merging for rolling out (until we create a new workflow that the community weighs in on, localizations will still be kept in SVN - eventually though, Bedrock would take the need to know how to code out of the l10n process, which would be glorious!)
- Libraries, we'll be able to benefit from a number of awesome Python libraries:
- django-mobility, mobile detection/redirection, https://github.com/jbalogh/django-mobility
- jingo, jinja2 template integration with django,jingo-minify https://github.com/jbalogh/jingo jingo-minify
- JS/CSS minifier, https://github.com/jsocol/jingo-minify/
- django-waffle, feature flipper for continuous deployment, https://github.com/jsocol/django-waffle
- django-celery, celery (async task manager) integration with django, https://github.com/ask/django-celery
- django-qunit, quint testing integration, https://github.com/kumar303/django-qunit
- django-nose, nose test runner, https://github.com/jbalogh/django-nose
These libraries are currently being used and actively developed on other Mozilla sites.
Most of this and more can be found at "Current Pain Points with Mozilla.com's Architecture/Platform": http://jlongster.com/s/moz-com-dev/
- Why bedrock: http://etherpad.mozilla.com:9000/why-bedrock
- Hacking todo list: http://etherpad.mozilla.com:9000/bedrock-hacking
- Docs (scarce right now): https://github.com/mozilla/bedrock
Goals
To create and maintain a true "One Mozilla" web universe, where our many diverse product sites are connected by common navigational elements, URL structure and visual identity.
The One Mozilla project should feature nothing less than world class design and content on the front end and be built on the very best code and open technology on the back end. It should be a showcase for the modern web, while never deviating from its mission of serving the Mozilla community.
It should be fully accessible across platforms and devices, and inclusive of the many languages and cultures we support. Our process should be disciplined, transparent and open to anyone who wants to participate, and our methods should be a careful mix of data-driven decision making and expert intuition.
Our web universe should reflect the best of Mozilla, and we never stop trying to make it even better.
Phases
Q4 2011
- One Mozilla Visual Design (wiki):
- Design and code a new mozilla.org responsive visual theme
- Implement and test a functional universal tab for /firefox Bug 629699
- Update mozilla.org/about section to better reflect who we are
- One Mozilla Platform, Bedrock:
- Build first version of platform, focus on l10n workflow
- Prioritize content for ongoing migration conducted by webdev (page-by-page):
- /firefox
- Mozilla Europe
- Mozilla.org
- /firefox
- Communications Plan
People
Negotiate - these are the project owners, responsible for going to all the meetings and making the final decisions on things
- James
- John
- Sean Martell
- Stephanie Schipper
Consult - the folks will be very involved in the review & feedback process, but aren't considered 'owners' of the project
- Fred
- CB
- David Boswell
- Asa Dotzler
- Matej Novak
Inform - these people will be directly informed of project updates (design reviews, etc) and their opinions will be sought, but are less involved than the people on the consult level
- Ragavan
- Thunder
- Pascal Finette
- Pascal Chevrel
- Mike Morgan
- Jason Grlicky
- Ryan Merkley
- Jane Finette
- Jay Patel
- Gervase Markham
- fantasai
- Eric Shepherd
Meetings & Notes
- November 17, 2011
- November 10, 2011
- November 3, 2011
- October 27, 2011
- October 20, 2011
- October 13, 2011
Bugs
630964 - [One Mozilla] Integrate designs of www.mozilla.com and www.mozilla.org
629699 - [Universal Header] Phase 2
Follow Along With Blogs & More
- onemozilla.org
- Other blogs etc. go here :-)