Przejdź do treści
Umysł

Mózg programisty łapie bugi jak dwuznaczne zdanie. Nowe badanie EEG

Kiedy programista trafia na mylącą linię kodu, jego mózg reaguje tak samo jak na niespodziewany zwrot w rozmowie. Nowe badanie z EEG i eye-trackingiem ujawnia, że kod to nie sucha logika - to ukryty język, który mózg przetwarza jak konwersację.

4 min read
Mózg programisty łapie bugi jak dwuznaczne zdanie. Nowe badanie EEG
Spis treści

Wyobraź sobie, że czytasz zdanie: „Teo chce narąbać drewna, więc idzie po kurtkę”. Czujesz, że coś tu nie gra? Twój mózg też to czuje - i reaguje w ułamku sekundy charakterystyczną falą. Okazuje się, że dokładnie ten sam mechanizm uruchamia się, gdy programista natknie się na mylącą linijkę kodu. Mózg nie widzi różnicy między niespodziewanym rzeczownikiem a źle napisanym wyrażeniem w C++. To odkrycie zmienia sposób, w jaki myślimy o kodzie - i może zrewolucjonizować narzędzia dla programistów.

Fala późnej frontalnej pozytywności - czyli mózg mówi „moment”

→ Czytaj też: Sztuczna inteligencja oszukuje, choć brzmi spokojnie. Czy maszyny potrzebują własnych psychologów?

Międzynarodowy zespół badaczy z Uniwersytetu Saary postanowił przyjrzeć się, co dokładnie dzieje się w głowie programisty, gdy czyta on „atomy zamętu” - krótkie, podstępne fragmenty kodu, które komputer wykonuje bez problemu, ale które zupełnie mylą człowieka. Wyniki opublikowano w artykule, w którym udział wzięli m.in. Sven Apel (informatyk), Axel Mecklinger (neuropsycholog) i Vera Demberg (językoznawczyni komputerowa).

Uczeni połączyli elektroencefalografię (EEG) z szybkim eye-trackingiem, by rejestrować tzw. potencjały związane z fiksacją (FRP). Dzięki temu mogli uchwycić aktywność mózgu w dokładnej milisekundzie, w której wzrok programisty zatrzymywał się na konkretnej linii kodu. Gdy badany trafiał na „atom zamętu”, w jego mózgu pojawiała się fala późnej frontalnej pozytywności - sygnatura znana z psycholingwistyki.

Kurtka zamiast siekiery, pętla zamiast przypisania

→ Czytaj też: Nowe elektrody można wymalować na głowie. Czy badania mózgu przestaną być uciążliwe?

- W naszych eksperymentach nad przetwarzaniem języka nieoczekiwane słowa, takie jak „kurtka”, generują późną frontalną pozytywność - sygnał bardzo podobny do tego, który wywołują mylące fragmenty kodu - tłumaczy Axel Mecklinger. Innymi słowy: mózg programisty, widząc kod, który logicznie „nie pasuje”, uruchamia ten sam mechanizm korekty, co przy zdaniu z zaskakującym znaczeniem.

Badanie objęło 24 zawodowych programistów i ponad 1700 prób. Każdy z uczestników widział trzy bloki tematyczne, w których pojawiały się „atomy zamętu”. Zespół z Saarland University zsynchronizował dane co do milisekundy, by pokazać, że mózg programisty nie czyta kodu liniowo - skanuje całe bloki, przetwarzając kilka linii naraz.

Kod to nie tylko logika - to też język

Wcześniejsze badania sugerowały, że programowanie aktywuje obszary mózgu podobne do tych zaangażowanych w przetwarzanie języka naturalnego. Nowe wyniki idą o krok dalej: pokazują, że nie chodzi tylko o podobieństwo anatomiczne, ale o ten sam mechanizm neuronalny. Fala późnej frontalnej pozytywności to dowód, że mózg traktuje mylący kod jak niespodziewany zwrot w rozmowie - i natychmiast stara się go „naprawić”, odwołując się do pamięci długotrwałej.

„Kiedy programiści napotykają mylące fragmenty kodu, wykazują aktywność mózgu podobną do tej obserwowanej w eksperymentach językowych, w których uczestnicy czytają zdania z nieoczekiwanymi zwrotami. Mózg adaptuje się w ułamku sekundy, sprawdzając informacje względem pamięci długotrwałej i aktualizując reprezentację nowej sytuacji” - wyjaśnia Vera Demberg.

70-80 procent czasu na czytanie kodu - czy da się to ułatwić?

- Programiści spędzają od 70 do 80 procent swojego czasu pracy próbując zrozumieć kod. Dlatego ważne jest, aby wiedzieć, jak przebiegają te procesy myślowe - mówi Sven Apel. Odkrycie może pomóc w budowaniu inteligentniejszych środowisk programistycznych (IDE), które będą ostrzegać programistę nie tylko o błędach składniowych, ale i o „pułapkach poznawczych” - zanim jeszcze zostanie skompilowany jakikolwiek błąd.

Zamiast polegać wyłącznie na testach jednostkowych czy analizie statycznej, przyszłe narzędzia mogłyby monitorować reakcję mózgu programisty (np. przez EEG w słuchawkach) i sygnalizować, że dany fragment kodu jest potencjalnie mylący. To otwiera drogę do nowej generacji oprogramowania projektowanego z myślą o ludzkiej kognicji - nie tylko o maszynie.

Co dalej? Personalizacja i szkolenia

Badacze planują sprawdzić, czy różni programiści wykazują odmienne wzorce aktywności mózgu przy tych samych „atomach zamętu” - i czy te wzorce korelują z ich doświadczeniem. Jeśli tak, możliwe stanie się projektowanie spersonalizowanych kursów programowania, które uczą omijania konkretnych poznawczych pułapek.

Jedno jest pewne: kod to nie tylko sucha logika zaklęta w składni. To także język, który nasz mózg przetwarza w sposób głęboko ludzki - z tym samym zaskoczeniem, poprawkami i błyskawiczną reinterpretacją, co w codziennej rozmowie.

Redakcja noktus.pl

Redakcja noktus.pl

AUTHOR

Zbiorczy podpis pod tekstami z archiwum serwisu. Od września 2026 nowe teksty podpisuje z nazwiska Piotr Olszewski.

Redaguje