In che modo la programmazione influenza il tuo cervello 3 grandi verità secondo scienza

In che modo la programmazione influenza il tuo cervello 3 grandi verità secondo scienza / Programmazione

È vero: i programmatori pensano in modo diverso rispetto a tutti gli altri.

Per non dire che i programmatori sono necessariamente più intelligenti, più logici o più razionali di tutti, come si dice comunemente. Ma gli scienziati hanno recentemente iniziato a studiare il cervello dei programmatori e sono giunti a conclusioni interessanti.

Proprio come l'arte può plasmare la tua mente in vari modi, la programmazione influisce anche su come la pensi, forse in modi che potresti non aspettarti.

1. Codifica forme i tuoi modelli mentali

È importante quale linguaggio di programmazione impari prima? sì!

Questo sembra un po 'ingiusto, vero? Dopotutto, la maggior parte di noi ha il primo assaggio della programmazione a scuola e non è possibile scegliere quale lingua ci viene assegnata. Ho iniziato con C. Quelli più vecchi di me probabilmente iniziarono con FORTRAN, COBOL o BASIC. Per quanto riguarda voi gente nuova? Probabilmente hai iniziato su Java o Python.

Non ci sono dubbi: il design di un linguaggio di programmazione dà forma a come pensi. Edsger Dijkstra, uno dei più influenti scienziati informatici della storia, lo sapeva quando disse:

“Gli strumenti che usiamo hanno un'influenza profonda (e subdola) sulle nostre abitudini di pensiero e, quindi, sulle nostre capacità di pensiero.”

Ha poi continuato a dire:

“L'uso di COBOL paralizza la mente; il suo insegnamento dovrebbe quindi essere considerato un reato.”

E:

“È praticamente impossibile insegnare una buona programmazione agli studenti che hanno avuto una precedente esposizione al BASIC: come potenziali programmatori sono mentalmente mutilati oltre la speranza di rigenerazione.”

Ahia.

In un certo senso, tutti i linguaggi di programmazione sono ugualmente in grado di essere completi di Turing. Ma in un altro senso, la padronanza di una lingua può portare alla rovina in un'altra lingua. I programmatori Java e i programmatori Python sono due bestie diverse che si avvicinano alla codifica in due modi completamente diversi. Che cos'è la programmazione orientata agli oggetti? Le nozioni di base spiegate nei termini di Layman Che cos'è la programmazione orientata agli oggetti? Le nozioni di base spiegate nei termini di Layman I linguaggi di programmazione più moderni supportano il paradigma "programmazione orientata agli oggetti" (OOP). Ma cos'è esattamente OOP e perché è così utile? Leggi di più .

In altre parole, i paradigmi e gli idiomi del tuo primo linguaggio di programmazione influenzano e persino dettano il modo in cui pensi alle strutture dati, agli algoritmi, ecc..

Tanto che, in effetti, è effettivamente possibile prendere il codice anonimizzato e determinare chi lo ha scritto basandosi esclusivamente su come è stato affrontato il compito e su come è stato scritto il codice. Più il compito è difficile, più è facile “de-Anonimizza.”

Vedi questo documento sulla stetoscopia del codice [PDF] e questa trascrizione della conferenza sulla stetoscopia del codice:

“I programmatori possono offuscare i loro nomi di variabili o funzioni, ma non le strutture che inconsciamente preferiscono utilizzare o i loro operatori di incremento preferiti.”

In inglese, abbiamo un proverbio che riassume questo in un modo facile da capire: “Quando tutto ciò che hai è un martello, tutto sembra un chiodo.” Allo stesso modo, una volta che impari a programmare in un certo modo, è allettante pensare a tutti i problemi in questo modo.

Quindi, quando si sceglie un linguaggio di programmazione Cerchi i migliori linguaggi di programmazione? Comincià qui! Cerchi i migliori linguaggi di programmazione? Comincià qui! Se sei completamente nuovo nei linguaggi di programmazione o stai cercando di entrare in un nuovo tipo di programmazione, una delle domande più importanti da porsi è: "Quale linguaggio di programmazione è giusto per me?" Leggi di più, sii intelligente e stai attento!

2. La codifica aiuta a rafforzare la salute del cervello

Le persone spesso dicono che il cervello è come un muscolo e che devi esercitarlo se vuoi rimanere forte. È vero? E se è così, la programmazione conta come esercizio mentale, abbastanza da influire sulla salute del cervello?

Un meta-studio del 1991 ha esaminato “gli effetti della programmazione del computer sugli esiti cognitivi” e ha scoperto che gli studenti con esperienza di programmazione al computer hanno ottenuto un punteggio di 16 punti percentuali più alto nei test di capacità cognitiva rispetto agli studenti senza.

Uno studio più ampio del 1999 lo ha trovato e confermato “le attività intellettualmente coinvolgenti servono a tamponare gli individui contro il declino [cognitivo],” ma ha anche notato che è possibile che il declino cognitivo possa portare a una minore partecipazione ad attività intellettualmente coinvolgenti.

