Найти в Дзене

0.6. Биоинформатика - должен ли программист разбираться в биологии и медицине, а биолог в программировании?

Внедрение современных технологий требует перехода учёных, медиков и специалистов биотеха на новые инструменты, основанные на IT-решениях, как мы убедились в предыдущих статьях. И в основе такой цифровизации лежит аналитика данных — процесс преобразования первичных данных в полезные знания, которые можно использовать. Одним из наиболее востребованных решений при таком подходе является процесс ETL (от англ. extraction, transformation, loading — «извлечение», «преобразование», «загрузка»). Конечным пользователям и разработчикам программного обеспечения бывает трудно найти общий язык. Зачастую клиент не может решить, каким требованиям должны соответствовать специалисты, к которым он обратился для создания проекта. И одним из таких требований является знание предметной области - знание конкретной, специализированной дисциплины или области. Это не простой вопрос - должны ли все специалисты, задействованные в проекте, разбираться в предметной области проекта. С другой стороны, должны ли поль

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

Одним из наиболее востребованных решений при таком подходе является процесс ETL (от англ. extraction, transformation, loading — «извлечение», «преобразование», «загрузка»). Конечным пользователям и разработчикам программного обеспечения бывает трудно найти общий язык. Зачастую клиент не может решить, каким требованиям должны соответствовать специалисты, к которым он обратился для создания проекта. И одним из таких требований является знание предметной области - знание конкретной, специализированной дисциплины или области. Это не простой вопрос - должны ли все специалисты, задействованные в проекте, разбираться в предметной области проекта. С другой стороны, должны ли пользователи вникать в процедурные элементы исполнения программ.

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

Внутри научных групп и медлабораторий всё проще - сейчас предпочитают держать отдельного программиста под самые распространённые у них задачи.

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

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

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

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

На первый взгляд, выглядит ситуация странно, но по сути универсала нужно учить не менее 4 лет бакалавриата естественного факультета и 4 лет бакалавриата по программированию и аналитике. И не факт, что он действительно будет таким кибер-биологом.

Даже учёные далеко не все могут правильно ставить задачи в своей предметной области.

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

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

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

При условии, что свою область они знают отлично.

В целом, конечно, программист должен знать азы биологии, а биолог азы обработки данных и статистики, чтобы понимать друг друга и возможности:

Разговаривать на одном языке
Разговаривать на одном языке

Здесь можно найти презентации по многим областям.