Hvordan programmering påvirker hjernen din 3 store sannheter ifølge vitenskapen

Hvordan programmering påvirker hjernen din 3 store sannheter ifølge vitenskapen / programmering

Det er sant: programmerere tenker annerledes enn alle andre.

Ikke for å si at programmererne er nødvendigvis smartere, mer logiske eller mer rasjonelle enn alle andre, som det ofte er sagt. Men forskere har nylig begynt å studere hjernen til programmerere og har kommet til noen interessante konklusjoner.

Akkurat som artistry kan forme tankene dine på ulike måter, påvirker programmeringen også hvordan du tenker - kanskje på måter du kanskje ikke har forventet.

1. Koding former dine mentale modeller

Betyr det noe hvilket programmeringsspråk du lærer først? Ja!

Dette virker litt urettferdig, ikke sant? Når alt kommer til alt, får de fleste av oss vår første smak av programmering i skolen, og vi får ikke velge hvilket språk som kommer på oss. Jeg begynte med C. De eldre enn meg sannsynligvis begynte med FORTRAN, COBOL eller BASIC. Som for deg nyere folk? Du startet sannsynligvis på Java eller Python.

Ingen tvil om det: utformingen av et programmeringsspråk er det som du tenker på. Edsger Dijkstra, en av historiens mest innflytelsesrike datavitenskapsmenn, visste dette da han sa:

“Verktøyene vi bruker har en dyp (og utbredt) innflytelse på våre tenkendevaner, og derfor på våre tenkningevner.”

Han fortsatte med å si:

“Bruk av COBOL kremer sinnet; dets undervisning bør derfor betraktes som en kriminell handling.”

Og:

“Det er praktisk talt umulig å undervise god programmering til studenter som har hatt en tidligere eksponering for BASIC: som potensielle programmerere blir de mentalt lempet utover håp om regenerering.”

au.

På en måte er alle programmeringsspråk like i stand til at de er alle Turing-komplett. Men i en annen forstand kan styrking av ett språk føre til ødeleggelse på et annet språk. Java-programmerere og Python-programmerere er to forskjellige dyr som nærmer seg koding på to helt forskjellige måter. Hva er objektorientert programmering? Grunnleggende forklart i Laymans vilkår Hva er objektorientert programmering? Grunnleggende omtalt i Laymans vilkår De fleste moderne programmeringsspråk støtter OOP-paradigmet (Object Oriented Programming). Men hva er OOP og hvorfor er det så nyttig? Les mer .

Med andre ord, påvirker paradigmene og idiomene til ditt første programmeringsspråk, og til og med dikterer hvordan du tenker på datastrukturer, algoritmer osv..

Så mye, faktisk, at det faktisk er mulig å ta anonymisert kode og avgjøre hvem som skrev den, basert utelukkende på hvordan oppgaven ble nærmet seg og hvordan koden ble skrevet. Jo vanskeligere oppgaven, jo lettere er det å “de-Anonym.”

Se dette papiret på kodestylometri [PDF] og dette kodesymometriforelesningstrykket:

“Programmører kan forvirre deres variabel- eller funksjonsnavn, men ikke de strukturer de ubevisst foretrekker å bruke eller deres favorittsøkende operatører.”

På engelsk har vi et ordtak som oppsummerer dette på en lett forståelig måte: “Når alt du har er en hammer, ser alt ut som et negle.” På samme måte, når du lærer å programmere på en bestemt måte, er det fristende å tenke på alle problemer på den måten.

Så når du velger et programmeringsspråk Leter du etter de beste programmeringsspråkene? Start her! Leter du etter de beste programmeringsspråkene? Start her! Enten du er helt ny på programmeringsspråk eller ser ut til å hoppe inn i en ny type programmering, er et av de viktigste spørsmålene å spørre: "Hvilket programmeringsspråk passer for meg?" Les mer, vær smart og vær forsiktig!

2. Koding bidrar til å styrke hjernens helse

Folk sier ofte at hjernen er som en muskel, og at du trenger å trene den hvis du vil være skarp. Er det egentlig sant? Og hvis så, teller programmeringen som mental trening, nok til at det påvirker hjernens helse?

En meta-studie i 1991 så på “effektene av dataprogrammering på kognitive utfall” og fant at studenter med erfaring med dataprogrammering fikk 16 prosentpoeng høyere på kognitive evne tester enn studenter uten.

En større studie i 1999 fant og bekreftet det “intellektuelt engasjerende aktiviteter tjener til å buffere individer mot [kognitiv] tilbakegang,” men oppdaget også at det er mulig at kognitiv tilbakegang kan føre til mindre deltakelse i intellektuelt engasjerende aktiviteter.

En enda større studie i 2009 kom til en lignende konklusjon, noe som tyder på “folk som engasjerer seg i hjernestimulerende aktiviteter i senere år kan redusere risikoen [og til og med forsinke utbruddet av] Alzheimers og andre typer demens.” Hjernestimulerende aktiviteter omfattet lesing, skriving, puslespill, brettspill og kortspill, og å spille musikk.

Til slutt fant en studie utgitt i 2013 at bare visse typer mentalt engasjement faktisk gir skarpere hjerner, nemlig krevende aktiviteter med høy etterspørsel som involverer læring og intellektuelle problemer.

