Drupal 7 usability: next steps
Improving the usability of Drupal is very important. Yesterday, I wrote about the progress that was made on Drupal 7 usability -- the community has made a ton of incremental improvements, while Mark and Leisa have been preparing mockups and wireframes that provide significant over-arching improvements to Drupal's ease of use. Combined, I believe these efforts could make Drupal 7 a great release. A release that the Drupal project needs since our competitors are catching up in terms of functionality and flexibility. Likewise we need to catch up in terms of design and usability. It is my belief that we can develop a user experience for our project that is game changing, and that completely resets people's expectations both for Drupal and our competitors.
As I wrote in yesterday's status update, an objective without a strategy remains a dream. We added a strategy by inviting Mark and Leisa to help but unfortunately, a strategy without execution remains a dream too. In other words, the time has come to start translating some of Mark and Leisa's work into working code. With 3 months until the Drupal 7 code freeze, it is time to build working prototypes so we can do user testing, refine the user experience, figure out the remaining design questions, and ultimately, get everything right for inclusion in Drupal 7.
Needless to say, this is a non-trivial amount of work that requires a highly collaborative process in what seems like a very limited time. It's easy to throw up our hands and say that it's impossible, that we should wait for Drupal 8, or whatnot. However, maintaining the status quo is simply not an option. Drupal 8 won't be used in production for, probably, at least another two years. As I wrote before, I don't want to compromise on Drupal 7's usability.
Few projects win by maintaining the status quo. Projects that win are those that go ahead and always improve. It is OK to be afraid about the work that is ahead. If you're not scared, you're not doing the right thing. Both winners and losers have fear, but all winners have faith. We can do this -- we've done it before.
We have to acknowledge that we arrived at a special point. The time has come to start working together even more but as a community, we're still learning how we can best work together on usability and design issues. Retrofitting a usability process into what has traditionally been an engineering process comes with some challenges and frustrations. Based on the progress that we have made recently, I'm confident that we'll figure this out, and that the process will feel completely natural in the long term.
Here is how I think about it in the short term, and how you can help.
Mark and Leisa will be helping us until the end of July to refine the current mockups based on more user testing, feedback from the community, and additional research -- they'll also be available to help answer questions and to help all of us sort through any implementation details. Their current mockups are a great starting point -- they'll force us to collaborate more and to streamline the process. The more mockups we can implement and the sooner we can implement them, the more testing Mark and Leisa can do, the more problems we'll discover, and the easier it becomes to refine things.
If you are a Drupal developer, look for issues tagged 'd7ux'. We're also using a tag called 'd7ux-design-question' to track non-engineering questions for Mark, Leisa and the usability team -- this should make it easier for everyone to stay on top of the progress. For people new to Drupal, Leisa and other people in the Drupal usability team launched a micro-projects initiative.
At this point, I've no plans to postpone the code freeze date. We started working on Drupal 7 in February 2008, so it has been a long release cycle already -- as it stands, Drupal 7 probably won't be released before January 2010. Instead of pushing back the code freeze date, I'd like to invite all of you to help with the implementation of the mockups that Mark and Leisa are providing. If you are a company, you can help by contributing some dedicated resources to help. If you're contributing as an individual, we appreciate every hour or day that you can put into this project. If you are a module maintainer, now would be a good time to figure out what this means for your module and how it could fit in. Get involved now, and help make Drupal 7 a game changing release!
To help, Acquia will start contributing a significant amount of its engineering resources. Starting this week, we'll contribute two or three people full-time until the end of the summer! Probably a combination of Gábor Hojtsy, David Rothstein, and Paul Lovvik. Jeff Noyes and Jason Reed will assist with user testing and design. Also, after talking to Mark Boulton, he has agreed to contribute one week a month of Tim Millwood's time (a Drupal developer that they have on staff) from now on to code freeze.
I hope others will step up to dedicate some of their time and resources as well -- when you do, make sure to announce it in the comments and on your blogs. Together, we should be able to make a lot of progress. The more people from the Drupal community that can jump in to help, the better Drupal 7 will be for us all. Now is the right time to bring vision, strategy, and execution together to achieve our objective. Fear not, Drupal 7 will be a game changing release.