Building and Maintaining a Project Community with Github

github.com has taken open source by storm, but it’s more than just
a code repository with the latest hot source control system. It’s
a new way of working with open source projects.

The web-based social aspects of github can change the human and
technical dynamics of working on open source projects. Some of the
issues I’ll discuss include:

Easier access to code means lower barrier to entry means more
people submitting patches. This is a boon, and brings challenges.

People seem to expect patches to be accepted because of the ease
with which change sets are created. These expectations may clash
with project goals.

Watching the github fork network lets you see what other people
are doing with their forks. It allows me as a project admin to see
what people are doing with the code.

New workflows are required. A branch and merge strategy for
development is crucial.

Projects need a guidemap to tell people what to do, because people
may think it’s just a simple matter of creating a fork, making a
change, and saying “Here’s my work, now integrate it.”

Project branches can easily become large, hard-to-handle change
sets. Less care and thought is put into change sent back to the
project because merging is so easy. Contributors still must work
together to coordinate work.

Discussion of patches has moved from the mailing list to the
change request itself. This can diminish visibility and discussion.

I’ll discuss these and other aspects of community and project management and give examples from my own experiences migrating existing projects to github.

People planning to attend this session also want to see:

Andy Lester

petdance.com

Andy Lester (@petdance) has
been a business programmer for over two decades. His first book,Land The Tech Job You Love, on
job search strategies for programmers, sysadmins and other technical
people, is published by Pragmatic Bookshelf.