
Gabriel Brooks
0
1637
469
Je to pravda: programátoři myslí jinak než všichni ostatní.
Jak se obecně říká, programátoři jsou nutně chytřejší, logičtější nebo racionálnější než všichni ostatní. Vědci však nedávno začali studovat mozky programátorů a dospěli k některým zajímavým závěrům.
Stejně jako umění umí tvarovat vaši mysl různými způsoby, počítačové programování také ovlivňuje váš mozek a jak přemýšlíte - možná způsoby, které jste neočekávali.
1. Kódování utváří vaše mentální modely
Záleží na tom, který programovací jazyk se naučíte jako první? Ano!
Vypadá to trochu nespravedlivě, že? Nakonec většina z nás získá první chuť programování ve škole a my si nemůžeme vybrat, který jazyk se na nás dostane. Začal jsem s C. Ti starší než já pravděpodobně začali s FORTRAN, COBOL nebo BASIC. Pokud jde o vás novější lidi? Pravděpodobně jste začali na Java nebo Pythonu.
Není pochyb o tom: design programovacího jazyka tvaruje, jak si myslíte. Edsger Dijkstra, jeden z nejvýznamnějších počítačových vědců historie, to věděl, když řekl:
“Nástroje, které používáme, mají hluboký (a nevyzpytatelný) vliv na naše myšlení, a tedy i na naše schopnosti myšlení.”
Poté řekl:
“Použití COBOLu ochromuje mysl; jeho učení by proto mělo být považováno za trestný čin.”
A:
“Je prakticky nemožné učit dobré programování studentům, kteří měli předchozí expozici BASICu: jako potenciální programátoři jsou mentálně zmrzačeni naději na regeneraci.”
Ouch.
V jednom smyslu jsou všechny programovací jazyky stejně schopné v tom, že jsou všechny Turing-kompletní. Ovšem v jiném smyslu může ovládání jednoho jazyka vést ke zničení jiného jazyka. Programátoři jazyka Java a programátoři Pythonu jsou dvě různá zvířata, kteří přistupují k kódování dvěma zcela odlišnými způsoby. Co je objektově orientované programování? Základy vysvětlené laikovými pojmy Co je objektově orientované programování? Základy vysvětlené v Laymanových termínech Nejmodernější programovací jazyky podporují paradigma „objektově orientovaného programování“ (OOP). Ale co přesně je OOP a proč je to tak užitečné? .
Jinými slovy, paradigma a idiomy prvního programovacího jazyka ovlivňují a dokonce diktují, jak si myslíte o strukturách dat, algoritmech atd..
Ve skutečnosti je natolik možné, že je možné vzít anonymizovaný kód a určit, kdo ho napsal, pouze na základě toho, jak se k úkolu přistupovalo a jak byl kód napsán. Čím obtížnější je úkol, tím snazší je “zrušte anonymizaci.”
Podívejte se na tento článek o kódové stylometrii [Už není k dispozici] a přepis přednášky o kódové stylometice:
“Programátoři mohou zmatit jejich názvy proměnných nebo funkcí, ale ne struktury, které podvědomě upřednostňují používat, nebo jejich oblíbené operátory přírůstku.”
V angličtině máme přísloví, které to shrnuje snadno pochopitelným způsobem: “Když máte jen kladivo, vypadá to jako hřebík.” Podobně, jakmile se naučíte, jak určitým způsobem programovat, je lákavé myslet na všechny problémy tímto způsobem.
Takže při výběru programovacího jazyka Hledáte nejlepší programovací jazyky? Začněte zde! Hledáte nejlepší programovací jazyky? Začněte zde! Ať už jste v programovacích jazycích úplně nováčkem nebo se chystáte skočit do nového druhu programování, jednou z nejdůležitějších otázek je: „Který programovací jazyk je pro mě vhodný?“ , buďte inteligentní a buďte opatrní!
2. Programování pomáhá posilovat zdraví mozku
Lidé často říkají, že mozek je jako sval a že ho musíte cvičit, pokud chcete zůstat ostrí. Je to vlastně pravda? A pokud ano, počítá se programování jako mentální cvičení, natolik, že ovlivňuje zdraví mozku?
Meta-studie z roku 1991 se zabývala “účinky počítačového programování na kognitivní výsledky” a zjistili, že studenti se zkušenostmi s počítačovým programováním získali v testech kognitivních schopností vyšší skóre než studenti bez.
Větší studie z roku 1999 to zjistila a potvrdila “intelektuálně zapojené aktivity slouží k potlačení jednotlivců proti [kognitivnímu] úpadku,” ale také poznamenal, že je možné, že kognitivní pokles by mohl vést k menší účasti na činnostech intelektuálního zapojení.
Ještě větší studie v roce 2009 dospěla k podobnému závěru, což naznačuje “lidé, kteří se v pozdějších letech zabývají činnostmi stimulujícími mozek, mohou snížit riziko [a dokonce oddálit nástup] Alzheimerovy choroby a jiných typů demence.” Činnosti stimulující mozek zahrnovaly čtení, psaní, hádanky, deskové a karetní hry a přehrávání hudby.
A konečně, studie zveřejněná v roce 2013 zjistila, že pouze určité druhy mentální angažovanosti vlastně půjčují ostřejším mozkům, jmenovitě kognitivní činnosti s vysokou poptávkou, které zahrnují učení a intelektuální potíže.
Samozřejmě je třeba provést více výzkumu, ale je těžké si představit jakoukoli kognitivní činnost, která je náročnější a zaměřená na učení než programování.
Ačkoli žádná z těchto studií neukazuje, že intelektuálně přitažlivé činnosti vás činí chytřejšími nebo schopnějšími, ukazují, že vysoce náročné kognitivní úkoly přinejmenším prodlužují vaše současné zdraví mozku a významně zabraňují poškození nervů..
Dříve jsme tvrdili, že není nikdy pozdě začít učit se, jak kódovat 3 mýtusové důvody, proč začít kódovat i ve starším věku. 3 Mýtusové důvody, jak začít kódovat i ve starším věku Už jste někdy přemýšleli, jestli jste " příliš starý “, abychom se začali učit, jak programovat, jednoduchá odpověď je, že si ji může vybrat kdokoli. Skutečnou otázkou je, měli byste ji zastřelit? a tyto studie slouží pouze k posílení naší pozice. Programování je pro vás dobré!
3. Kódování není vše matematické a logické
Podle studie z roku 2014 [PDF], která používala skenování fMRI k pozorování mozkové aktivity, zatímco programátoři se pokusili zpracovat a porozumět úryvkům kódu, je do porozumění zdrojového kódu zapojeno pět různých oblastí mozku:
- BA 6: Střední čelní gyrus (Pozor, jazyk, pracovní paměť)
- BA 21: Středoevropský gyrus (načítání sémantické paměti)
- BA 40: Dolní parietální lalok (pracovní paměť)
- BA 44: Dolní čelní gyrus (pracovní paměť)
- BA 47: Dolní čelní gyrus (Jazyk, pracovní paměť)
To znamená, že práce se zdrojovým kódem používá hlavně části mozku, které jsou obvykle spojeny se zpracováním jazyka, pamětí a pozorností.
Co konkrétně chybí, jsou oblasti mozku obvykle spojené s matematikou a výpočty, které jsou sotva zaregistrovány - dokonce i když chápou úryvky kódu, které zahrnovaly smyčky, podmíněné, aritmetické a jiné algoritmické operace.
Tato studie je samozřejmě poněkud neúplná a vědci připouštějí tolik:
- Úryvky v experimentu byly pod 20 řádků kódu a časově omezené, což znamenalo, že nebyly dost obtížné, aby skutečně napadly subjekty..
- Důkazy nenaznačují, že programovací jazyky jsou jako cizí jazyky, pouze že zahrnují podobné oblasti mozku.
- Subjekty nenapsaly žádný ze svých vlastních kódů, které by pravděpodobně zahrnovaly různé oblasti mozku, než aby se pokusily porozumět existujícímu kódu.
Ale tady je to, s čím můžeme odejít:
Víme, že programátoři pravidelně kontrolují zdrojový kód, ať už je kód napsaný sám sebou nebo patří někomu jinému. Víme také, že programátoři často tráví více času opravováním a refaktoringem kódu než psaním nového kódu od nuly.
Tato studie tedy nemá smysl. Programování není jen “levostranná činnost,” a dalo by se dokonce tvrdit, že programátoři s dobrým rozumem 6 Známky, že nemáte v úmyslu stát se programátorem 6 Známky, že nemáte v úmyslu být programátorem Ne každý je vyříznut jako programátor. Pokud si nejste zcela jisti, že jste chtěli být programátorem, zde jsou některé náznaky, které vás mohou nasměrovat správným směrem. mít výhodu v tomto smyslu.
Učení, jak být lepším programátorem
Programovací dovednosti nepřijdou snadno, ale přijdou, pokud budete pokračovat v praxi. Podívejte se na naše tipy pro zvládnutí jakéhokoli programovacího jazyka 7 Užitečné triky pro zvládnutí nového programovacího jazyka 7 Užitečné triky pro zvládnutí nového programovacího jazyka Je v pořádku být ohromen, když se učíte kódovat. Pravděpodobně zapomenete na věci tak rychle, jak se je naučíte. Tyto tipy vám mohou pomoci lépe si uchovat všechny nové informace. , náš článek o výhodách programovacího deníku Staňte se lepším kodérem tím, že budete udržovat programovací deník Staňte se lepším kodérem tím, že budete mít programový deník Psaní deníku vám může pomoci projít si své myšlenky a sledovat své programové cíle. a naše oblíbené lekce pro samoučící programátory 5 lekcí, aby se stal opravdu dobrým samoučeným programátorem 5 lekcí, aby se stal opravdu dobrým samoučeným programátorem Rozhodli jste se začít programovat. Kam jdeš? Těchto pět kurzů Udemy nabízí pevný základ pro základy programování. . Pokud se chcete ponořit do konkrétního programovacího jazyka, řešení projektu je dobrý nápad. Podívejte se, jak se naučit programování C s tímto začátečníkem.
Nakonec doporučuji sledovat tyto rozhovory TED pro programátory 20 rozhovorů TED o programování, každý musí sledovat 20 rozhovorů TED o programování, každý, kdo se musí sledovat Pomocí těchto rozhovorů TED o programování se naučíte, jak být programátorem. Vědět, jak psát kód, je jedním z aspektů programování, ale vědět, jak myslet, je klíčové. , které zahrnují všechny druhy tipů, myšlenek, inspirací, motivací a historie, které vám mohou pomoci.