Ученые выяснили, как работает мозг программистов при работе с кодом

Ученые выяснили, как работает мозг программистов при работе с кодом

03.07.2020     

Исследовательская группа Хемницкого технологического университета в Германии впервые проанализировала, как работает мозг человека при работе над программным кодом.  

Что происходит в головах программистов, когда они пишут код? На этот вопрос постарались ответить:

  • доктор Джанет Зигмунд с кафедры разработки программного обеспечения в Хемницком политехническом университете;
  • профессор Свен Апель с кафедры разработки программного обеспечения в Саарском университете;
  • доктор Андре Брехманн, руководитель специальной лаборатории неинвазивной визуализации в Институте нейробиологии им. Лейбница в Магдебурге.

Чертоги разума

«Идея нашего исследования возникла в Магдебурге во время совместной встречи ученых из Института нейробиологии им. Лейбница и факультета компьютерных наук в Магдебурге», – говорит Джанет Зигмунд. «При поддержке моего научного руководителя, профессора Сааке (Университет Магдебурга) и профессора Лейха (Университет Гарца), мы смогли начать основную работу по разработке методики исследования». В нескольких малых и крупных экспериментальных исследованиях была создана разносторонняя методологическая основа. Методология, разработанная Зигмундом и ее коллегами, уже зарекомендовала себя в международных исследованиях.

Метод исследования

«Наша цель состояла в том, чтобы разработать совершенно новый подход, чтобы мы могли лучше понять когнитивные процессы, которые происходят во время программирования», – говорит Свен Апель. 

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

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

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

Язык вместо математики

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

«К нашему удивлению, мы не увидели активности в направлении математического или логического мышления», – резюмирует Свен Апель. «Наше исследование предполагает, что понимание языка играет центральную роль в программировании. 

Известный голландский ученый-компьютерщик Эдсгер В. Дейкстра уже высказал это предположение в 1980-х годах». Их выводы могут иметь далеко идущие последствия для программирования, например, при проектировании языков программирования или при обучении программированию.

Перспективы

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

Свен Апель и его команда теперь хотят выяснить, как понимание программы отличается у экспертов и начинающих, то есть читают ли они и интерпретируют программный код по-разному.

Полный текст публикации



Источник: https://infostart.ru/journal/news/tekhnologii/uchenye-vyyasnili-kak-rabotaet-mozg-programmistov-pri-rabote-s-kodom_1259977/
Автор:
Сергей Кравченко Обозреватель


Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. mkalimulin 430 03.07.20 14:55 Сейчас в теме
Программист все время занимается сериализации и структуризацией. Тоже самое происходит при речевом общении. Никакой логики и математики. Тупой перевод структуры в линейное и обратно, линейное в структуру.
6. user856012 12 03.07.20 22:53 Сейчас в теме
(1)
Программист все время занимается сериализации и структуризацией.
А если программист не знает значения этих терминов - чем тогда он занимается? ;)

(2)
Тут бы наоборот исследовали, как работает мозг пользователя. Там гооораздо больше интересных вещей бы нашли.
Не думаю: как показывают наблюдения, у большинства пользователей мозг вообще не задействуется.

Или занят "интересными вещами", абсолютно не связанными с программой:
"Что бы такое съесть на обед?" - "Ну когда же он позвонит?" - "Даст она мне сегодня или опять продинамит?"

И так далее...
8. mkalimulin 430 03.07.20 23:48 Сейчас в теме
(6) Здесь от знания или незнания ничего не зависит. Г-н Журден, например, не знал, что говорит прозой )
10. user856012 12 03.07.20 23:55 Сейчас в теме
(8)
Здесь от знания или незнания ничего не зависит. Г-н Журден, например, не знал, что говорит прозой )
Есть другая точка зрения, отраженная в старом анекдоте: "Доктор, а теперь, после операции, я смогу играть на скрипке? - Разумеется, сможете! - Да? Странно, а до операции не мог..."

То есть, когда программист узнает про "сериализацию и структуризацию" - тогда и начнет ими "заниматься", не раньше.

