The latest entry in GitHub’s State of the Octoverse series was a massive undertaking based on a survey of over 12,000 developers, and separately analyzed data from 4 million repositories including many from paid GitHub Team or Enterprise Cloud accounts.
One theme that runs throughout the findings is that developers who spend most of their time doing software development for a private company’s repositories (47%) or are focused on an open source project while working for a private company (5.5%) behave differently than those other professional developers (13.5%) and students (29%) that are still engaged in the open source community.
Two-thirds (67%) of the developers surveyed said the ability to innovate without legal risk is an important priority. Yet, only 24% thought government investment in and contribution to open source is important.
In between these two public policy goals, almost half (47%) supported healthy online collaboration, and efforts to ensure that everyone has an equal opportunity to become a developer. GitHub’s analysis provides additional evidence that adding and improving on existing documentation can help developers become more productive, writing code quicker while sustaining lasting communities.
Private versus public, work versus open source. Meritocracy versus justice. These universal memes just won’t go away.
The findings build on previously peer-reviewed work, which includes the foundations of the popular DORA metrics. However, we can’t specifically quantify a lot of the conclusions from the report. In the spirit of open science, we encourage GitHub to release the survey data to the public so researchers can attempt to replicate and test, so the world can further the understanding of the developer universe. With that caveat, here are some takeaways:
Write and Ship Code Faster
- Increased use of automation to ship code increases software delivery performance for developers that primarily work on projects at private companies. For everyone else, the statistically significant benefit is that they will more often feel fulfilled.
- The median time to merge a pull request for an open source project managed with a paid GitHub account has dropped from 14 hours in 2019 to 13 hours in 2020 to 10 in 2021. Meanwhile, for all open source projects the time to merge a PR went from 11 to 10. Adoption of GitHub Actions appears to be helping make companies more efficient.
Create Documentation to Support Developers
- Codes of conduct (CoC) and contributor guidelines are hard to find except in the largest open source projects. When GitHub reviewed over 4 million public and private repositories, it rarely found examples of these documents. Let’s assume that only projects that have more than five contributors need a CoC. Even then, only 7% of open source repositories that are not managed by an organization with a paid GitHub account have one. The figure jumps to 67% among open source projects with over thousand contributors that are managed by an organization with a paid GitHub account. These projects are usually run by a Big Tech company or a foundation.
- While 24% of open source projects managed with a work account have contributor guidelines, only 6% of other projects do. Meanwhile, almost by definition over 86% of open source projects have a README file only 15% of non-open source work projects have one.
- The developers focused on work projects see a direct benefit when clear is available documentation, but there is no benefit for the other open source developers.
- Respondents were asked how often documentation is a) easy to read for people outside the project or team; b) makes dependencies clear; c) describes how each part of the code works.
- The benefits are being empowered to work (e.g., your team allows you to make decisions) and spending more time making progress towards your goals and doing work.
- All is not lost for developers focused on non-work open source projects. Developers that say it is easy to find a project’s information also say they are more likely to be making progress towards their work-related goals. The ability of a new contributor or new hire to easily find solutions or know where to go for help does not seem to be directly related to the ability to make progress towards your work goals, but this may be a proxy for something that was missing in the researchers’ analytical model.
How Communities Sustain Productivity
- Just like clear documentation, corporations have more of an incentive to promote clear governance. Among the developers that mostly work on projects with private companies, there is a notable benefit to knowing who has influence over a project’s decisions and the authority to perform tasks like making commits. The reward is that these developers are more likely to identify with the team, community and its mission.
- The existence of clear documentation among the “work” developers may increase improve governance likelihood increases if by describing who is responsible for making commits and influencing decisions. If you spend most of your time on community open source projects, then you are more likely to say your team operates by sharing responsibilities, has cross-functional collaboration, and generally promotes what has been called a Westrum organizational culture.
- GitHub’s growth may be slowing in terms of both new uses and contributors to projects. The number of new user accounts grew 28% compared to last year, which is actually a slowdown compared to previous years. China notably saw below-average growth at 16%.
- Recruitment of first-time contributors appears to have cooled off as well. Overall, there were 8% more new contributors in 2021 than in 2020. If there were 3 million new first-time contributors, and there were 16 million new GitHub accounts, then 19% of new GitHub users are first-time contributors. That is an open source community metric developer advocates and others can use for benchmarking purposes.
- The number of GitHub user accounts appears to only be growing as fast as the worldwide developer population SlashData’s 21st State of the Developer Nation Report estimated that globally the number of developers rose 28% in the last year.
Estimating Developer Markets
Mentioned earlier in the article, SlashData’s 21st State of the Developer Nation Report shows adoption of different programming languages has changed over time. GitHub’s report publishes at least one similar-looking chart, but their data did not come from the survey results.
SlashData’s original reports published findings based on the number of developers that use each language, not the percentage of developers worldwide that use each language. The difference is important because the number of developers continues to grow. While the size of the total market may increase all the time, that does not mean a language/technology’s position or rank changes. Sometimes these things matter in terms of vanity metrics, other times they’re applicable to financial analysis. Just something to pay attention to.