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

Время историй

Мое время в качестве исследователя и разработчика программного обеспечения в области радиолокационного моделирования было несколько разочаровывающим по нескольким причинам:

  • Большую часть времени тратится на кодирование чего-то, что никто, кроме меня, никогда не будет использовать.
  • Если результаты будут хорошими, вдруг люди захотят, чтобы я что-то смоделировал для них. (По аналогии с печально известным «У меня есть идея приложения, и за 5% вы можете написать все это»)

Худшая часть? Вероятно, последняя пуля. По сути, вы становитесь помощником в их исследованиях, при этом у вас нет времени на собственные исследования, что совсем не весело. По сути, вы превратились в симуляционную обезьяну и часто с покорностью соглашаетесь: «Позвольте мне запустить это для вас».

Проблема

Так почему же никто просто не использует мой код, хотя это явно принесло бы им пользу? В разговорах с коллегами одна из повторяющихся тем заключается в том, что настройка среды для запуска кода слишком хлопотна.

Я согласен.

Как правило, в академических кругах вам не платят за создание красивого пользовательского интерфейса. Сроки сжаты, а результат должен быть. Интерфейса командной строки достаточно, но его утомительно использовать, и вы должны знать, что вы делаете, чтобы он работал. К сожалению, это также требует времени, которого ни у кого нет.

Развертывание такого кода очень болезненно даже для меня как автора кода. Docker может показаться здесь хорошим решением, но на самом деле он просто добавляет еще один уровень сложности для тех, кто хочет попробовать код.

Идеальная ситуация

Я думаю, что я и многие мои коллеги сочли бы очень хорошим способ поделиться своим кодом и сделать его удобным для них без особых усилий.

Пользователи моего кода хотят установить некоторые входные параметры и запустить симуляцию. Когда симуляция завершена, они получают уведомление по электронной почте или в Slack, и данные готовы к загрузке.

Мне бы понравилась такая система, потому что она приносит пользу мне и моим коллегам. Это беспроигрышная ситуация: я могу выполнять свою реальную работу, а мои коллеги могут получать прибыль от моей работы над инструментами моделирования.