А что до этого? А до этого он просто писал код. ;-P
11. mkalimulin 430 03.07.20 23:59 Сейчас в теме
(10) Сериализацией и структуризацией занимается каждый, кто говорит и воспринимает речь. Вне зависимости от того, знает ли он вообще эти слова. Ваш программистский снобизм говорит вам, что вы занимаетесь крутыми вещами недоступными большинству обычных людей. А на самом деле вы занимаетесь ерундой, которой другие люди не занимаются, потому что это ерунда.
12. user856012 12 04.07.20 00:10 Сейчас в теме
(11)
Ваш программистский снобизм говорит вам
Мой "программистский снобизм" говорит мне, что вы меня с кем-то перепутали. Скорее всего - с собой, общепризнанным гением. :D
вы занимаетесь крутыми вещами
Ничуть: "крутыми вещами" занимается бизнесмен - меняет мир или хотя бы просто зарабатывает деньги. Все остальные (продавцы, бухгалтеры, маркетологи) - его обслуживающий персонал.

А программисты - обслуживающий персонал этого обслуживающего персонала, иными словами - "старший помощник младшего дворника", не более того.
на самом деле вы занимаетесь ерундой, которой другие люди не занимаются, потому что это ерунда
А вы чем занимаетесь, если не секрет? ;-)
13. mkalimulin 430 04.07.20 00:27 Сейчас в теме
(12) А я программирую по-новому. Без сериализации и структуризации.
14. user856012 12 04.07.20 00:40 Сейчас в теме
(13)
А я программирую по-новому. Без сериализации и структуризации.
И это, надо полагать, делает ваши занятия "крутыми вещами", а не "ерундой"?
15. mkalimulin 430 04.07.20 08:57 Сейчас в теме
16. user856012 12 04.07.20 10:06 Сейчас в теме
(15) Я так и думал.

Ну, и у кого из нас "программистский снобизм"? :-P
2. Senator_I 13 03.07.20 15:02 Сейчас в теме
Тут бы наоборот исследовали, как работает мозг пользователя. Там гооораздо больше интересных вещей бы нашли. )))
3. awk 716 03.07.20 15:04 Сейчас в теме
Доктор - это ученая степень. Профессор - это ученое звание. Это разные понятия. Переводя на русский вы написали примерно следующие:

Мальчик - Вова
Школьник - Максим
Мальчик - Денис
4. PerlAmutor 106 03.07.20 21:36 Сейчас в теме
У меня все чаще бывает состояние транса при программировании, после которого я не всегда в состоянии вспомнить то как я написал тот или иной участок кода. Разное состояния сознания. Причем, если меня пытаться выдергивать из этого состояния вопросами или другими задачами, то появляется необоснованная агрессия.

Но я так думаю это связанно с тем, что меня постоянно отвлекают от работы и в попытках абстрагироваться я создаю свой "чертог разума", где мне пребывать комфортнее.
9. mkalimulin 430 03.07.20 23:51 Сейчас в теме
(4) Это потому, что вы задействуете все ресурсы кратковременной памяти, и вам их все равно не хватает. Как следствие, вы находитесь в состоянии крайнего напряжения.
5. CheBurator 3425 03.07.20 22:42 Сейчас в теме
было бы интересно сравнить мозг 1Сника, разбирающего код УТ11 и моз СИшника, разбирающего код...
7. mkalimulin 430 03.07.20 23:47 Сейчас в теме
17. Vortigaunt 82 04.07.20 21:27 Сейчас в теме
Провели целое исследование, чтобы доказать, что программисты ближе к гуманитариям, чем к технарям? Мои поздравления.
А вобще мозг программиста работает так
18. PerlAmutor 106 04.07.20 22:29 Сейчас в теме
(17)
А давайте я вас подойду и спрошу в три часа ночи который час?
Чего страшного-то? Ну и что такого что вы только что заснули?
Я просто спрошу, вы ответите и спите дальше. Чего такого-то?

https://www.youtube.com/watch?v=MdTnixJAd0c
Оставьте свое сообщение

См. также

Выпущен ПК весом 83 грамма с поддержкой нескольких десктопных ОС

Новость Гаджеты ИТ-новость Микроэлектроника

Компания XCY выпустила миниатюрный компьютер Mini PC Stick, по размеру напоминающий флешку, помещающуюся в ладони. В качестве ОС на него можно установить Windows 10 или Linux.

вчера в 15:55    255    user-programmist    2       

Сбербанк создаст криптовалюту, привязанную к рублю

