When developers evaluate new technologies, one of the elements they often look at is the size and strength of the community surrounding that technology. “Can I get help and support from peers when needed?” It’s one of the reasons why open source technologies tend to be so popular. Conversely, technology vendors regularly signal their virtue with community numbers: “Our product is used by millions of developers, choose us!”
However, there is reason to be critical of this line of thinking. The activity of a core group, or indeed the vendor itself, may matter more to get great support than the sheer number of users. Most technologies are not subject to network effects: they don’t become inherently more valuable when more developers adopt them. Even in open source projects, there is often only a small number of core contributors. Furthermore, vendors may bloat the numbers they report: deliberately, or simply because they don’t have good data available.
At /Data, we’ve been maintaining and publishing estimates on the global developer community for a few years now. Our biannual survey also gives us a solid idea of how those developers are spread across various communities. So let’s see where some of the largest developer communities can be found and how powerful those communities may really be.
What do you mean by “community”?
The largest regions in terms of developer population are North America, with an estimated 4 million active software developers in mid 2018, and Europe (3.8M in the EU28). However, calling these communities is a bit of a stretch. Developers in these regions are fragmented across countries and cities, as well as technologies and languages. North America includes the relatively homogenous USA, but also various Latin American countries. Europe includes software powerhouses like the United Kingdom, but also smaller Eastern European countries. From the perspective of finding peers to support you (or talent to recruit), looking at small groups gathered in cities around specific technologies is more useful than considering the wider geography.
The largest developer program in our research, with over 10 million active users globally, is Google. Google is great at empowering and supporting their community through forums and the likes. This said, they also have excellent developer satisfaction scores when it comes to vendor-driven support of developers with documentation, tutorials and training, tooling, and so on. Google is the default choice for many developers; it’s not clear whether that is due to the strength of their community or due to the value they provide themselves. They of course offer a multitude of technologies, where experience in one product doesn’t necessarily translate into another. Perhaps it’s more correct to view them as a collection of communities.
What about different sectors of the software industry? More than 14 million developers are involved in creating web apps. Once again, we can wonder about the fragmentation in this community across technologies. A sector view may not be the right level of analysis.
Finally, we can look at a technology. There are over 10 million active Javascript developers, making it the most popular programming language in the world today. Here we may see a stronger sense of community, with forums, real-life groups, learning institutions and more being organised specifically around the language.
In short, when we say “community”, it’s not trivially clear what we mean by that. (Neither is “developer” for that matter, but that’s a story for another blog post). Community size is not necessarily an indicator of homogeneity, coherence or level of activity. That makes it less than straightforward to assess the value of a developer community.
How (not) to count developers
If you’re interested in estimates of developer communities, you will have no doubt seen very high numbers being floated. Developer tools routinely reports user numbers in the millions; communities who claim a broad reach, like Stack Overflow or Github, will report tens of millions of developers. At /Data, we are skeptical of such numbers, in particular if you intend to use them to make adoption decisions.
First, because it is not clear where each source draws the line in what they consider to be an (active) developer. Are IT professionals, DevOps, or sysadmins included? What about people who once made an account, but never actively used the product?
However, the bigger issue seems to be where such numbers are sourced. Most estimates floating around the internet are based on (unique) pageviews, downloads, IP addresses, and the likes. All of these are susceptible to a multiplier effect, not in the least due to multi-machine and multi-browser software testing, frequent cleaning of caches and cookies for testing, repeat downloads of developer tools, and development automation (e.g. build servers). Abandoned accounts may significantly skew the estimates as well. Sometimes, numbers we’ve come across seem to be based on nothing at all.
Measurements like that are only a vague indication of the number of actual active developers and therefore of the strength of the community. They tend to be not comparable across vendors. Not to mention that it is in the self-interest of the vendor to report the biggest number they can find. Indicators that indicate actual developer activity, like Monthly Active Users, are exceedingly rare.
Conclusion
Whether you’re a developer thinking about the direction of your career, or someone who is deciding on which technology to adopt, the question of how strong the supporting community is, is perfectly legitimate. To asses the true benefit of community, however, make sure to use the right scope and reliable, meaningful numbers. On our part, we will continue to provide you with our best estimates of active software developers, using sources that are direct evidence of recent coding activity.
If you are interested in having a look at a list of the largest developer communities in terms of active users have a look at the 1 Million Developer Club .