В силу специфики научной деятельности мне нужно замерять время работы алгоритмов и строить по получившимся данным графики. Раньше процесс выглядел так:
- Алгоритм подготовлен.
- Запуск эксперимента, выходные данные идут в лог.
- Перенос данных в эксель.
- Постобработка: разбить, группировать, отсортировать.
- Строим график, а он кривой — ошибка в эксперименте, переход на шаг 1.
Первая проблема — просто посмотреть как прошел эксперимент занимало очень много времени.
Ладно, пережили, графики построили, время идет, готовим публикацию и выясняется, что в результатах экспериментов не сохранены некоторые параметры запуска алгоритма. Не доглядел. Это уже вторая проблема — хранение метаданных об эксперименте.
Меня как программиста всегда раздражала необходимость «ручной работы». Да график готов, но мы еще что-то вручную подвинем, там перекрасим, тут подрисуем. Каждый раз когда приходят новые данные этот процесс приходится повторять. Третья проблема — перестроение графиков должно быть полностью автоматизированным.
Для решения озвученных проблем я придумал формат хранения данных в JSON и назвал его Measurelook. В этой статье я расскажу о Measurelook и о его применении в подготовке научной публикации.