Brilliant work happening at GitHub, of course. Seeing the rise of the "primarily responsible person" is huge for us in our small company - we've found it's natural to work this way, without a label.
Admittedly I'm cynical, but how is a "primarily responsible person" different from a lead developer? It feels a bit like you're just calling things different to avoid manager-like names.
I am reminded of the Syndicalists in 1930s Spain. After their mini-revolution, they abolished money, hooray! The next day they introduced "tokens" so they could get anything actually done...
We use PRP in any situation where someone explicitly takes responsibility for an outcome, no matter whether the outcome is some software or a clean office or an accurate tax return.
Added: That's a little too glib, sorry. Let me try again: From my perspective, if there's something that needs to be done at GitHub there are a few possibilities:
1. It needs to be done and it's getting done,
2. It needs to be done and it's not getting done, or
3. It's bullshit.
Cases of #3 become obvious pretty quickly. The best evidence: Searching for ways to make someone do it because nobody stepped up.
Cases of #2 can happen for a bunch of different reasons, but malice, apathy, laziness, or incompetence are the least likely ones. The most likely: Not enough hours in the day or not enough people with the knowledge necessary to be worried. No matter the reason for #2, someone at GitHub who is worried will generally try to get others to share their priorities, by persuasion, by hiring, or by prototyping.
Or occasionally by just jumping up and down and wailing.
Sometimes the primarily responsible person isn't a developer on a given team. Especially at smaller firms, hats of responsibility are passed around to multiple members of the team, regardless of that member's particular talents/core competencies.
We call them project champions. I work in an agency model, so we have many clients who have many projects. The project champion usually knows the client, their wishes, etc - acts like a product owner (if you're familiar with the term from agile methods).
The product owner should be the person building the product and also be the facilitator for the client. This model of having non engineer/designers as project directors or whatever is broken.
Brilliant work happening at GitHub, of course. Seeing the rise of the "primarily responsible person" is huge for us in our small company - we've found it's natural to work this way, without a label.
Keep on putting out these fantastic slides, Zach.