Мозг опытного программиста читает код как компьютер

Мозг опытного программиста читает код как компьютер

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

Первые же результаты эксперимента показали, что начинающие и опытные программисты читают код совершенно по-разному.


Опытный
{youtube}Jc8M9-LoEuo{/youtube}


Новичок
{youtube}VtuO9un2Vyg{/youtube}

Один из участников эксперимента говорит, что после просмотра видеоролика с собственным тестом ему показалось, что мозг работал словно интерпретатор. Например, в программе было два вызова к функции between. В первый раз он провёл много времени, смотря то на место вызова, то на определение функции. Во второй раз на это ушло гораздо меньше времени: он только однажды глянул на определение функции. В терминах программирования это можно назвать неким видом just-in-time компиляции. В первый раз он читал и интерпретировал каждую инструкцию, что заняло 24 секунды. Во второй раз, вероятно, некие инструкции отложились в памяти компилятора мозга, так что процесс занял всего 10 секунд.

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

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

Эксперимент продлится ещё несколько месяцев.

20.12.2012
http://www.xakep.ru/post/59846/

Специалист по видео

8 (929) 264 1523 (Константин)

cashara@bk.ru

Специалист по фото

8 (929) 261 3062 (Дмитрий)

Мультимедиа-студия «Два в кубе» © 2011 - 2015