Inscreva-se no nosso blog

bus It's a pretty violent metaphor, this notion of what happens to your open source software project if one or more of its members might get hit by a bus. Or a truck. Or whatever motor vehicle of doom happens to be barreling down the road of fate. At first thought, one might simply want to urge people to look both ways when crossing the street.

But the bus factor is a real concern for many open source projects, because too often a lot of the work finds itself in the hands of just a few people, who in turn become very critical to the project's success.

Before you dismiss the idea of the bus factor, you should be aware that there are many far more realistic scenarios that can invoke this situation. Euphemistically (and much less more violently), the term "lottery factor" can be used as a substitute. Someone winning the lottery and running off to Bora Bora isn't very realistic either, but getting a new job, starting school, building a new relationship… there are countless real-life situations that can cause a person to leave or reduce their presence within an open source project.

Is There a Problem?

The first thing you need to determine is if you have a bus factor problem. Anecdotally, your project may be small enough for you to look around and imagine "what would happen if so-and-so left?" If you think the project could survive or even be okay without that person, then they won't count against your bus factor. What you are looking for is the number of people who do have critical roles in your project—to the point where the project might have to make adjustments for the departure of one, but the project would be seriously hurt by the departure of all.

The good news is, the more people you find, the better off your bus factor becomes. If there are five people who maintain critical roles in your project, your project has a bus factor of 5. That means all five of those folks would have to leave at the same time to kill or seriously wound your project's progress.

But, if there is just one or two such people, who seem to be doing a lion's share of effort in your community, then your bus factor is lower, and you have a potential disaster on your hands.

One quick way to mathematically determine your community bus factor is to examine how many project files a given contributor has worked with over a set period of time (6-12 months works for me). If a person has worked with over 50% of project files, that person should be classified as a critical contributor.

Raising Your Bus Factor

The simplest was to alliviate this problem is to spread the work around. But getting to that goal can take many paths.

You first need to examine why a person has ended up in that position to begin with. Are they really the only one who knows how to solve certain problems, or did everyone else just see their talent and hand work off to them? Motivations are key here, because sometimes people want to be the Important Person and sharing might not be in their personal interests, even though it will always be in the greater interest of the project.

If the person is a critical contributor, the community needs to have a frank discussion with the person to determine how best to share what they know and get more work delegated around the community. Also look for other methodologies, like agile development, that tend to disseminate workloads as a matter of course.

Avoid egos as much as possible. Think about the greater good as you build concensus and work to raise your bus factor and avoid the roads of fate.

Image by Max Pixel under CC0 Public Domain license.


Sobre o autor

Brian Proffitt is Senior Manager, Community Outreach within Red Hat's Open Source Program Office, focusing on enablement, community metrics and foundation and trade organization relationships. Brian's experience with community management includes knowledge of community onboarding, community health and business alignment. Prior to joining Red Hat in 2013, he was a technology journalist with a focus on Linux and open source, and the author of 22 consumer technology books.

Read full bio

Navegue por canal

automation icon

Automação

Saiba o que há de mais recente nas plataformas de automação incluindo tecnologia, equipes e ambientes

AI icon

Inteligência artificial

Descubra as atualizações nas plataformas que proporcionam aos clientes executar suas cargas de trabalho de IA em qualquer ambiente

cloud services icon

Serviços de nuvem

Aprenda mais sobre nosso portfólio de serviços gerenciados em nuvem

security icon

Segurança

Veja as últimas novidades sobre como reduzimos riscos em ambientes e tecnologias

edge icon

Edge computing

Saiba quais são as atualizações nas plataformas que simplificam as operações na borda

Infrastructure icon

Infraestrutura

Saiba o que há de mais recente na plataforma Linux empresarial líder mundial

application development icon

Aplicações

Conheça nossas soluções desenvolvidas para ajudar você a superar os desafios mais complexos de aplicações

Original series icon

Programas originais

Veja as histórias divertidas de criadores e líderes em tecnologia empresarial