4 ms·
That alternative definition seems less useful, because quite often there are two people who can individually maintain a project, and in that scenario the bus fa
by ebingdom 5y ago
That alternative definition seems less useful, because quite often there are two people who can individually maintain a project, and in that scenario the bus factor is 0 even though there is a risk that both of them will leave the project.
- saulrh 5y agoThese two measures are probably ended up conflated because they're two ends of the same metric. "How many people need to be hit by a bus", which for simplicity I'll call the "bus factor", measures unusually high levels of resilience, but it doesn't go lower than 0 so it can't measure how fragile a fragile project is. "How many people are indispensable", which for simplicity I'll call "inverse bus factor", measures unusually low levels of resilience, but it doesn't meaningfully go below 0 so it can't measure how resilient a resilient project is. The thing is, a bus factor >= 2 necessarily indicates an inverse bus factor = 0 (if you need to hit two people with buses to take the project down then nobody is indispensable) while an inverse bus factor >= 1 necessarily indicates a bus factor = 1 (if anyone exists that is indispensable, then hitting exactly them with a bus takes the project down). In other words, bus factor = 1 and inverse bus factor = 1 could be viewed as being the same point in the middle of a line on which all projects fall, same way zero is the center between positive and negative numbers.
- dTal 5y ago>same way zero is the center between positive and negative numbers. More like the way 1 is halfway between 0 and infinity. I think you're nearly there, and the answer to the dilemma is that fractional bus factors are possible. A bus factor of 0.5 means there are two indispensable people. We might disambiguate the two conflicting definitions by renaming them with suitably inverse words - "redundancy" and "fragility" perhaps (though I suspect the latter is unneccesary). This is basically the terminology we use for RAID arrays and servers.
- lioeters 5y ago> 1 is halfway between 0 and infinity That would be true if "infinity" meant 2.
- saulrh 5y agoI agree that fractional bus factors would be better if we could completely redefine the metric, yes - they do a much better job conveying the fact that doubling your bus factor does way more than halve your likelihood of actually getting stopped by losing a contributor. I was stuck reinterpreting existing definitions when I wrote that post, though, so /shrug