A real-life friend passed this link to me yesterday, and I thought it was appropriate to share with the phpBB community, since it deals, in part, with the development cycle of open source projects.
The link is a talk sharing a title with this blog post, given by two Google engineers at their I/O 2009 conference.
When they began to talk about the “bus factor” of a project (around the seven minute mark), my ears perked up a little bit, because, for the lifespan of phpBB, we’ve had a pretty darn low bus factor. If we go back to the code swarm released last summer, we see that most of the time, developers simply huddle around one lead contributor.
That lead contributor has been our “bus factor” of one.
Moving forward, we really want to get the bus factor much higher. We are working to achieve this in two main ways:
Writing more unit tests to help define what individual functions should do
Writing further specifications to identify what aspects broad features should have
Also, with our switch to JIRA and Git, all developers patches are available (at least briefly) for external review even before they make it into the main “develop-olympus” version control branch.
We’ve expanded the development team as well. We recently added nickvergessen and rxu to the development team, to bring our ranks to nine, the largest phpBB development team in my memory.
If you would like to help, initial documentation on writing Unit Tests is available on our Wiki and we would really appreciate your help in increasing our coverage. If you have a patch with new tests or a bugfix just create a ticket on our tracker. If you would like to participate in the development process of phpBB 3.1 or phpBB 4, go to area51 and post your ideas, RFCs or present patches for new features for discussion.
The Development team have decided to move the bug trackers for phpBB to Atlassian JIRA, we undertook this change after evaluating the options we had available and settled on JIRA as the best solution. phpBB has been using custom written bug tracker software for as long as I can remember, our custom software is simple and it works but it has deficiencies. Instead of updating and maintaining our own bug tracker we’ve decided to use an existing solution, after all we’d rather spend time developing phpBB than developing the tools to manage phpBB development!
Using JIRA we’ve got a number of things we wanted for the existing tracker right out of the box, for example now you can submit not only bugs but also improvements and feature requests. Now before everybody rushes off to the tracker to submit a feature request for kitchen sinks we have a few requests of our own, unless you have a decent proposal already (something more than one sentence) ask on Area51 and discuss it with community members and flesh out a proposal which fully explains what you’d like to add and why. If you have a patch or a Git branch we can pull from for either bugs, features or improvements even better! We’ll be revising much of the development section of the website to reflect the move to Git and JIRA as time permits.
The big deficiency with our tracker was a new tracker instance was required for each software branch, but bugs in branches with common ancestors may very well be shared. Now JIRA allows us to track the status of bugs in multiple branches of phpBB. Also included with JIRA is the ability vote on tickets encouraging us to fix them faster or implement a feature request sooner, it allows us to roughly gauge popularity of a ticket and but greater number of votes will not necessarily mean something is implemented sooner. We gain the ability to track dependencies between tickets, so we know which tickets need to be resolved before others can be tackled.
In the future we will also be using other development tools by Atlassian, but there is no time frame for when they’ll be installed.