Два совершенно разных подхода

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

Биология

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

Поскольку биологические знания продолжали развиваться, важно отметить, как они развивались: в подходе сверху вниз. Всеобъемлющие идеи были концептуализированы сначала, записаны и переданы, в то время как основа для того, как все работает, была обнаружена позже. Возьмем, к примеру, Дарвина, который предоставил доказательства эволюции, но не смог объяснить, как на самом деле происходила эволюция. Обобщенная версия теории Дарвина и эта ранняя трудность воспроизведены ниже из статьи PNAS.

Аргумент Дарвина состоит в том, что естественный отбор возникает как необходимый вывод из двух предпосылок: (i) предположения о том, что происходят наследственные вариации, полезные для организмов, и (ii) наблюдения, что более рождаются особи, чем они могут выжить. Самая серьезная трудность, с которой столкнулась эволюционная теория Дарвина, заключалась в отсутствии адекватной теории наследственности, которая объясняла бы сохранение в поколениях вариаций, на которые должен был воздействовать естественный отбор.

Затем недостающее звено теории Дарвина было предоставлено Менделем и его растениями гороха. Эксперименты Менделя смогли заполнить пробелы в теории Дарвина, объяснив модальность, для которой могли быть осуществлены наблюдения Дарвина. Краткое изложение того, как это работало по отношению к теории Дарвина, из той же статьи PNAS воспроизводится ниже.

В статье Менделя, опубликованной в 1866 г., были сформулированы фундаментальные принципы теории наследственности, которая объясняет биологическую наследственность посредством отдельных факторов (теперь называемых генами), унаследованных по одному от каждого родителя, которые не смешиваются и не смешиваются, а разделяются при формировании половые клетки, или гаметы (3).

Благодаря этому открытию родилась область генетики. С тех пор достижения в этой области были сосредоточены на открытии как генетики. Это привело к интересным открытиям, включая модель двойной спирали ДНК Уотсона и Крика, сплайсинг РНК и, совсем недавно, геномную инженерию.

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

Информатика

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

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

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

Как скажет вам большинство ученых-компьютерщиков, которым приходилось сталкиваться с ассемблером, писать на ассемблере — не очень веселое занятие. Чтобы учесть это, были разработаны языки более высокого уровня, упрощающие программирование. Эти языки более высокого уровня построены из языков более низкого уровня, которые, в свою очередь, основаны на двоичной системе. Со временем создаются новые лучшие языки программирования, основанные на старых языках. В этом смысле область компьютерных наук растет по принципу «снизу вверх».

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

Заключение

Биология и информатика представляют две разные школы мысли. Биология, с одной стороны, подходит к проблемам сверху вниз. Общие концепции концептуализируются, а детали заполняются позднее. Это сильно контрастирует с информатикой, в которой все строится по принципу «снизу вверх». Освоение каждого предмета требует умения изменить способ мышления по отдельным проблемам.