30 years of Python development visualized in 10 minutes

I made this and thought others here might find it cool, it’s a visualization of CPython’s commit history throughout the years made using gource. Avatars are pulled best effort based on names and emails using Github, falling back to gravatar.

You can visually see a lot of the big changes and how contributions to Python by various authors have changed over time. Some events that I could pick out really easily:

Sorry if someone has made something similar in the past and I failed to find it!


Nice! What do the different colors of the dots mean? I presume dots are files – is the size of the file (or the size of the diff, for that matter) represented at all?

I presume you’re aware that in the early years my contributions are over-counted, because people sent me patches via email that I manually applied. I think until 2000 (when we moved to SourceForge) only a handful people could commit to the repo, so the same thing applied. (Also we weren’t anticipating this kind of visualization. :slight_smile: )

1 Like

There’s a similar effect with the start of the Python 3 branch as well: we were using subversion at the time, and it didn’t have useful branch merging. The early Python 3 work was kept in sync with 2.5/2.6 using svnmerge.py, which would attribute all the merged changes to whomever ran it (usually me). I haven’t checked, but I expect my blue/green avatar starts making big bursts of changes in the 2007-2008 timeframe :slight_smile:

1 Like

The different colors represent a particular extension, e.g green is .c and the gray/blue is .py. I don’t think the size of diff is visualized, only the files touched.

Aah I didn’t know that. I did try to correct a little for the “Patch by …” used in mercurial times but that’s the extent of it. As Thomas points out, the svnmerge based giant commits aren’t attributed correctly either.