„To był szalony pomysł” – tak zaczyna się artykuł naukowców, którzy postanowili zbadać, jak działają mózgi programistów. Co dzieje się w umysłach piszących oprogramowanie?
Przyjęło się, że programiści to umysły ścisłe. Od lat bada to interdyscyplinarny zespół z Niemiec. Naukowcy po raz pierwszy przeanalizowali aktywność mózgu piszących oprogramowanie w 2014 roku. Wynik zaskoczył ich samych: programowanie jest jak rozmowa. Kolejne badania to potwierdzają.
Niemieccy naukowcy wykorzystali techniki obrazowania neurologicznego i zbadali, które obszary mózgu są aktywowane podczas tworzenia kodów i programów komputerowych. Odkryli, że najbardziej aktywne są te regiony, które są również istotne w przetwarzaniu języka naturalnego.
Pomysł na zeskanowanie mózgu programistów tomografem narodził się blisko 10 lat temu, poprzedzony licznymi projektami pilotażowymi i testami z użyciem innych metod.
„Zaprezentowaliśmy nasze plany szerzej w 2012 roku (…), otrzymując bardzo różnorodne informacje zwrotne, od 'och wow, to takie fajne’ do 'to nigdy nie zadziała’” – piszą w swoim artykule autorzy badania. Ale nie zraziło ich to. W 2014 roku powstało pierwsze naukowe opracowanie dla użytej metody.
Osoby testowane najpierw w tomografie rozwiązywały zadania wymagające zrozumienia fragmentu kodu w określonym czasie. Po chwili odpoczynku sprawdzały fragmenty kodu pod kątem prostych błędów, co jest zadaniem na ogół rutynowym, niewymagającym większej pracy umysłu. Procedurę tę powtórzono kilka razy. Następnie obrazy aktywności mózgu podczas jednego i drugiego zadania zostały ze sobą zestawione, by wyeliminować z nich te obszary mózgu, które były aktywne przy rutynowym poprawianiu błędów kodu.
Niemieccy naukowcy wykorzystali techniki obrazowania neurologicznego i zbadali, które obszary mózgu są aktywowane podczas tworzenia kodów i programów komputerowych
Dane wyraźnie pokazały, że w trakcie rozwiązywania zadania wymagającego zastanowienia i wnioskowania aktywne były te obszary mózgu, które odpowiadają za rozumienie słów. Na dodatek badacze nie uchwycili u programujących żadnej aktywności umysłu charakterystycznej dla myślenia matematycznego lub logicznego.
Badania powtórzyli kilkakrotnie, dodając liczbę testowanych i większą liczbę zadań. Bardziej dokładna statystyka również doprowadziła do tego samego wniosku. Co więcej, w ślad naukowców z Niemiec w ciągu ostatnich kilku lat poszli inni, wykorzystując inne techniki obrazowania neurologicznego czy metody opierające się na sztucznej inteligencji. Wyniki ich badań, powielających i poszerzających eksperyment, dały dowód wiarygodności odkrycia.
Autorzy nowej metody opublikowali właśnie podsumowanie swoich kilkuletnich badań i refleksji na temat funkcjonowania mózgów programistów, uzupełnione o przykłady innych badań potwierdzające słuszność ich wniosków, w renomowanym czasopiśmie „Communications of the ACM”, wydawanym przez największe na świecie profesjonalne stowarzyszenie informatyki.
Udoskonalona metoda może mieć daleko idące konsekwencje dla programowania: w projektowaniu języków programowania, edukacji programistycznej lub odpowiadaniu na podstawowe pytania – takie jak to, co stanowi skomplikowany lub prosty kod programu. Zespół badawczy zakłada, że wyniki mogą również wpłynąć na neuronaukę, odkrywając nowe procesy poznawcze, które różnią się na przykład od czytania ze zrozumieniem i logicznego rozumowania. Projekt został sfinansowany przez German Research Foundation (DFG).
Zespół niemieckich naukowców w składzie: prof. Janet Siegmund z Katedry Inżynierii Oprogramowania na Politechnice w Chemnitz, prof. Sven Apel z Katedry Inżynierii Oprogramowania na Uniwersytecie Saarland i dr André Brechmann, kierownik specjalnego laboratorium obrazowania w Leibniz Institute of Neurobiology w Magdeburgu chce teraz dowiedzieć się, jak różni się rozumienie programów między ekspertami i początkującymi – czy czytają i interpretują kod programu na różne sposoby.