Що відбувається у мозку програмістів, коли вони інтенсивно займаються програмним кодуванням? Несподівану відповідь на це запитання надали мозкові знімки. Всупереч усім очікуванням, активними виявилися не логічні та математичні схеми, а мовні центри лівої півкулі. Вочевидь, розуміння мови в процесі програмування відіграє важливішу роль, ніж довго припускали.




Зображення:  monsitj/ iStock​.


 

Математичні формули чи програмні коди комп’ютера – всі вони належать до так званої формальної мови, що становить собою сукупність логічних конструкцій, які підпорядковуються певним правилам і мають одне чітке значення. Але як ці коди опрацьовує мозок математиків і програмістів? Мозковий сканер доводить, що в математиків активується спеціальна мозкова мережа, що властива лише їм і реагує лише на математику.

 

Але як все виглядає у програмістів, коли вони пишуть або перевіряють коди? Згідно з поширеними припущеннями, програмування потребує передусім логічного та математичного мислення. Чи це справді так, дослідили Свен Апель (Sven Apel) з Саарландського університету (Німеччина) та його колеги за допомогою функціональної магнітно-резонансної томографії (фМРТ).

 

Для цього 17 студентам-програмістам вчені дали завдання, в межах якого ті мусили інтенсивно перевірити та зрозуміти фрагмент програмного коду. Проблема полягала у ось в чому: «Якщо спостерігати за програмістами, що працюють тільки з вихідним кодом, ми бачили певну кількість активних мозкових ділянок, але не знали, які з них безпосередньо пов’язані з розумінням програми», – пояснили Апель та його колеги.

 

З огляду на це, вчені дали контрольне завдання: піддослідних попросили перевірити фрагмент коду на синтаксичні помилки – це менш претензійне для програміста вміння. «Так виявилися відмінності між простим переглядом і глибинним розумінням кодової семантики», – пояснили вчені.




Мозок програмістів: від активності під час "осмислення коду" віднімали "розуміння синтаксичних помилок". Зображення: Universität des Saarlandes.


 

При оцінюванні науковці віднімали мозкову активність у контрольних умовах від активності під час завдання, так що в мозку спалахували тільки ті місця, що безпосередньо були пов’язані з розумінням програмного коду.

 

Вчені отримали несподіваний результат: «На наше здивування, ми не помітили жодної активності в напрямі математичного чи логічного мислення – хоч це узгоджувалося б із припущеннями. Крім схем робочої пам’яті та уваги, активованими виявилися зони в центрі Брока, що відповідають за розуміння прочитаного та мовної семантики».

 

«Наше дослідження доводить: розуміння мови відіграє центральну роль для програмування, – сказав Апель. – Це ще у 80-х роках ХХ століття припустив нідерландський інформатик Едсгер Дейкстра».

 

На думку вчених, це не спростовує прийнятих упродовж тривалого часу припущень про мисленнєві процеси в програмуванні, але результати можуть надати важливі імпульси для дизайну мови програмування й освіти. Зараз Апель та його команда хочуть з’ясувати, чи розуміння мови відрізняється серед експертів і початківців – і якщо так, то в яких аспектах.

 

 

Nadja Podbregar

Blick ins Gehirn von Programmierern

Universität des Saarlandes, 8. Juni 2020

Зреферувала С.К.

13.06.2020