If your 2015 was anything like mine, it passed by extremely quickly. It was marked by periods of frustration (spammers still love Drupal.org) and elation (Drupal 8 launched, woot!).
- New database cluster was put into service and migrations to that server begin
- User and organization profile improvements (lots more work to be done here, but it was a great start)
- DrupalCon Latin America
- Launch of Drupal Events (<a href="https://events.drupal.org>events.drupal.org) with the site for DrupalCon Los Angeles - all new events sites are hosted from the same installation
- Account creation improvements including a faster 2-step registration that returns users to the site they initiated registration from
- Support for the 2015 community elections for board member at large
- Implementation of Server Density for systems monitoring
- Centralized logging for Druapl.org infrastructure
- Relaunch of the Drupal Newsletter and migration of most Drupal.org mailing lists to Mailchimp
- Responsive breakpoints added to Drupal.org theme—a way better experience for mobile devices
- FTP migration to Fastly
- Issue credits and attribution UI
- Advanced Aggregator deployments began to improve performance of the site
- DrupalCI sprint at the Drupal Association offices in Portland
- "New" indicator for users in their first 90 days to help in welcoming newcomers to the community
- Content strategy project complete and recommendations shared with the community
- Community user role was deployed and the ability to "confirm" a new user
- Try Drupal launches giving evaluators of Drupal an option to quickly try an installation of Drupal provided for free by our hosting partners
- Homepage changes to begin supporting new content strategy
- Moved all major service deployments from BZR to Git (our standard)
- Two-factor authentication deployed for Drupal.org
- DrupalCon Los Angeles
** Presentations on content strategy and issue workspaces
- Updates to the log management to show statistics from updates.drupal.org
- Front page changes to highlight community metrics
- "Plan" issue category is deployed
- Try Drupal refinements
- Organization and user profiles updated to show last 90 days of issue credits
- DrupalCI goes into production
- Signature Supporting Partner program launched
- Updates.drupal.org traffic moved to Fastly CDN
- Interns from Epicodus join the Drupal.org team for 8 weeks
- New Git servers configured and deployed to production to replace aging hardware
- Core patch testing enabled for DrupalCI
- Upgrade of Localize.drupal.org to Drupal 7
- Apache Solr upgrades
- Updates to make issues in project queues easier to quickly read and digest
- Performance profiling on a new integration server leads to site speed improvements
- Drupal.org search improvements
- First content model update with sections and pages deployed
- Solr server high availability improvements
- DrupalCon Barcelona
- Marketplace updates to order organizations by last 90 days of issue credits and supporter status
- Drupal 8 RC1
- DrupalCI becomes the primary test platform for Drupal 8 Core; legacy testing is disabled
- Flag module and administrative views are deployed for a new take on spam fighting
- Drupal 6 & 7 testing are enabled on DrupalCI
- Kicked off the first Drupal.org membership drive
- Breadcrumbs for top level sections to make navigation a bit easier
- Server-side support for contributed Drupal 8 translations on Localize.drupal.org
- Drupal.org development environments now build in under 20 minutes
- All sites are migrated to Fastly for CDN services
- Behind-the-scenes config and code changes for the new Drupal 8 area of the site (drupal.org/8)
- Drupal 8 successfully launched
- Drupal 8 section built with a new theme
- Theme changes to the front page and header associated with Drupal 8 launch
- Download experience changes
- Began testing Distil as a solution to reduce spam account creation on Drupal.org
- 3 new test environments added to DrupalCI
- Published plan for Composer support on Drupal.org
- Old testbots are disabled and all Drupal testing is now run through DrupalCI
- Homepage changes to support the membership campaign
- Presented the new community engagement plan to the board and working groups
That was a lot of work in what was a tumultuous year. Between all the DrupalCon websites, and major updates to some of our existing sub-sites, we launched as many sites as some web development shops—at least the smaller ones.
We made several small but high impact usability improvements to Drupal.org, and built better features to highlight the contributions of individuals and organizations on their profiles. We modernized and hardened our infrastructure. We made Drupal.org a little more beautiful to better promote this amazing software and community that we support to people finding us for the first time. Among all of that…
What was the most important work in 2015?
If I had to call out just one thing the Drupal.org team did this year that was essential to the success of Drupal and the community, I would highlight the great work done to launch DrupalCI and make it a production system that could handle our community's unique testing needs.
DrupalCI (the CI stands for Continuous Integration) started as a community initiative. It had been in progress for years as work to replace our aging testbot infrastructure. The old testbots required a manual spin up of new testing servers that were hosted on VMs in a cluster at the Open Source Labs. They were proprietary and rigid. If a testbot went down, it would require manual intervention to free up the queue and allow tests to begin again.
By working closely with the community throughout Q2 and Q3 of 2015, we were able to launch a testing infrastructure that supports multiple testing environments—a feature which has already helped support other projects, like PHP 7—dynamically scales to the testing load, and which is tightly integrated with the Drupal.org issue queues. Overall the new system is much more configurable and far more scalable than the previous system.
Why is testing so vital to the community? Because Drupal 8 represents a much larger code base than Drupal 7. A huge proportion of those new lines of code are tests. Every time a patch is submitted to Drupal Core, up to 15,000+ tests are run—with over 100,000 assertions. Core maintainers and initiative leads need those tests to help them understand how the new code introduced will affect Drupal. Contrib developers can also use DrupalCI to ensure their modules will work well with Drupal.
Though the work to get DrupalCI into production and optimized, we were able to give core maintainers faster and more reliable information about code submitted for inclusion in Drupal.
I honestly believe that without DrupalCI, we would not have had Drupal 8 in 2015. It sped the release of Drupal, which makes it the most accomplishment for our team in 2015.
Happy but not satisfied
Larry Garfield (Crell) wrote a blog post shortly after the release of Drupal 8 where he talked about how he was happy that Drupal 8 was released—and feels it is a huge leap forward for the project—but he is not satisfied because he sees how much work is left to be done.
That is the nature of software. It can always be a little better—more performant, more usable, more extendable.
Drupal.org improved in 2015, but the team is far from satisfied. There is so much more work to complete.
At DrupalCon Amsterdam, I outlined the top 7 initiatives that the Drupal.org team would focus on. When I look back on the year, we did not hit all of our goals.
In April, one year into my time at the Drupal Association, I could point back to a lot of accomplishments, but for many, the improvements were not fast enough. By DrupalCon Los Angeles, we had achieved one of our initiative goals, and moved forward many more, but we added four more to our list. In agile project management terms, we burned up (added more work) than we burned down (work completed).
While the fact that more work is requested faster than we could complete it is not unusual, it did make us think, and we learned some lessons. We have to focus on fewer, high impact priorities. We need to plan for the unplannable - we know there will be unforeseen needs from the community and new technology to support that may not exist yet, and we must be flexible enough to respond. We need to build more partnerships and find great solutions with technology providers that are experts in their fields.
We are pretty excited that much of the planning and design work put into 2015 should result in a much more rapid pace of change to Drupal.org in 2016.
What's next for Drupal.org
So, we are celebrating all the good things from 2015—there were a lot—but we are also closing the book on what was a challenging year.
Our focus shifts now to supporting the community as we all work to make Drupal 8 successful. We'll be keeping the Drupal.org Roadmap up to date and adding in new initiatives.
As we start the new year, we are still committed to the content strategy work that will make the content creation experience on Drupal.org and sub-sites better. This will improve our documentation as well as make it easier to talk about the benefits of Drupal to decision makers that help choose Drupal as the best content management framework for their organization.
Additionally, we are doing some exciting work to better support Composer on Drupal.org to align us with the rest of the PHP community as well as planning some much needed improvements to our Git workflow and developer tools.
Lastly, we are not done improving how we highlight contributions within the Drupal community. As Dries outlined in Amsterdam, Drupal is a public good. We need to highlight the great work that people around the world are doing in building Drupal and the community that supports it.
We can't wait to get started on 2016!