• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

Нужно ли химику программирование?

Ремесленное образование и проблема цифровых компетенций: чему действительно надо учить студентов

ISTOCK

Пандемия резко ускорила цифровизацию во всех областях общественной жизни — от ритейла и рабочих процессов до образования и научных исследований. Не осталась в стороне и НИУ ВШЭ. Профессор базовой кафедры органической химии Института органической химии им. Н.Д. Зелинского РАН, доктор химических наук Игорь Свитанько предлагает обсудить, чем на самом деле является цифровизация научного процесса, какие цифровые навыки и знания нужны студентам-химикам и почему программирование явно не входит в их число.




Игорь Свитанько,
профессор базовой кафедры
органической химии
Института органической химии
им. Н.Д. Зелинского РАН

Определимся с терминами

В СМИ под цифровизацией понимают всеобщий переход населения на использование информационных технологий. В фундаментальной науке выражаются более осторожно — применение ИТ в повседневной научной практике. 

Попробуем расшифровать. С населением, наверное, всё правильно. Идёт активный перевод тех, кто ещё пытается вести бюджет на бумаге, ходить с квитанциями в банк, записывать пароли на обрывке, пришпиленном к монитору, со страхом глядящих на процедуру онлайн-заказа продуктов и рвущихся в Ашан, на использование компьютера, смартфона и интернета. И происходит это в целом успешно.

А вот с учёными далеко не всё так гладко. Особенно с учётом их среднего возраста. Заставить 50-60-летнего профессора, знающего, как форматировать текст в Word (про форматирование стилями даже упоминать не будем), и посещающего Google да одну-две удобных ему баз данных, изучить ещё пяток источников научной информации и, к примеру, Photoshop для подготовки изображений в статьи — задача архисложная. Утверждаю это как эникейщик с 30-летним стажем. А вопрос, сколько оперативки в компьютере, за которым он ваяет эту статью, и почему система так тормозит, может счесть и оскорблением — сапоги не должен тачать пирожник…

Ремесленник перед экраном

За все высокоматематизированные науки не скажу. Изложенное ниже относится к фундаментальной химии — науке, в основном ремесленной, где результат прямо пропорционален прямоте рук и качеству руководящего ими мозга (оба компонента не обязательно находятся в равном объёме). Повторю: ремесло это определяется практическими навыками, вытекающими из преобразования информации в умения (компетенции, если кому так удобнее).

Если кто считает, что теоретические изыскания в химии существуют сами по себе, без практической валидации и последующих приложений, то давайте я попробую свои аргументы против таких постулатов обосновать административно. До 2019 года я — завлаб Лаборатории математической химии и компьютерного синтеза ИОХ РАН (с 2019 переименована в Лабораторию молекулярного моделирования и направленного синтеза). Имею право на такие утверждения?

Информация берется из двух источников: существующих публичных и непубличных данных (это не обязательно базы данных, но и разговоры, доклады на конференциях, чтение статей, причём не обязательно онлайн). И из результатов собственных исследований химика. При этом существенная часть естественнонаучной практики — сравнение своих данных с имеющимися. А внятное описание собственных результатов и выводы из проведённого сравнения — это публикация. Оригинальное и актуальное описание плюс интересные или прорывные выводы дают высокую цитируемость и повышают вес учёного.

Роль цифровизации

Осталось выяснить, где тут место для цифровизация (на базе цифровой грамотности)? В обоих случая она вполне уместна.

Сейчас для поиска информации необходимо уметь пользоваться базами данных и агрегаторами, такими как Web of Science, Scopus, PubMed; архивами препринтов; сайтами издательств и отдельных журналов; социальными сетями для учёных (Academia.edu, Research Gate); ресурсами практических научных или медицинских исследований типа Clinical Trials и т.д., и т.п. При этом наиболее эффективен машинного поиск, использование скриптов или парсеров.

Собранную информацию лучше всего обрабатывать и организовывать, применяя существующие профессиональные системы. Многие пользуются коллекционными оболочками Mendeley/EndNote, либо конкурентами типа Zotero.

Ещё сложнее ситуация с программной обработкой результатов экспериментов. Здесь в каждом разделе химии свои профессиональные системы. Обычно их пишут большие коллективы программистов, размер их кода сопоставим с Windows, а стоят они ну очень больших денег. 

Это структурные системы типа Gaussian. Статистические системы связи структура-свойства для биологически активных соединений: Sybil, PASS, Shrödinger. Десятки квантовохимических систем, помогающих понять, почему реакция идёт так, а не иначе. Наконец, профессиональные системы определения структуры по спектральным и рентгеновским данным — чтобы их освоить, нужно долго учиться с ними работать.

Далее — сравнение результатов эксперимента и ранее собранной информации при помощи опять же созданных профессионалами систем. Например, в области докинга (предварительном моделировании заданной активности) биологически активных веществ уже десятилетие властвует российская разработка LeadFinder (Институт органической химии им. Н.Д. Зелинского РАН). На её юстировку потрачено 10 лет, и она до сих пор продолжает совершенствоваться. Подобные системы есть в каждой области физической химии. Использовать их можно и нужно обучаться, — это и будет цифровая грамотность химика.

Цифровизация фундаментальной химии

