The Docker
open source project, which develops the Docker open platform for
distributed applications, today announced changes to the project’s
operational structure to enable it to scale to address its unprecedented
growth. During the course of 2014, the number of project
contributors quadrupled and is currently at over 740. During the same
period, the project processed over 5,000 pull requests, 50 percent of
which were made by individuals who do not work for Docker, Inc. In
addition to direct contribution, the project – through its open model
for design, contribution, APIs and governance – has now fostered over
20,000 projects (such as UIs, management frameworks and monitoring
tools) and over 85,000 Dockerized applications which are the open,
composable building blocks for distributed applications.
The new operational structure for the Docker project was established in
the same way project features are; through its open design process and
documented in a pull request (PR) – PR
#9137 – that has been commented on, modified and ultimately merged
into the project. The changes were structured in a way to allow the
project to scale 10X and beyond, with the objectives being to:
-
Make the project more open and accessible;
-
Make the project more scalable;
-
Do this in an incremental way, without unnecessary refactoring.
The primary driver behind the modification of organizational structure
is to distribute critical responsibilities across a strong team of three
leaders with distinct responsibilities. These roles are chief architect,
chief maintainer and chief operator. In addition to the leadership
roles, the new structure also defines the day-to-day work of individual
contributors working in each one of these areas.
“The Docker project is thriving through a level of unparalleled growth
and expectations and to continue to reach new heights we needed to
evolve our structure. A structure that creates the opportunity for
additional world-class talent to join the team to help us as we support
and grow our community,” said Solomon Hykes, founder of Docker.
Chief Architect
Solomon, as the founder of Docker, was previously responsible for
overseeing architecture, operations and technical maintenance of the
project. In the new structure, Solomon steps into the specific role of
chief architect for the project, while continuing in his capacity as CTO
of Docker, Inc. As chief architect, Solomon will steer the general
direction of the project, define its design principles, and preserve the
integrity of its overall architecture as the platform grows and matures.
Chief Maintainer
For the role of chief maintainer, the Docker project has appointed Michael
Crosby, who has been serving as a maintainer. The chief maintainer
is responsible for all aspects of quality for the project including code
reviews, usability, stability, security, performance, and more.
Michael started working with the project in its early days in 2013 as a
community member and was one of its most active, impactful contributors.
Michael is the creator of libcontainer which is a critical element of
the Docker project and at the heart of why the Docker container format
has become the industry standard. Michael has been a Docker, Inc. team
member since August 2013 and has been a core project maintainer since
that time. His leadership has been one of the reasons that the project
maintainers have been able to handle the thousands of contributions made
to Docker with merge response times on average (median) less than one
day, far lower than the industry average.
Chief Operator
To fill the role of chief operator, Docker has recruited Steve
Francia, who served in a similar capacity as chief developer
advocate at MongoDB for the past three years. Under his guidance, that
open source project experienced unchartered growth in the database
sector with resounding community and technology success. In his role as
Docker’s chief operator, Steve is responsible for the day-to-day
operations of the project including: facilitating communications amongst
all the contributors; tracking release schedules; managing the
relationship with downstream distributions and upstream dependencies;
and helping new contributors to get involved and become successful
contributors and maintainers. The role is also responsible for managing
and measuring the success of the overall project and ensuring it is
governed properly working in concert with the Docker Governance Advisory
Board (DGAB).
In addition to creating the strongest community in the NoSQL database
world with thousands of projects based on MongoDB, Steve is also very
active in the open source community. He is personally responsible for
the single most successful community-based Go project, Hugo,
which has the most contributors of any non-commercially-backed Go
project on GitHub. In addition to Hugo, he has created many of the most
popular Go libraries and is very active in the Go community having
spoken at the first GopherCon and being an expert judge in the first
international Go Hackathon.
“Steve’s incredible track record with developer communities is built on
his unique ability to communicate to, coalesce and motivate strong
teams, while working tirelessly to improve the contributor experience
each and every day,” said Solomon. “We are thrilled to have him on board
guiding the Docker project as we continue to grow at an accelerated
pace.”
While serving as the chief developer advocate at MongoDB, Steve was also
directly responsible for the engineering team responsible for user
experience, language drivers, evangelism, integrations, support and
documentation. Steve has over 15 years of engineering management
experience with leadership roles at companies like OpenSky, Portero
Inc., and Daimler Chrysler.
“I am excited to be working and collaborating with the great Docker
community,” said Steve. “I feel very fortunate to work with two
transformative projects in Docker and MongoDB which have dramatically
improved the developer experience. I look forward to learning from this
great community and improving how developers and users interact with the
project.”
To introduce himself to the community, Steve (IRC handle: spf13), will
be doing a live Q&A session today at 11 a.m. PST on IRC in #docker.
Other Recent Changes to the Docker Project
These changes are the latest in a series of modifications to the Docker
project to enable it to grow and remain responsive to the needs of a
large and vibrant community and ecosystems.
Other recent changes include:
-
The announcement of an open API with “batteries included but
swappable” model for creating plug-ins to Docker;
-
Creation of an Open Docker Governance Advisory Board with
representation from vendors, contributors, and users, to provide a
forum to discuss the issues and formulate recommendations for those
issues. More details can on the DGAB’s charter can be found here: DGAB
Blog;
-
Publishing statistics and establishing SLAs around Pull Requests. The
latest results show that the median time to process all Pull Requests,
regardless of whether they are created by Docker, Inc. employees or
community members, is one day. Average processing times and merge
rates are comparable for Docker, Inc. and non Docker, Inc. employees;
-
Creation of open design sprint sessions involving a broad
cross-section of community members for developing functionality (e.g.
networking, clustering, trust and provenance) that cannot be easily
handled by external, large pull requests.