Новость Банки Блокчейн ИТ-новость Новости компаний

Сбербанк выпустит собственную криптовалюту Sbercoin – стейблкоин, курс которого будет привязан к рублю. Он упростит внутренние транзакции и не противоречит закону о цифровых финансовых активах (ЦФА).

вчера в 11:29    247    user1015646    1       

Windows 10 сможет запускать приложения с Android-смартфонов

Новость Windows Android Infostart Software Partners Маркет Новости компаний

5 августа 2020 года Microsoft объявила о новшествах, которые появятся в Insider Preview Build 20185. Одной из самых интересных функций стало дальнейшее развитие службы «Ваш телефон».

07.08.2020    713    capitan    4       

Программист из Slack превратил MacOS 8 в кроссплатформенное приложение

Новость ОС Mac OS ИТ-новость

Разработчик создал приложение, позволяющее запустить MacOS 8 на современных компьютерах как обычное приложение. Для этого не понадобится даже предварительно устанавливать эмулятор.

06.08.2020    694    VKuser24342747    0       

МТС получил первую в России лицензию на развитие сети 5G

Новость ИТ-новость Новости компаний Телекоммуникации

Роскомнадзор предоставил МТС лицензию на строительство сети 5G по всей территории России — в 83 из 85 субъектов. Срок действия лицензии - до лета 2025 года. Для развития сети были выданы частоты от 24,25 до 24,65 ГГц.

05.08.2020    686    user-programmist    1       

Работа с большими данными во всем мире должна регулироваться профстандартом

Новость Искусственный интеллект ИТ-новость

Британское компьютерное общество (BCS) вместе с Королевским статистическим обществом (RSS) и Королевской инженерной академией (RAEng) начали работу по созданию профстандартов в отрасли больших данных (BigData).

05.08.2020    571    SKravchenko    3       

GitHub представил дорожную карту развития сервиса

Новость GitHub ИТ-новость

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

05.08.2020    568    VKuser24342747    0       

IEEE опубликовал свежий рейтинг языков программирования

Новость ИТ-новость Языки программирования

Институт инженеров электротехники и электроники IEEE Spectrum недавно опубликовал свой рейтинг языков программирования за 2020 год. Как и в последние несколько лет Python снова лидирует, но есть и несколько сюрпризов.

04.08.2020    774    SKravchenko    1       

Facebook запускает конкурента Zoom

Новость ИТ-новость Мессенджеры Новости компаний

23 июля Facebook объявил, что расширяет возможности Messenger Rooms и Facebook Live, – теперь пользователи могут организовывать онлайн-совещания с участием до 50 человек.

03.08.2020    597    SKravchenko    0       

Виртуальные фанаты заполнят пустые стадионы

Новость Искусственный интеллект ИТ-новость Телекоммуникации

Из-за пандемии COVID-19 сто двадцатый сезон в истории главной лиги бейсбола США пройдет с пустыми стадионами. Но Fox Sports для своих трансляций будет заполнять трибуны виртуальными фанатами с цифровой визуализацией.

31.07.2020    652    SKravchenko    2       

Начался выпуск российских материнских плат для ARM-процессоров «Байкал»

Новость Импортозамещение ИТ-новость Микроэлектроника

Первую российскую материнскую плату для нового ARM-процессора Baikal-M представили компании «Байкал электроникс», «Эдельвейс» и «Базальт СПО». Ориентировочная стоимость платы – 50 тыс. рублей.

30.07.2020    768    user1015646    3       

Банки оценили переход на отечественное ПО в сотни миллиардов рублей

Новость Банки ИТ-новость Цифровая экономика

Российские банки пересчитали планируемые расходы на внедрение отечественных программ. Затраты финансовых учреждений могут составить до 150 млрд рублей.

30.07.2020    556    VKuser24342747    0       

Молодые сотрудники используют больше разных приложений для работы

Новость Автоматизация Аналитика ИТ-новость

Исследование, проведенное консалтинговой фирмой Creative Strategies по изучению сотрудничества, показало значительные различия в стиле и подходе к работе у разных возрастных групп.

29.07.2020    847    SKravchenko    0       

Microsoft представила утилиту для мониторинга процессов в Linux

Новость Linux ИТ-новость Новости компаний

