вторник, 20 марта 2012 г.

Наблюдения о punchcard'ах некоторых проектов, или Чем занимаются на досуге разработчики GHC?

Бесцельно ползая по github'у длинным вторничным вечером (уф, что-то давненько не случалось таких вечеров!), наткнулся на любопытные, как мне кажется, закономерности в punchcard'ах некоторых проектов.

Punchcard — это декартова плоскость, где по одной оси идёт время суток, а по другой — день недели. Размер точек на пересечениях дня и времени показывает, как много коммитов было сделано в такие время и день. В каком-нибудь вялотекущем любительском проектике punchcard будет содержать всего пяток точек, в то время как в огромном проекте точки почти равного размера будут равномерно распределены по всей плоскости.

Итак, поехали!

Начнём, пожалуй, с punchcard'а GHC, The Glasgow Haskell Compiler:


GHC является академическим проектом, и пилят его, судя по всему, по большей части в рабочее время, с восьми до пяти. Ничего интересного.

По крайней мере, пока вы не посмотрели на punchcard PostgreSQL:


Теперь понятно, чем занимаются разработчики GHC, когда они не на работе ☺

На самом же деле PostgreSQL является СУБД, разрабатываемой сообществом без поддержки корпораций (как в случае с MySQL), так что такая картина вполне ожидаема.

А что же со светом наших сердец — ядром Linux?


Честно говоря, меня такая картина шокировала. Да, я в курсе, что многие разработчики Linux работают в Red Hat и потому в основном коммитят в рабочее время, но чтобы эти коммиты составляли настолько заметную часть общего потока… Весьма, весьма неожиданно.

После Linux моё внимание, естественно, привлекла GCC, GNU Compiler Collection:


Судя по картинке, разработчики GCC все до единого садятся за компьютеры в семь утра, работают до одиннадцати, обедают, потом работают до часу ночи и валятся спать. Каждый день в полночь происходит стресс-тест git'а и прочей инфраструктуры — все коммитят всё, что попалось под руку (отсюда красивенький столбец слева). Суббота и воскресенье — прогулки^Wпоездки на конференции. Суровые программисты на Си, чо. ☺

Вся эта красота и равномерность заставила меня пойти искать что-нибудь этакое, и вот результат:


Это punchcard Clojure, диалекта Lisp, ориентированного на JVM. Проект, насколько мне известно, начинался как хак, но быстро обрёл популярность и сейчас является, наверное, самым живым и бурно развивающимся Лиспом. Собственно, по картинке это сразу видно: народ пилит и пилит код, так что коммиты никак не упорядочены. Пробелы в районе пяти–шести утра — это, судя по всему, моменты, когда организм не выдерживает гонки и просто выключается на сутки ☺

Очень жаль, что на github'е нет зеркал таких проектов, как zsh, vim, urxvt, Firefox, mutt и прочих — я бы с огромным удовольствием полюбовался на их статистику. Также прошу прощения у тех читателей, кому на протяжении первых пары абзацев не хватало картинок — я честно хотел вставить туда punchcard одного из моих проектиков, но github сказал, что «this graph is not avaliable yet» ☹ Напоследок, если кого-то это раздражает — извините за обилие смайликов.

P.S. (Точнее, P.P. — post postum): это сотый пост. Ура!

Копируете статью — поставьте ссылку!

8 комментариев:

DemAS комментирует...

А с помощью его получены такие картинки ?

Minoru комментирует...

С помощью веб-интерфейса github.com. У каждого проекта есть вкладка Stats & Graphs, где приводится всякая статистика, в том числе punchcard. Возможно, что-то подобное можно рисовать какими-нибудь standalone утилитами.

Анонимный комментирует...

Спасибо, интересное наблюдение!

F@stto комментирует...

А сейчас на github punchcard не работает? прошелся по проектам, везде написано not avaliable yet - третий день подряд наблюдаю... раньше не замечал (не смотрел просто)

Minoru комментирует...

Да, многие графики уже давно недоступны — даже когда я этот пост писал, нельзя было посмотреть punchcard'ы для более мелких проектов. Не знаю, почему так.

F@stto комментирует...

Только что зашел на github - все, в графиках вкладка punchcard исчезла совсем... жалко

F@stto комментирует...

Вау, на житхабе новые графики, работает все! + добавлены новые возможности.

Minoru комментирует...

И правда! Traffic graph пока что выключен, потому что нашли какой-то баг, но в остальном всё работает. Круто!

Отправить комментарий

Примечание. Отправлять комментарии могут только участники этого блога.

 
Blogger logo Debian logo Creative Commons License FeedBurner Subscribers Counter