Це правда, що мислення програмістів влаштовано інакше, ніж в інших людей. Але нещодавно вчені приступили до вивчення впливу програмування на мозок і дійшли цікавих висновків.
Як заняття мистецтвом може змінювати ваше мислення, так і програмування впливає на ваш спосіб мислення — можливо, не так, як ви очікували.
Чи важливо, з якої мови програмування ви розпочали свій шлях у цій професії? Так!
Звучить нечесно, правда? Як не крути, а більшість із нас познайомилися із програмуванням ще в школі, і першу мову нам нав’язували. Я почав із Pascal, потім був С.
Структура мови програмування впливає на спосіб мислення. Едсгер Дейкстра, один з найвпливовіших вчених у сфері інформатики, знав про це, коли сказав:
«Інструменти, які ми використовуємо, мають глибокий (і прихований) вплив на наші розумові звички, і, отже, на наші розумові здібності».
Потім додав:
«COBOL спотворює розум; його викладання слід розцінювати як кримінальний злочин».
І:
«Практично неможливо навчити добре програмувати студентів, які раніше вивчали BASIC: як потенційні програмісти вони розумово покалічені, без надії на відновлення».
У якомусь сенсі всі мови програмування рівні, тому що вони повні за Тюрінгом. З іншого боку, оволодіння однією мовою може призвести до проблем в іншій.
Програмісти на Java і на Python — два різних типи фахівців, які абсолютно по-різному підходять до програмування.
Іншими словами, парадигми та ідіоми вашої першої мови програмування впливають і навіть диктують ваші ментальні підходи до структур даних, алгоритмів тощо.
Більше того, можна взяти анонімізований код та визначити, хто його написав, спираючись лише на обраний підхід до вирішення задачі та стиль написання коду. І що складніше завдання, то легше «деанонімізувати» код.
Зверніть увагу на дослідження стилеметрії коду та розшифрування лекції, присвяченій тій же проблематиці:
«Програмісти можуть обфусцирувати змінні або імена функцій, але не структури, яким вони віддають перевагу у використанні, або улюблені оператори інкрементування».
В англійській мові є прислів’я, яке підсумовує все вищесказане в одній зрозумілій фразі: «Коли у тебе є тільки молоток, все схоже на цвях». Тобто навчившись програмувати певним чином, ви аналогічно підходитимете до вирішення всіх завдань.
Тож обирайте мову програмування з розумом!
Мозок часто порівнюють з м’язом, який потрібно постійно тренувати, щоб залишатися розумним та кмітливим. Чи це так? І якщо так, то чи можна вважати програмування ментальною вправою, достатньою для зміцнення здоров’я мозку?
Автори метадослідження 1991 року хотіли з’ясувати «вплив комп’ютерного програмування на когнітивні результати» і виявили, що студенти, які мали досвід програмування, при тестуванні когнітивних здібностей набирають на 16 перцентильних балів більше, ніж студенти без досвіду програмування.
У ході ще більшого дослідження 1999 року підтвердилося, що «інтелектуальна діяльність перешкоджає зниженню когнітивних здібностей».
Але автори зазначили, що, можливо, зниження когнітивних здібностей може призвести до зменшення залученості до інтелектуальної діяльності.
Автори ще більшого дослідження 2009 року дійшли того ж висновку і припустили, що «люди, які беруть участь у діяльності, що стимулює мозок, у наступні роки можуть знизити ймовірність [і навіть відтягнути початок] хвороби Альцгеймера та інших видів недоумства».
До діяльності, що стимулює мозок, віднесли:
Нарешті, у дослідженні, опублікованому в 2013-му, сказано, що суворо певні види розумової діяльності справді покращують наш мозок, а саме — інтенсивна когнітивна діяльність, яка інтелектуально складна і передбачає вивчення чогось.
Хоча всі згадані дослідження і не доводять, що інтелектуальна діяльність робить нас розумнішими й здатнішими, але результати кажуть про те, що важкі когнітивні завдання як мінімум покращують поточний стан мозку та значно знижують ймовірність деградації.
Існує думка, що вчитися програмуванню ніколи не пізно, і описані дослідження лише підтверджують цю думку. Програмування йде на користь!
У дослідженні 2014 року за допомогою функціонального МРТ вивчалася активність мозку програмістів, які намагалися зрозуміти та опрацювати фрагменти коду.
З’ясувалося, що при вивченні вихідного коду задіяно п’ять областей мозку:
Тобто при роботі з вихідним кодом в основному задіяні частини мозку, які зазвичай пов’язані з обробкою мови, пам’яттю і увагою.
Цікаво, що при цьому майже не задіяні розділи мозку, пов’язані з математикою та обчисленнями — навіть при аналізі фрагментів із циклами, умовними та арифметичними обчисленнями та іншими алгоритмічними операціями.
Звичайно, дослідження не було всеосяжним, і його автори вказують:
Але що треба відзначити. Ми знаємо, що програмісти регулярно аналізують вихідний код, написаний ними самими чи кимось іншим. Ми також знаємо, що програмісти часто витрачають більше часу на виправлення та рефакторинг наявного коду, ніж написання нового з нуля.
Отже, це дослідження зовсім не безглуздо. Програмування — не просто «діяльність лівої півкулі мозку», і можна навіть припустити, що «правопівкульні» програмісти мають певну перевагу.
Читайте також: Ви неправильно використовуєте мозок: 9 правил, які допоможуть впоратися з прокрастинацією
Це текст з особистого блогу, опублікований з дозволу автора.
Днями я завзято нила про щось ChatGPT (експериментую між сеансами з живим терапевтом). І от…
«Крутіть колесо, щоб отримати знижку до 50%!» «Натисніть тут, щоб відкрити таємничу пропозицію!» «Зареєструйтесь зараз,…
Дуже хочеться робити якісь десктопні апки. Сумую за часами коли всі програми були offline-first, і…
Надсилаючи криптовалюту, багато новачків ставлять запитання: як працюють комісії та чому вони відрізняються в різних…
Нова афера набирає обертів — ось детальний розбір того, як фальшиві потенційні роботодавці намагаються вкрасти…
Соцмережа з можливістю вбудовувати повноцінні додатки прямо в пости — звучить як фантастика, але Farcaster…