Симулятор ковида, или зачем нам нужны программисты

Листал тут твиттер и наткнулся на твит @ID_AA_Carmack, где тот пишет о том, как помогал привести в божеский вид симулятор распространения вирусных заболеваний под авторством Имперского Колледжа Лондона. Симулятор можно найти на гитхабе:

https://github.com/mrc-ide/covid-sim

Есть пара мыслей о полезности программистов во время массовых эпидемий. Во-первых: симулятор написан на банальном и тупом Си. Никаких модных концепций вроде объектно-ориентированного или функционального программирования, никаких этих ваших хаскеллей с монадами и прочей такой хероты. Просто банальный “процедурный” код, местами – в стиле книжки Numerical Recipes или, прости господи, в неподражаемом духе “you can write Fortran in any language“. Тупо – но просто и понятно:

Before the GitHub team started working on the code it was a single 15k line C file that had been worked on for a decade, and some of the functions looked like they were machine translated from Fortran. There are some tropes about academic code that have grains of truth, but it turned out that it fared a lot better going through the gauntlet of code analysis tools I hit it with than a lot of more modern code. There is something to be said for straightforward C code. Bugs were found and fixed, but generally in paths that weren’t enabled or hit. Similarly, the performance scaling using OpenMP was already pretty good, and this was not the place for one of my dramatic system refactorings. Mostly, I was just a code janitor for a few weeks, but I was happy to be able to help a little.

https://mobile.twitter.com/ID_AA_Carmack/status/1254872369556074496

Во-вторых: как вы думаете, сколько ссылок на гитхаб-репозиторий с этой моделью нашлось на самом айтишном и професси-анальном ресурсе Рунета (нет, не на ebanoe.it)? На том, где уже который месяц темы про ковид не вылезают из самых обсуждаемых, и набирают многие сотни и даже тысячи комментариев?

Угадали? Правильно – ноль!

Как мне кажется, в скором времени надо будет отлавливать всяких там фронтендеров, бекендеров, сеньоров с трехлетним стажем, дата-саентистов и прочих специалистов по бигдате и строго спрашивать – “А что ты сделал для борьбы с ковидом?” За ответы вроде “высрал сто комментариев на хабре”, “напечатал на 3D-принтере клапан для ИВЛ” и тому подобные – выводить в чистое поле к стенке отправлять санитаром в чумной барак.

2 комментария

  1. savant пишет:

    Справедливости ради, initial commit https://github.com/mrc-ide/covid-sim/commit/bd87d475563cd54978325bf73ce45e80a7c8de65 13 days ago.

    Скорее всего в паблике не было даже.