The PHP podcast where everyone chimes in.

Originally aired on

June 22nd, 2015

023: PHP's Major "Bus Factor" Problem

Inspired by a lively Open Spaces session at php|tek 2015, we discuss how PHP's ecosystem could be threatened by a not-so-obvious bus factor and what we can all do to keep things thriving.


How the bus factor may negatively impact the PHP ecosystem Show Summary


  • Definition of the bus factor
  • Samantha discusses her talk at php|tek 2015 "Open Sourcing Teams", which provided the inspiration for this podcast topic.
  • The panel quickly decides that 'getting hit by a bus' is unnecessarily morbid. For the rest of the podcast, we can read 'getting hit by a bus' as 'retiring' or 'winning the lottery' :)
  • How do we measure/express bus factor - does a project with 2 crucial contributors have a bus factor of 2 or 0.5? The panel agrees on 2. A low bus factor is bad, a high bus factor is good.

Which important PHP projects have a low bus factor?

The panel discusses some popular PHP projects and their maintainers/contributors:

Do these maintainers represent a bus factor of one in the context of these projects?

How does over-reliance on one individual impact developers using a framework/platform?

  • If we use these tools in (commercial) projects, there is risk associated with uncertain future of the project
  • Reliance on a single maintainer does not represent the only risk associated with building on top of open source frameworks/packages
  • One of the advantages of commercial software backed by large companies/organizations is greater stability in this respect

How do we evaluate open source software for use in projects?

  • Quality of documentation
  • Size/strength of community - network effects
  • In a worst case scenario (e.g: the project is abandoned), could we maintain a fork?

How can we identify projects with a low bus-factor?

  • This is a hard judgement to make
  • The majority of users/developers are not sufficiently involved in the PHP community to make this judgement
  • Sometimes projects fail/disappear/fall out of favor due to other reasons (osCommerce and Lithium are cited as examples)
  • High bus-factor does not guarantee stability

How can we mitigate against this?

  • Projects with clean standards-compliant code will be easier for others to maintain
  • Projects where the reasoning/philosophy behind the project is well explained will be easier for others to maintain
  • One reason a project maintainer may be forced to step away is financial constraints. In the Ruby community, they attempt to mitigate this risk against core projects with Ruby Together
  • Form/encourage community around projects and contribute to projects
  • PHP Mentoring
  • Companies that depend on open source projects should contribute to those projects - the cost to businesses of contributing now is far smaller than the cost of an important project that they depend on disappearing in future
  • Developers and businesses should support open source projects e.g: by buying licenses for their premium/commercial services
  • Project maintainers should welcome help and contributions from others
  • Project maintainers should produce good quality documentation
  • Project maintainers should produce contributing guidelines

Does PHP Internals have a low bus factor?

  • PHP Internals has many maintainers and contributors, but some specific components have serious problems. For example:
    • PDO does not have an active maintainer
    • mcrypt does not have an active maintainer

Developer Shout-Out

Thank you, Derick Rethans for all your contributions to the PHP community. A $50 Amazon gift card from Laracasts is on its way to you.

Shout-out sponsored by Laracasts


It's like Netflix for developers.


Davey Shafik

Chris Tankersley

Michelangelo van Dam

For passionate, professional on-site training or quality development consultancy, please visit If I find time I write some interesting articles on my blog I tweet a lot about PHP, quality and other (interesting) stuff, so follow me on Twitter. And if you want to experience a great local, community driven conference that has people talking about for months (even years), follow PHPBenelux on Twitter to get the latest news.

Show Notes Credit

Chris Shaw

Thank you Chris Shaw for authoring the show notes for this episode!

If you'd like to contribute show notes and totally get credit for it, check out the show-notes repo!