Для чего написано всё предыдущее — про профессиональные системы, которым надо учиться долгие годы? Всё просто: учиться-то надо студентам, и именно они, обладая цифровой грамотностью, как раз и будут менять ментальность академической среды в сторону всё большей цифровизации.

Базовые навыки поиска информации. Её обработка системами, которые сконструированы не на коленке, а крутыми профи. Осмысление и масштабирование (машинное обучение) собственных практических результатов при помощи профессиональных систем сравнения с результатами других учёных. А затем, как следствие, корректное планирование эксперимента посредством предварительного моделирования (не обязательно компьютерного!) путей получения нужного вещества. Всё это и есть пути цифровизации фундаментальной химии.

Цифровизация и цифровая грамотность студентов

Вот мы и добрались до определения места цифровизации в учебном процессе. Конечная цель обучения обозначена выше — это цифровизация научного исследования. Понятно, что она произойдёт лишь на основе тотальной цифровой грамотности, которой будет обладать каждый выпускник.

И тут натыкаемся на странную и почему-то никем не оспариваемую догму: цифровая грамотность (в части базового образования) равна навыкам программирования. На этом постулате построено преподавание информатики на первом курсе химфака МГУ — вместо обучения научной графике и практической вычислительной химии. На нём организован процесс донесения цифровых навыков до студентов всех специальностей на всех факультетах НИУ ВШЭ.

Но зачем среднестатистическому химику начальные навыки программирования? Они не помогут программировать сложнейшие специальные системы и разбираться в их коде. Это нереально. Вот и выходит, что химик-программист, как морская свинка, — и не морская, и не свинка.

Либо химик профессионально занимается химией, либо столь же профессионально — программированием (но тогда он уже не химик в стандартном понимании). Задел на будущее развитие химии? Тоже ошибка. В будущем специальное химическое программное обеспечение станет совсем сложным, так что к нему не пристроишь никаких собственных плагинов, как сейчас.

Результат применения указанной выше догмы в учебном процессе сформулировать просто:

Постулат 1: учебный план не резиновый.
Следствие 1: если надо что-то добавить в учебный план, из него надо что-то выкинуть.

Постулат 2: в учебных планах, как правило, информатика, базы данных и программирование (базовый Python) находятся в одном блоке. 
Следствие 2: откуда будем изымать часы на программирование? Из информатики и курса накопления и обработки информации в этом же блоке; из часов для обучения существующим общепринятым системам — в пользу изготовления собственных.

Методика, на мой взгляд, порочная.

Чему должна учить информатика?

Главная задача курсов информатики в естественно-научной и не слишком математизированной области (химии, биологии, географии, далее везде — рискну расписаться за них тоже) — это донесение до пользователя, сохранение, обработка и применение в научной практике накопленных человечеством знаний с помощью созданных профессионалами аппаратных средств, программных продуктов и надстроек к ним. Термин «информатика» такое предполагает априори.

Обучение работе с существующими массивами и методами донесения информации? Пожалуйста! Нужно ли иметь представление об алгоритмах поиска и обработки информации в готовых системах? Обязательно! А вот обучение студентов написанию кода и созданию своих собственных методов донесения и обработки информации — для предметов «Информатика», «Системы поиска» или «Базы данных» для химика — уже лишнее.

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

В реальности же ты сможешь только после 4-5 лет дополнительного обучения алгоритмизации и программирования. И да, такие выпускники (за 10 лет видел целых шесть полноценных выпускников-химиков и одновременно профессиональных программистов из четырёх химических вузов) придут ко мне в лабораторию заниматься вычислительными методами, обходя кастрюлю под тягой за километр (пахнет неэстетично).

Они будут моделировать структуры для лечения COVID-19 или какие-нибудь органические фотоэлементы, а синтетики — те самые оставшиеся 99% — их сварят. Практики проверят активность и покажут, правильно всё посчитано или нет. Гранты, кстати, получат тоже только синтетики...

Конечно, всенепременно надо готовить профессионально тех самых одного-двух из сотни, которые хотят писать специальные прикладные программы (а скорее — мелкие вспомогательные скрипты), почему-то обучаясь не на ФКН НИУ ВШЭ или ВМК МГУ, а на факультете химии. Но это задача курсов обязательного Python, майноров по языкам, курсов по выбору и магистратуры, а не базовых курсов информатики, методов поиска, обработки данных.

И уж точно не нужно включать в базовый уровень (в продвинутый — нет проблем, на то он и продвинутый) курсов вроде «Основы программирования для всех» любого вида. Подобных курсов — «сдал-забыл» — следует избегать всеми силами…

Вместо заключения

Предлагаю поборникам изучения программирования в базовом курсе информатики ответить (для себя) на простенькие вопросы из экзамена по информатике для первого курса факультета химии, например:

 что делать, если домашний компьютер вместо запуска Windows показывает табличку, требующую для разблокировки послать денежку на телефон?

 пришли докладывать со своим анимированным .PPT файлом, а на компьютере для доклада отсутствует PowerPoint, и Вы в режиме пользователя?

 как посчитать импакт-фактор журнала за 2019-й год в апреле 2020-го?

 как вставить векторную структуру в статью формата .docx (требуют начиная с 2019 года большинство химических журналов)?

Зовите химиков-первокурсников, они всё это знают и умеют.
IQ

Автор текста: Свитанько Игорь Валентинович, 6 августа, 2020 г.