Πώς ο προγραμματισμός επηρεάζει τον εγκέφαλό σας: 3 μεγάλες αλήθειες σύμφωνα με την επιστήμη
Διαφήμιση
Είναι αλήθεια: οι προγραμματιστές σκέφτονται διαφορετικά από όλους τους άλλους.
Για να μην πω ότι οι προγραμματιστές είναι αναγκαστικά πιο έξυπνοι, πιο λογικοί ή πιο λογικοί από όλους τους άλλους, όπως συνήθως λέγεται. Αλλά οι επιστήμονες έχουν αρχίσει πρόσφατα να μελετούν τους εγκεφάλους προγραμματιστών και έχουν φτάσει σε μερικά ενδιαφέροντα συμπεράσματα.
Ακριβώς όπως η τέχνη μπορεί να διαμορφώσει το μυαλό σας με διάφορους τρόπους, ο προγραμματισμός των υπολογιστών επηρεάζει επίσης τον εγκέφαλό σας και τον τρόπο σκέψης σας - ίσως με τρόπους που ίσως να μην περιμένατε.
1. Η κωδικοποίηση διαμορφώνει τα ψυχικά σας μοντέλα
Έχει σημασία η γλώσσα προγραμματισμού που μαθαίνετε πρώτα; Ναί!
Αυτό φαίνεται λίγο άδικο, έτσι δεν είναι; Μετά από όλα, οι περισσότεροι από εμάς παίρνουν την πρώτη μας γεύση του προγραμματισμού στο σχολείο, και δεν μπορούμε να επιλέξουμε ποια γλώσσα παίρνει ώθηση επάνω μας. Ξεκίνησα με το C. Οι ηλικιωμένοι από μένα πιθανότατα ξεκίνησαν με το FORTRAN, το COBOL ή το BASIC. Όσο για σας νεότερους λαούς; Ίσως ξεκινήσατε σε Java ή Python.
Δεν υπάρχει αμφιβολία γι 'αυτό: ο σχεδιασμός μιας γλώσσας προγραμματισμού διαμορφώνει το πώς σκέφτεστε. Ο Edsger Dijkstra, ένας από τους πιο σημαντικούς επιστήμονες της ιστορίας, ήξερε αυτό όταν είπε:
"Τα εργαλεία που χρησιμοποιούμε έχουν μια βαθιά (και υποτιμητική) επιρροή στις σκέψεις μας και, συνεπώς, στις ικανότητες σκέψης μας".
Στη συνέχεια συνέχισε να λέει:
"Η χρήση του COBOL παγιδεύει τον νου. η διδασκαλία του πρέπει επομένως να θεωρείται ποινικό αδίκημα. "
Και:
"Είναι πρακτικά αδύνατο να διδάξουμε τον καλό προγραμματισμό σε σπουδαστές που είχαν προηγουμένως εκτεθεί στο BASIC: ως δυνητικοί προγραμματιστές, είναι ψυχικά αλλοιωμένοι πέρα από την ελπίδα αναγέννησης".
Ωχ.
Κατά μία έννοια, όλες οι γλώσσες προγραμματισμού είναι εξίσου ικανές με το ότι είναι όλοι Turing-πλήρεις. Αλλά με μια άλλη έννοια, η γνώση μιας γλώσσας μπορεί να οδηγήσει σε καταστροφή σε άλλη γλώσσα. Οι προγραμματιστές Java και οι προγραμματιστές Python είναι δύο διαφορετικά θηρία που πλησιάζουν την κωδικοποίηση σε δύο εντελώς διαφορετικούς τρόπους. Τι είναι ο προγραμματισμός αντικειμενοστραφής; Τα βασικά που εξηγούνται σε όρους Layman Τι είναι ο αντικειμενοστραφής Προγραμματισμός; Τα βασικά που εξηγούνται στους όρους του Layman Οι περισσότερες σύγχρονες γλώσσες προγραμματισμού υποστηρίζουν το πρότυπο "object oriented programming" (OOP). Αλλά τι ακριβώς είναι ο OOP και γιατί είναι τόσο χρήσιμο; Διαβάστε περισσότερα .
Με άλλα λόγια, τα παραδείγματα και τα ιδιώματα της πρώτης γλώσσας προγραμματισμού επηρεάζουν και ακόμη υπαγορεύουν το πώς σκέφτεστε για δομές δεδομένων, αλγόριθμους κλπ.
Τόσο πολύ, στην πραγματικότητα, είναι πραγματικά δυνατό να ληφθεί ανώνυμος κώδικας και να καθοριστεί ποιος το έγραψε με βάση μόνο τον τρόπο με τον οποίο προσεγγίσθηκε το έργο και πώς γράφτηκε ο κώδικας. Όσο πιο δύσκολη είναι η εργασία, τόσο πιο εύκολη είναι η "απο-ανωνυμοποίηση".
Δείτε αυτό το έγγραφο σχετικά με την κωδικομετρία κώδικα [Δεν διατίθεται πλέον] και αυτή η μεταγραφή διερμηνείας διδακτικού κώδικα:
"Οι προγραμματιστές μπορούν να αποκρύψουν τα ονόματα των μεταβλητών ή των λειτουργιών τους, αλλά όχι τις δομές που προτιμούν υποσυνείδητα να χρησιμοποιούν ή τους αγαπημένους τους φορείς αύξησης."
Στα αγγλικά, έχουμε μια παροιμία που το συνοψίζει με έναν εύκολο τρόπο: "Όταν το μόνο που έχετε είναι ένα σφυρί, όλα μοιάζουν με ένα καρφί". Ομοίως, μόλις μάθετε πώς να προγραμματίσετε με κάποιο τρόπο, είναι δελεάζοντας να σκεφτόμαστε όλα τα προβλήματα με αυτόν τον τρόπο.
Έτσι, όταν επιλέγετε μια γλώσσα προγραμματισμού Ψάχνετε για τις καλύτερες γλώσσες προγραμματισμού; Ξεκινήστε εδώ! Ψάχνετε για τις καλύτερες γλώσσες προγραμματισμού; Ξεκινήστε εδώ! Είτε είστε εντελώς νέοι στις γλώσσες προγραμματισμού είτε θέλετε να μεταβείτε σε ένα νέο είδος προγραμματισμού, μια από τις πιο σημαντικές ερωτήσεις είναι: "Ποια γλώσσα προγραμματισμού είναι κατάλληλη για μένα;" Διαβάστε περισσότερα, να είστε έξυπνοι και να είστε προσεκτικοί!
2. Ο προγραμματισμός συμβάλλει στην ενίσχυση της υγείας του εγκεφάλου
Οι άνθρωποι συχνά λένε ότι ο εγκέφαλος είναι σαν ένας μυς και ότι πρέπει να τον ασκείτε αν θέλετε να μείνετε αιχμηρός. Είναι πραγματικά αλήθεια; Και αν ναι, ο προγραμματισμός μετράει ως ψυχική άσκηση, αρκετά που επηρεάζει την υγεία του εγκεφάλου;
Μια μετα-μελέτη του 1991 εξέτασε τις επιδράσεις του προγραμματισμού των υπολογιστών σε γνωστικά αποτελέσματα και διαπίστωσε ότι οι μαθητές με εμπειρία στον προγραμματισμό υπολογιστών βαθμολόγησαν 16 εκατοστιαίες μονάδες υψηλότερα στις δοκιμασίες γνωστικής ικανότητας από ό, τι οι μαθητές χωρίς.
Μεγαλύτερη μελέτη το 1999 διαπίστωσε και επιβεβαίωσε ότι "οι δραστηριότητες που εμπλέκονται σε πνευματικά δικαιώματα χρησιμεύουν για την απομάκρυνση των ατόμων από τη [γνωστική] παρακμή", αλλά επίσης σημείωσε ότι είναι πιθανό η γνωστική παρακμή να οδηγήσει σε μικρότερη συμμετοχή σε δραστηριότητες που εμπλέκονται διανοητικά.
Μια ακόμα μεγαλύτερη μελέτη το 2009 κατέληξε σε παρόμοιο συμπέρασμα, υποδεικνύοντας ότι «τα άτομα που ασκούν δραστηριότητες ερεθισμού εγκεφάλου τα επόμενα χρόνια μπορούν να μειώσουν τον κίνδυνο [και ακόμη και να καθυστερήσουν την έναρξη] του Alzheimer και άλλων μορφών άνοιας». συμπεριλαμβανομένης της ανάγνωσης, της γραφής, των παζλ, των παιχνιδιών του σκάφους και των καρτών και της αναπαραγωγής μουσικής.
Τέλος, μια μελέτη που δημοσιεύτηκε το 2013 διαπίστωσε ότι μόνο ορισμένα είδη πνευματικής εμπλοκής προσφέρονται πραγματικά σε πιο έντονους εγκεφάλους, δηλαδή σε γνωστικές δραστηριότητες υψηλής ζήτησης που περιλαμβάνουν μάθηση και διανοητική δυσκολία.
Πρέπει να γίνει περισσότερη έρευνα, βεβαίως, αλλά είναι δύσκολο να σκεφτούμε κάποια γνωστική δραστηριότητα που είναι πιο απαιτητική και μάθησης-κεντρική από τον προγραμματισμό.
Επιπλέον, ενώ καμία από αυτές τις μελέτες δεν δείχνει ότι οι δραστηριότητες με πνευματική συμπεριφορά σας κάνουν πιο έξυπνες ή πιο ικανές, δείχνουν ότι τα γνωστικά καθήκοντα υψηλής ζήτησης επεκτείνουν τουλάχιστον την τρέχουσα υγεία του εγκεφάλου σας και εμποδίζουν σημαντικά τη νευρική υποβάθμιση.
Έχουμε προηγουμένως υποστηρίξει ότι δεν είναι ποτέ αργά για να αρχίσετε να μαθαίνετε πώς να κωδικοποιήσετε 3 Μύθος-Busting Λόγοι για να ξεκινήσετε την κωδικοποίηση ακόμη και σε μια μεγαλύτερη ηλικία 3 Μύθος-Busting Λόγοι για να ξεκινήσετε την κωδικοποίηση ακόμα και σε μια μεγαλύτερη ηλικία Έχετε ποτέ αναρωτηθεί εάν είστε " πολύ παλιά "για να αρχίσετε να μαθαίνετε πώς να προγραμματίζετε, η απλή απάντηση είναι ότι ο καθένας μπορεί να το πάρει. Το πραγματικό ερώτημα είναι, θα πρέπει να το δώσετε; Διαβάστε περισσότερα και αυτές οι μελέτες χρησιμεύουν μόνο για την ενίσχυση της θέσης μας. Ο προγραμματισμός είναι καλός για εσάς!
3. Η κωδικοποίηση δεν είναι όλα τα μαθηματικά και λογικά
Σύμφωνα με μια μελέτη του 2014 [PDF] που χρησιμοποίησε fMRI σαρώνει για να παρατηρήσει την εγκεφαλική δραστηριότητα ενώ οι προγραμματιστές προσπάθησαν να εργαστούν και να κατανοήσουν αποσπάσματα κώδικα, πέντε ξεχωριστές περιοχές του εγκεφάλου εμπλέκονται στην κατανόηση του πηγαίου κώδικα:
- BA 6: Μεσαία μετωπική έδρα (Προσοχή, γλώσσα, μνήμη εργασίας)
- BA 21: Μέση χρονική γύρου (ανάκτηση σημασιολογικής μνήμης)
- BA 40: Χαμηλή κοιλιακή κοιλότητα (μνήμη εργασίας)
- BA 44: Μικρή μετωπική έλικα (μνήμη εργασίας)
- BA 47: Μικρή μετωπική έλικα (Γλώσσα, μνήμη εργασίας)
Αυτό σημαίνει ότι η εργασία μέσω πηγαίου κώδικα χρησιμοποιεί κυρίως τμήματα του εγκεφάλου που σχετίζονται συνήθως με τη γλώσσα, τη μνήμη και την προσοχή.
Αυτό που λείπει είναι οι περιοχές του εγκεφάλου που συσχετίζονται συνήθως με τα μαθηματικά και τους υπολογισμούς, οι οποίες μόλις καταγράφηκαν - ακόμη και όταν κατανοούσαν αποσπάσματα κώδικα που περιελάμβαναν βρόχους, όρους, αριθμητικές και άλλες αλγοριθμικές πράξεις.
Φυσικά, αυτή η μελέτη είναι κάπως ατελής, και οι ερευνητές παραδέχονται τόσο πολύ:
- Τα αποσπάσματα στο πείραμα ήταν κάτω από 20 γραμμές κώδικα και χρονικά περιορισμένα, πράγμα που σημαίνει ότι δεν ήταν αρκετά δύσκολο να αμφισβητήσουν πραγματικά τα θέματα.
- Τα στοιχεία δεν υποδεικνύουν ότι οι γλώσσες προγραμματισμού είναι σαν τις ξένες γλώσσες, μόνο ότι περιλαμβάνουν παρόμοιες περιοχές του εγκεφάλου.
- Τα θέματα δεν έγραψαν κανένα από τον δικό τους κώδικα, ο οποίος πιθανότατα θα περιελάμβανε διαφορετικές περιοχές του εγκεφάλου παρά να προσπαθεί να κατανοήσει τον υπάρχοντα κώδικα.
Αλλά εδώ μπορούμε να περπατήσουμε:
Γνωρίζουμε ότι οι προγραμματιστές επανεξετάζουν τακτικά τον πηγαίο κώδικα, ανεξάρτητα από τον κώδικα που είναι αυτογραφόμενος ή ανήκει σε κάποιον άλλο. Γνωρίζουμε επίσης ότι οι προγραμματιστές συχνά ξοδεύουν περισσότερο χρόνο για τον καθορισμό και τον επαναπροσδιορισμό κώδικα από το γράψιμο του νέου κώδικα από το μηδέν.
Έτσι αυτή η μελέτη δεν έχει νόημα. Ο προγραμματισμός δεν είναι απλώς μια «δραστηριότητα αριστερού μυαλοειδούς» και κάποιος μπορεί να υποστηρίξει ακόμη και ότι οι προγραμματιστές με δεξιό νόημα 6 Σημάδια που δεν σας ενδιαφέρουν να είστε προγραμματιστές 6 Σημεία που δεν σας ενδιαφέρουν να είστε προγραμματιστές Όχι ο καθένας έχει αποκοπεί να είναι προγραμματιστής. Εάν δεν είστε απόλυτα σίγουροι ότι θέλετε να είστε προγραμματιστής, υπάρχουν μερικές ενδείξεις που μπορεί να σας οδηγήσουν προς τη σωστή κατεύθυνση. Διαβάστε περισσότερα έχουν μια άκρη με αυτή την έννοια.
Μάθηση πώς να είστε καλύτερος προγραμματιστής
Οι δεξιότητες προγραμματισμού δεν είναι εύκολο, αλλά θα έρθουν αν τηρήσετε την πρακτική. Ελέγξτε τις συμβουλές μας για την πλοήγηση σε οποιαδήποτε γλώσσα προγραμματισμού, το άρθρο μας σχετικά με τα οφέλη ενός περιοδικού προγραμματισμού και τα αγαπημένα μας μαθήματα για αυτοδίδακτους κωδικοποιητές. Αν θέλετε να πάρετε μια βουτιά με μια συγκεκριμένη γλώσσα προγραμματισμού, η αντιμετώπιση ενός έργου είναι μια καλή ιδέα. Ελέγξτε πώς να μάθετε τον προγραμματισμό C με αυτό το πρόγραμμα αρχαρίων.
Τέλος, προτείνω να παρακολουθήσετε αυτές τις συνομιλίες TED για προγραμματιστές 20 TED Συζητήσεις για τον προγραμματισμό Ο καθένας πρέπει να παρακολουθήσει 20 TED συνομιλίες για τον προγραμματισμό Ο καθένας πρέπει να προσέξει Με αυτές τις συζητήσεις TED στον προγραμματισμό, θα μάθετε πώς να είστε προγραμματιστής. Το να γνωρίζεις πώς να γράψεις τον κώδικα είναι μια πτυχή του προγραμματισμού, αλλά ξέρεις πώς να σκέφτεσαι είναι το κλειδί. Διαβάστε περισσότερα, τα οποία περιλαμβάνουν όλα τα είδη συμβουλών, σκέψεων, εμπνεύσεων, κινήτρων και ιστοριών που μπορεί να σας βοηθήσουν.
Εξερευνήστε περισσότερα σχετικά με: Προγραμματισμός, Ψυχολογία.