Flere undersøkelser må selvfølgelig gjøres, men det er vanskelig å tenke på kognitiv aktivitet som er mer krevende og læring-sentrisk enn programmering.

Videre, mens ingen av disse studiene viser at intellektuelt engasjerende aktiviteter gjør deg smartere eller mer dyktige, viser de at høykrevende kognitive oppgaver i hvert fall utvider din nåværende hjernehelse og betydelig forhindrer nevral forverring.

Vi har tidligere hevdet at det aldri er for sent å begynne å lære å kode 3 Mytebusting grunner til å starte koding Selv i en eldre alder 3 Mytebusting grunner til å starte koding Selv i en eldre alder Har du noen gang lurt på om du er " for gammel "for å begynne å lære å programmere, er det enkle svaret at alle kan plukke den opp. Det virkelige spørsmålet er, bør du gi det et skudd? Les mer, og disse studiene tjener bare for å styrke vår posisjon. Programmering er bra for deg!

3. Koding er ikke alle matematikk og logikk

Ifølge en studie fra 2014 [PDF] som brukte fMRI-skanninger for å observere hjernevirksomhet mens programmerere prøvde å arbeide gjennom og forstå kodeoppdrag, er fem distinkte områder av hjernen involvert i å forstå kildekoden:

  • BA 6: Midtfrontale gyrus (Oppmerksomhet, språk, arbeidsminne)
  • BA 21: Midt-temporal gyrus (Semantisk minneinnhenting)
  • BA 40: Inferior parietal lobule (Arbeidsminne)
  • BA 44: Inferior frontal gyrus (Arbeidsminne)
  • BA 47: Inferior frontal gyrus (Språk, arbeidsminne)

Dette betyr at arbeid ved hjelp av kildekoden hovedsakelig bruker deler av hjernen som normalt er knyttet til språkbehandling, minne og oppmerksomhet.

Det som spesielt mangler er hjernegrupper som vanligvis er forbundet med matte og beregninger, som knapt registreres - selv når man forstår kodestykker som involverte sløyfer, kondisjoner, aritmetiske og andre algoritmiske operasjoner.

Selvfølgelig er denne studien noe ufullstendig, og forskerne innrømmer så mye:

  • Utdragene i forsøket var under 20 linjer med kode og tidsbegrenset, noe som betyr at de ikke var vanskelig nok til virkelig å utfordre fag.
  • Beviset tyder ikke på at programmeringsspråk er som fremmed språk, bare at de involverer lignende regioner i hjernen.
  • Fagene skrev ikke noen av sin egen kode, noe som trolig ville involvere ulike områder av hjernen enn å prøve å forstå eksisterende kode.

Men her er det vi kan gå bort med:

Vi vet at programmerere regelmessig vurderer kildekoden, enten kode som er selvskrevet eller tilhører noen andre. Vi vet også at programmerere ofte bruker mer tid til å fikse og refactoring kode enn å skrive ny kode fra grunnen av.

Så denne studien er ikke meningsløs. Programmering er ikke bare en “venstre hjerneaktivitet,” og man kan til og med hevde at høyrevurderte programmerere 6 signerer at du ikke er ment å være programmerer 6 tegn på at du ikke er ment å være programmerer Ikke alle er kuttet ut for å være programmerer. Hvis du ikke er helt sikker på at du er ment å være programmerer, er det noen tegn som kan vise deg i riktig retning. Les mer har en kant i denne forstand.

Lære å være en bedre programmerer

Programmering ferdigheter kommer ikke lett, men de kommer hvis du fortsetter øvelsen. Sjekk ut våre tips for å mestre hvilket programmeringsspråk som helst. 7 Nyttige triks for å mestre et nytt programmeringsspråk. 7 Nyttige triks for å mestre et nytt programmeringsspråk. Det er greit å være overveldet når du lærer å kode. Du vil sikkert glemme ting så fort du lærer dem. Disse tipsene kan hjelpe deg å bedre beholde all den nye informasjonen. Les mer, vår artikkel om fordelene med en programmeringsjournal Bli en bedre koder ved å holde en programmeringsjournal Bli en bedre koder ved å holde en programmeringsjournal Hold en programmeringsjournal og trykk på noen åpenbare fordeler. Å skrive journal kan hjelpe deg med å jobbe gjennom dine tanker og holde styr på programmeringsmålene dine. Les mer, og våre favorittleksjoner for selvlærte kodere. 5 Lærdommer til å bli en virkelig god selvlært programmerer. 5 Lærdommer til å bli en virkelig god selvlært programmør. Du har bestemt deg for å begynne programmering. Hvor går du? Disse fem utemy kursene gir et sterkt fundament på grunnleggende programmering. Les mer . Hvis du ønsker å ta sjansen med et bestemt programmeringsspråk, er det en god idé å takle et prosjekt. Sjekk ut hvordan du lærer C programmering med dette nybegynnerprosjektet.

Til slutt anbefaler jeg å se på disse TED-snakkene for programmerere. 20 TED-snakker om programmering. Alle må se 20 TED-snakker om programmering. Alle må se på disse TED-snakkene på programmering, og du lærer å være programmerer. Å vite hvordan man skriver kode er et aspekt av programmering, men å vite hvordan man tenker er nøkkelen. Les mer, som inkluderer alle slags tips, tanker, inspirasjoner, motivasjoner og historier som kan hjelpe deg.

Utforsk mer om: Programmering, psykologi.