Французский нейробиолог и программист INRIA Николя Руже запустил челлендж Ten Years Reproducibility Challenge, чтобы выяснить, чьи программы работают и через 10 лет, а чьи уже не запускаются.
Событие было приурочено к 1 января 2020 года, когда поддержка языка Python 2, популярного языка в научном сообществе, завершилась. Сейчас разработка продолжается в Python 3, запущенном в 2008 году, но эти две версии настолько различаются, что код, написанный в одной, может не работать в другой.
«Десять лет – это очень долгий срок в мире программного обеспечения», - говорит Виктория Стодден, изучающая воспроизводимость вычислительных программ в Университете Иллинойса в Урбана-Шампейн.
В челлендже участвовало 35 человек. Из 43 программ, которые они предложили воспроизвести, 28 штук специалисты сумели запустить. Журнал ReScience C начал публиковать эти работы в начале 2020 года. Используемые языки программирования варьировались от C и R до Mathematica и Pascal. Один участник воспроизвел не код, а молекулярную модель, закодированную на языке разметки системной биологии (SBML).
Подобно археологическим раскопкам в эпоху цифровых технологий, опыт участников предлагает стратегии для максимального повторного использования кода в будущем. Одна общая проблема заключается в том, что ученым, стремящимся к максимальной воспроизводимости, необходимо найти документацию, которую не так просто достать, особенно доя мертвых языков программирования.