When:
to
Room:
Room 1
Tags:
developer relations & integrations, drupal & open source 101
Track:
SVG
st icon_new brand
open web

The Art of Doing Less: Let the Community Code Your Module

The Art of Doing Less: Let the Community Code Your Module

James Shields (Lostcarpark)

The open web benefits from collaboration of many people on projects, but how can you encourage people to contribute to yours? After years of struggle, I recently stumbled on a formula for engaging other contributors, and have used it to develop a module with almost all of the development by other contributors.

Prerequisite
Some knowledge of open source contribution would be helpful.

To apply the techniques described, a good understanding of the project being developed is needed. It isn’t a magic bullet that allows a completely hands off approach.

A basic understanding of the Drupal contribution credit system is also helpful, but not essential.

Outline
I recently started a new Drupal module, and opened some issues to help guide my development process. After developing the first couple, I was shocked to discover one of my issues was assigned to another developer, and they had created a merge request. I only needed to suggest a few minor adjustments before it was ready to merge.

Since then,at least six other developers have contributed to the project, and have closed over a dozen issues without writing any additional code myself. Contributors have also jumped in on code reviews, helping move the project forward. I have since started applying similar techniques to other projects.

Some benefits of this approach:

- Increases engagements in open source projects
- Avoids the need to review your own code
- More eyes on the project, leading to better code quality and earlier discovery of issues
- Accelerates progress of project
- Builds up community of people knowledgeable about your project
- Encourages contribution, supporting the health of the open web
- Encourages developers to gain experience through contribution
- Expands pool of development knowledge
- Fosters community involvement makes your project

Learning Objectives
By the end of this session, you should understand:

- Open issues in a way that makes them appealing to contributors
- Collaborate effectively with contributors to resolve issues
- Structure your project to encourage community contribution
- Use the contribution credit system responsibly to support your project and recognize contributors

Experience level
Intermediate