Uno studio ancora più grande nel 2009 è arrivato ad una conclusione simile, suggerendo che “le persone che intraprendono attività stimolanti il ​​cervello negli anni successivi possono ridurre il rischio [e persino ritardare l'insorgenza di] Alzheimer e altri tipi di demenza.” Le attività di stimolazione del cervello includevano la lettura, la scrittura, i puzzle, i giochi da tavolo e di carte e la riproduzione di musica.

Infine, uno studio pubblicato nel 2013 ha rilevato che solo alcuni tipi di coinvolgimento mentale prestano effettivamente a cervelli più acuti, vale a dire attività cognitive ad alta domanda che implicano difficoltà di apprendimento e intellettuali.

È necessaria più ricerca, ovviamente, ma è difficile pensare a qualsiasi attività cognitiva più impegnativa e incentrata sull'apprendimento rispetto alla programmazione.

Inoltre, mentre nessuno di questi studi mostra che le attività intellettualmente coinvolgenti ti rendono più intelligente o più capace, dimostrano che i compiti cognitivi di alta richiesta almeno estendono la tua attuale salute del cervello e prevengono in modo significativo il deterioramento neurale.

In precedenza abbiamo sostenuto che non è mai troppo tardi per iniziare a imparare come codificare 3 motivi scatenati per iniziare a programmare anche a causa di un mito di terza età per iniziare a programmare anche a un'età avanzata. Ti sei mai chiesto se sei " troppo vecchio "per iniziare a imparare a programmare, la risposta semplice è che chiunque può raccoglierlo. La vera domanda è, dovresti fare un tentativo? Per saperne di più, e questi studi servono solo a rafforzare la nostra posizione. La programmazione fa bene!

3. La codifica non è tutta matematica e logica

Secondo uno studio del 2014 [PDF] che utilizzava scansioni fMRI per osservare l'attività cerebrale mentre i programmatori cercavano di elaborare e comprendere frammenti di codice, cinque aree distinte del cervello sono coinvolte nella comprensione del codice sorgente:

  • BA 6: giro frontale medio (attenzione, lingua, memoria di lavoro)
  • BA 21: giro temporale medio (recupero della memoria semantica)
  • BA 40: lobulo parietale inferiore (memoria di lavoro)
  • BA 44: giro frontale inferiore (memoria di lavoro)
  • BA 47: Giro frontale inferiore (lingua, memoria di lavoro)

Ciò significa che il lavoro attraverso il codice sorgente utilizza principalmente parti del cervello normalmente associate all'elaborazione, alla memoria e all'attenzione del linguaggio.

Ciò che manca in particolare sono le regioni del cervello normalmente associate alla matematica e ai calcoli, che sono state registrate a stento, anche quando comprendevano frammenti di codice che includevano cicli, condizionali, operazioni aritmetiche e altre operazioni algoritmiche..

Naturalmente, questo studio è in qualche modo incompleto e i ricercatori ammettono che:

  • I frammenti dell'esperimento erano meno di 20 righe di codice e limitate nel tempo, il che significa che non erano abbastanza difficili da sfidare veramente i soggetti.
  • Le prove non suggeriscono che i linguaggi di programmazione sono come le lingue straniere, ma solo che coinvolgono regioni del cervello simili.
  • I soggetti non hanno scritto alcun codice proprio, il che probabilmente coinvolge diverse aree del cervello rispetto al tentativo di comprendere il codice esistente.

Ma ecco cosa possiamo fare con:

Sappiamo che i programmatori controllano regolarmente il codice sorgente, indipendentemente dal codice scritto da sé o appartenente a qualcun altro. Sappiamo anche che i programmatori impiegano spesso più tempo a sistemare e riscrivere il codice piuttosto che scrivere un nuovo codice da zero.

Quindi questo studio non ha senso. La programmazione non è solo un “attività a sinistra del cervello,” e si potrebbe anche obiettare che i programmatori bravi 6 segni che non si intende essere programmatori 6 segni che non si intende essere programmatori Non tutti sono tagliati per essere programmatori. Se non sei completamente sicuro di essere un programmatore, ecco alcuni segnali che potrebbero indirizzarti nella giusta direzione. Leggi di più ha un vantaggio in questo senso.

Imparare come essere un programmatore migliore

Le abilità di programmazione non sono facili, ma arriveranno se continuerai la pratica. Scopri i nostri suggerimenti per padroneggiare qualsiasi linguaggio di programmazione 7 Trucchi utili per padroneggiare un nuovo linguaggio di programmazione 7 Trucchi utili per padroneggiare un nuovo linguaggio di programmazione Va bene essere sopraffatti quando si sta imparando a programmare. Probabilmente dimenticherai le cose così velocemente come le impari. Questi suggerimenti possono aiutarti a conservare meglio tutte le nuove informazioni. Per saperne di più, il nostro articolo sui vantaggi di una rivista di programmazione Diventa un programmatore migliore mantenendo un diario di programmazione Diventa un programmatore migliore mantenendo un diario di programmazione Tieni un diario di programmazione e attingi a vantaggi evidenti. Scrivere un diario può aiutarti a elaborare i tuoi pensieri e tenere traccia degli obiettivi di programmazione. Per saperne di più, e le nostre lezioni preferite per programmatori autodidatta 5 Lezioni per diventare un vero programmatore autodidatta 5 Lezioni per diventare un vero programmatore autodidatta Hai deciso di iniziare a programmare. Dove vai? Questi cinque corsi Udemy offrono una solida base sui fondamenti della programmazione. Leggi di più . Se vuoi fare il grande passo con un linguaggio di programmazione specifico, affrontare un progetto è una buona idea. Scopri come imparare la programmazione in C con questo progetto per principianti.

Infine, raccomando di guardare questi TED Talk per i programmatori 20 TED Talks sulla programmazione Tutti devono guardare 20 TED Talks sulla programmazione Tutti devono guardare Con questi TED Talk sulla programmazione, imparerai come essere un programmatore. Sapere come scrivere codice è un aspetto della programmazione, ma saper pensare è la chiave. Leggi altro, che include tutti i tipi di suggerimenti, pensieri, ispirazioni, motivazioni e storie che possono aiutarti.

Scopri di più su: programmazione, psicologia.