Moving Commons to Drupal.org
by Ezra Barnett Gildesgame
Just over a month ago, I joined the Acquia team. I’m thrilled at the opportunity to work with so many talented people who are working with Drupal!
I’m part of the team that develops Commons, the Drupal distribution for building vibrant community websites that competes in a marketplace dominated by proprietary vendors such as Jive and Yammer.
We’re beginning a new level of focus on Commons that includes aligning with Drupal community standards, improving visibility of long-term roadmap plans and day-to-day development work, and dedicating new levels of resources from Acquia’s Engineering team (engineers, user experience and QA professionals) directly to Commons. As a top priority, we’ll be moving Commons development off of Github and onto Drupal.org in order to make it easier to file issues and collaborate on fixes.
This post explains Acquia’s renewed investment in Commons, what you can expect from the move to Drupal.org, and how you can get involved to help make Commons better meet your needs.
Aligning with Community standards
Moving to Drupal.org
It’s no secret that Drupal’s community of contributors is the single greatest asset to any Drupal-based project, and that Drupal.org is the center for collaboration around Drupal. The Drupal.org issue queue and project repositories provide a standardized set of tools for contributors, and a centralized venue for collaboration. This emphasis on centralization -- rather than moving development off of Drupal.org and onto sites like GitHub -- is one of the main reasons the Drupal community undertook the massive effort to migrate Drupal.org to using Git.
Using the Commons Issue queue
We are now using the Commons issue queue as the main collaboration space for Commons. Previously, Commons.Acquia.com contained several groups that had overlap with the Drupal.org issue queue. We’ve closed these overlapping groups so that users have one clear place to submit feedback, and where maintainers have the tools necessary to organize and act on that feedback. Your bug reports, support requests, and feature requests are welcome at http://drupal.org/project/issues/commons !
Filing patches for public review
Of course, a critical part of the issue queue is being able to file a Drupal patch using the standard process across all Drupal projects. Historically, Acquia has directed folks to submit a pull request to Acquia’s GitHub repository. This practice is now discontinued. In the interim, users are encouraged to submit a patch file based on the Github Commons repository. Once we’ve completed the move to Drupal.org, you’ll be able to file a standard patch against the Drupal.org repo. Commons, like Drupal, is a “scratch your own itch” project, so we encourage feature requests (and, ideally, patches). We’ll make our best effort to review your patches promptly.
The Commons team works in 3-week sprints, and will be conducting all code reviews in the Drupal.org issue queue. This is another key advantage that Commons has over proprietary competitors. What proprietary vendor lets you provide feedback on a line-by-line code basis before the code is even committed?
Improving User experience
Of course, the issue queue is about more than code: We’re tracking a list of suggested usability improvements that we plan to integrate over the next several months. We’ve also begun conducting usability studies on Commons so that we can identify more areas for improvement. Usability is just one aspect of user experience, and we’re also using the broader user interface component to track issues.
Visibility into day-to-day and long-term roadmap
In addition to the Drupal.org issue queue, we’ll be posting quarterly Commons development roadmaps on Commons.Acquia.com so that we can get your feedback and discuss high-level goals going forward. As the roadmap solidifies, we’ll make sure that it links to actionable Drupal.org issues, so that it’s clear how folks can get involved in shaping and advancing the roadmap. Additionally, we’re working on some significant updates to Commons.Acquia.com to make it easier to find information about Commons and increase the quality and amount of information posted there.
We know one popular question folks have about the roadmap is when Commons will be updated to Drupal 7. This is definitely on our radar, so please stay tuned for upcoming roadmap announcements for information on when we’re starting this effort and how you can get involved.
To complement this high-level view of Commons development, you can also find members of the Commons team in the #drupal-commons IRC chatroom. Feel free to add #drupal-commons to your auto-join list if you’d like to participate in development discussions in real-time.
Moving to Drush make
A standard convention for building distributions is to use Drush make. A make file is like the DNA of a distribution, listing all the components including contributed modules, Drupal core and the Commons feature modules and themes. Instead of storing duplicate copies of all of the contributed components of Commons, Drush make allows us to store only the components that are unique to Commons and then, with the “drush make” command, package them together for download.
Using Drush make greatly simplifies distribution maintenance in a number of ways. For example, we’ll no longer need to maintain a separate branch of Commons for Pressflow, and we can greatly improve our internal continuous integration environment. We’ll be able to write automated tests for Commons and then run them against not only development versions of Commons, but development versions of Commons built with development versions of Drupal core and contributed modules. That way, we can identify potential points of failure introduced by changes in an underlying contrib module before that module makes a new release.
In the long run, packaging with Drush make leaves open the possibility of packaging Commons so that it can be downloaded entirely from Drupal.org.
However, until some Drupal.org infrastructural blockers are removed, we’ll continue to package new releases of Commons for download from Acquia.com.
Dedicating new levels of resources from Acquia’s Engineering team
Historically, Commons had a dedicated product owner and part-time development resources. The platform has experienced enormous growth in the last year and Acquia is committing more resources to support that growth and accelerate it in the future.
We now have full-time engineers and the support of Acquia’s user experience and QA Engineering team members.
Leading the newly formed Commons team is Marc O’Brien, VP of Social Business and General Manager for Commons. Marc has decades of experience managing open source projects that compete aggressively with proprietary alternatives. This experience will be key to advancing Commons and Drupal adoption in the competitive social business software marketplace. You’ll hear more from Marc regarding the Commons roadmap soon.
With Marc comes Laurent Chretienneau. Laurent was the CTO of the open source OpenProj project, and brings years of development expertise. It’s great to have him applying his experience to Drupal -- He is sure to be a strong Drupal contributor.
We hope to see you in the Commons issue queue, and look forward to discussing the Commons roadmap!