Компания Microsoft выпустила утилиту ProcMon (Process Monitor) для Linux. Программное обеспечение распространяется под открытой лицензией MIT. Ранее ProcMon была доступна только для Windows.

29.07.2020    732    user1015646    2       

Google сделает Android Go обязательной на устройствах с ОЗУ меньше 2 ГБ

Новость Google ИТ-новость Мобильные приложения

С октября 2020 года на все новые Android-устройства, имеющие объем ОЗУ 2 ГБ и менее, Google заставит устанавливать Android Go – модифицированную версию Android для устройств начального уровня.

28.07.2020    1631    SKravchenko    0       

Google Cloud представил новые средства безопасности

Новость Google Безопасность ИТ-новость

Облачная платформа Google Cloud разработала новые инструменты для обеспечения безопасности. Они ориентированы на крупные коммерческие компании, банки и государственные учреждения.

28.07.2020    704    user1015646    0       

ПК на Windows могут перейти на ARM-процессоры

Новость Windows Mac OS ИТ-новость Микроэлектроника

22 июня Apple объявила о переходе Mac на процессоры собственного производства на базе архитектуры ARM. Первые системы появятся к концу года, начав двухлетний переходный период.

24.07.2020    1898    SKravchenko    1       

Разработчики GitHub представили GCM Core – инструмент универсальной аутентификации для Git-серверов

Новость GitHub ИТ-новость

Git Credential Manager Core – это кроссплатформенный инструмент, который может стать альтернативой традиционной HTTPS- или SSH-аутентификации для Git-серверов. Планируется, что в будущем он заменит существующие утилиты аутентификации для Windows, macOS и Linux.

24.07.2020    1144    user1015646    1       

Google выпустила большое обновление Chrome

Новость Google Безопасность Интернет Интерфейсы ИТ-новость

14 июля Google выпустила стабильную версию браузера Chrome 84 Desktop для Windows, Mac и Linux. Новый Chrome получил поддержку Web OTP API, ярлыки PWA и умеет блокировать навязчивые уведомления.

23.07.2020    1774    SKravchenko    0       

GitHub разместил пленочный архив открытого кода в арктическом хранилище

Новость GitHub ИТ-новость

GitHub завершил масштабный перенос архива открытого исходного кода в хранилище Arctic World Archive. Данные будут храниться в виде фотоснимков на пленочных накопителях.

22.07.2020    1132    VKuser24342747    2       

Денег нет: «Сколково» прекратило выдавать некоторые гранты до 2021 года

Новость ИТ-новость Минфин Стартапы Цифровая экономика

Фонд «Сколково» приостановил выдачу грантов за деньги Минфина. Высокотехнологичные компании смогут претендовать на финансирование только в следующем году.

21.07.2020    1247    VKuser24342747    1       

Docker и Amazon Web Services провели взаимную интеграцию инструментов разработчика

Новость Интеграция ИТ-новость Новости компаний

Docker и Amazon вышли на новый этап партнерства. Компании завершили двустороннюю интеграцию инструментов разработчика: Elastic Container Service (ECS) и ECS on AWS Fargate A293; со стороны Amazon; Compose и Desktop developer – со стороны Docker.

20.07.2020    1028    user1015646    0       

Министерство связи запустит единую платформу «Гостех» до конца 2021 года

Новость Законодательство ИТ-новость Минкомсвязь

Минкомсвязь определила правила проведения эксперимента по созданию единой цифровой платформы «Гостех». Поставщик и оператор системы до сих пор не назван.

17.07.2020    1168    VKuser24342747    0       

Microsoft не планирует поддерживать PHP 8.0 для Windows

Новость Windows Интернет ИТ-новость Новости компаний

Инженер Microsoft Дейл Хирт объявил, что Microsoft не будет больше поддерживать сборки Windows для языка сценариев PHP начиная с версии 8.0 и выше. Но компания планирует пока «продолжить разработку и сборку PHP под Windows для 7.2, 7.3 и 7.4».

17.07.2020    1193    SKravchenko    1       

«Яндекс» и Mail.ru по поручению правительства разработают аналог Zoom

Новость Mail.Ru ИТ-новость Минкомсвязь Новости компаний Облачные технологии Яндекс

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

16.07.2020    1510    VKuser24342747    4