🔗 GitHub

Advent of Code Surveys: Results

About this survey

Enjoy yearly programming puzzels at Advent of Code ever since 2015! Since 2018 a community-run (unofficial) survey has been held. The data is available under the ODbL license on GitHub. Here we present summarized results since 2021. Old dashboards: 2020 (Reddit), 2019 (Reddit), and 2018 (Reddit).

Chart showing (top) used languages

The bar chart shows Python 3 as the absolute top language of choice, for many years already, but certainly in 2021. Rust is a clear second, JavaScript number 3. Python 2 is in steady decline over the years. Finally, a whopping roughly 20% had "Other" languages than the top 15 options. Overall however the languages of choice are fairly stable over the years. For full details on this graph and others you can toggle a data table (warning: that really gives you all the data!).

Chart showing the (top) used IDEs

The bar chart shows VS Code reigns supreme, with 40+% of respondents using it in 2021 (and not much less in previous years). Newcomer from 0.3% in 2019 to 3.2% in 2021 is Neovim! Perhaps that explains the fact that Vim itself (the second most popular option) declined by a similar percentage? Either way there's a steady top set of options over the years, in order: VS Code, Vim, IntelliJ, PyCharm, Visual Studio, Emacs, and Sublime Text. Finally roughly 15% of users each year they use some "Other" IDE not listed in the top.

Chart showing used (primary) operating systems

In order Windows, Linux, and macOS make up (very) roughly equal parts, representing nearly all respondents. WSL as a popular "Other" option is on the rise, but only 1.2% in 2021 had yet an "Other" language. The full data table (toggled below) does give cool insights in all the different options though!

Chart showing the reason for participating

This bar chart clearly shows very steady results over the years. Over 95% of the people do AoC "For fun", followed closely by "For a challenge" and "Improve skills". After that options decline in percentage a bit, but still significant percentages answered "Learn a new language", "Learn to code", "Add to resume", and "For leaderboards".

Note: "For Santa!" was not a default answer in the survey until 2019 onwards.

Chart showing participation in global leaderboard

Most people are not in it for the Global Leaderboard, as shown in this graph with mostly consistent results from over the years. Still a significant majority of respondents are folks who expect to get some amount of points on the leaderboard.

Chart showing number of private leaderboards one is involved in

About 70% of all people are in either 0 or 1 private leaderboards, split 50/50. After that it declines but even then roughly 2% have 4 or even 5+ private leaderboards they participate in.

Chart showing when respondents completed each of the AoC years

This stacked bar chart clearly shows that (logically) this survey is biased towards people who participate in December itself. Each year going back into the past, the number of people who participated in the event halves (some of them doing it "Later").

Line chart showing cumulative number of responses to the survey

This very straightforward line chart shows that all 4 survey years followed the same pattern: a huge bump after the survey announement, and a small boost around December 15th following the reminder.

Methodology

Look, I'll be honest: this survey was a spur of the moment thing that got out of hand. I do my utmost best to get decent data without too much bias and other typical problems. But it's a spare time effort, and I'm not a professional empirical evidence researcher by any stretch. Take the results with a grain of salt, speculate, enjoy the results, but don't draw important conclusions from it!

The survey has remained largely the same over the years, allowing for nice comparisons between the years. Almost all visuals above show "percentage of responses within that year". So "43.2% Python 3" means that out of all responses for that year, 43.2% indicated they used Python 3. This is better than absolutes, because the number of responses vary between years.

Bias

Take special care about the fact that there's heavy bias in the cohort surveyed. Most people came to the survey from either Reddit or Twitter, and this will skew the data accordingly. The more we can spread the word to a more representative AoC-user-base in the future years, the more interesting and correct the data becomes. But for now, remember that the results are about people that tend to see the survey around, not about "all AoC participants".

Bottom line

In short: enjoy these results! Responsibly, please. 💚