paint-brush
Οι μεσαιωνικοί γραφείς μπορεί να έχουν σπάσει το μυστικό για να γράψουν καλύτερο κώδικαμε@tokenvolt
472 αναγνώσεις
472 αναγνώσεις

Οι μεσαιωνικοί γραφείς μπορεί να έχουν σπάσει το μυστικό για να γράψουν καλύτερο κώδικα

με Oleksandr Khrustalov3m2025/02/04
Read on Terminal Reader

Πολύ μακρύ; Να διαβασω

Τα καρολίγγια μικροσκοπικά μετέτρεψαν τα πυκνά και πολυσύχναστα λατινικά κείμενα σε κάτι σαφές και ευανάγνωστο. Οι γλώσσες προγραμματισμού υψηλού επιπέδου, όπως η Python ή η JavaScript, έφεραν παρόμοια σαφήνεια στον κόσμο του προγραμματισμού.
featured image - Οι μεσαιωνικοί γραφείς μπορεί να έχουν σπάσει το μυστικό για να γράψουν καλύτερο κώδικα
Oleksandr Khrustalov HackerNoon profile picture

Γνωρίζατε ότι ο τρόπος που γράφουμε – με κενά, σημεία στίξης, πεζά γράμματα και επισήμανση επικεφαλίδων και τίτλου – έχει τις ρίζες του σε μια καινοτομία σχεδόν 1.200 ετών; Μπορεί να σας εκπλήξει όταν μάθετε ότι αυτή η μεταμόρφωση δεν αφορούσε την αισθητική, αλλά την επίλυση ενός πρακτικού προβλήματος: τη διευκόλυνση της ανάγνωσης και της κοινής χρήσης κειμένων. Κάνοντας τα κείμενα ευανάγνωστα.


Ας πάμε πίσω στη Ρωμαϊκή Αυτοκρατορία. Πριν από τον 2ο αιώνα, η πιο δημοφιλής μορφή γραφής ήταν τα mauscule - ουσιαστικά τα κεφαλαία γράμματα. Μετά την πτώση της Ρώμης τον 5ο αιώνα, ο Σκοτεινός Χρόνος έφερε χάος και τα συστήματα γραφής έγιναν όλο και πιο κατακερματισμένα και δυσανάγνωστα.


Γρήγορα στον 7ο αιώνα, και ό,τι έχει απομείνει από τη Ρωμαϊκή Αυτοκρατορία έχει διασπαστεί σε μικρότερα εδάφη. Σε αυτή την ταραγμένη περίοδο άρχισε να διαμορφώνεται η Φραγκική Αυτοκρατορία. Ένα κύριο γεγονός συνέβη το 732. Ο Κάρολος Μαρτέλ, ένας Φράγκος στρατιωτικός ηγέτης, απέκρουσε με επιτυχία μια εισβολή του Χαλιφάτου των Ομαγιάδων στη Μάχη των Τουρ. Αυτή η νίκη εξασφάλισε την κυριαρχία της Φραγκικής Αυτοκρατορίας στην Ευρώπη και επέτρεψε στον Καρλομάγνο, εγγονό του Καρόλου Μαρτέλ, να οικοδομήσει πάνω σε αυτή την κληρονομιά.


Ταυτόχρονα, η θρησκεία άρχισε να διαδραματίζει τεράστιο ρόλο, οδηγώντας στην εμφάνιση εκκλησιών σε όλη την Καρολίγγια Αυτοκρατορία. Ο Καρλομάγνος είχε στόχο να διαδώσει τον Χριστιανισμό σε ολόκληρη την αυτοκρατορία. Για να το κάνει αυτό χρειαζόταν ξεκάθαρα, τυποποιημένα αντίγραφα θρησκευτικών κειμένων, κυρίως της Αγίας Γραφής. Αλλά υπήρχε ένα πρόβλημα: τα λατινικά κείμενα της εποχής ήταν κάπως δύσκολο να χωνευτούν, καθιστώντας σχεδόν αδύνατο να διαβαστούν και να αντιγραφούν με ακρίβεια.


Πώς έμοιαζε το κείμενο στα λατινικά εκείνη την εποχή; Ήταν κάτι παρόμοιο με αυτό.


Λατινικό mauscule. Όλες οι λέξεις και γραμμένες μαζί, χωρίς σημεία στίξης, κάθε γράμμα είναι κεφαλαίο.


Δεν είναι εύκολο να αποκρυπτογραφήσεις αυτό το χάος! Τώρα φανταστείτε ότι δεν χρειάζεται μόνο να το αποκρυπτογραφήσετε αλλά και να δημιουργήσετε ένα αντίγραφό του γραμμένο στο χέρι. Όχι, δεν υπήρχε ακόμη εκτύπωση, συγγνώμη – έπρεπε να γράψετε κάθε αντίγραφο με το χέρι. Και τότε άλλοι άνθρωποι πρέπει να διαβάσουν τα αντίγραφά σας. Εφιάλτης, σωστά;


Τότε γεννήθηκε το καρολίγγειο μικροσκοπικό - ένα σενάριο που εισήγαγε πεζά γράμματα, κενά μεταξύ των λέξεων και σημεία στίξης. Μεταμόρφωσε τα πυκνά και πολυσύχναστα λατινικά κείμενα σε κάτι σαφές και ευανάγνωστο. Αυτή η καινοτομία έκανε την αντιγραφή κειμένων πιο γρήγορη και πιο ακριβή, διασφαλίζοντας ότι θα μπορούσαν να διαβαστούν από ιερείς και μελετητές σε ολόκληρη την αυτοκρατορία.


Καρολίγγεια μικροσκοπική.


Ρωτήστε οποιονδήποτε προγραμματιστή και θα απαντούσε ότι στην ανάπτυξη λογισμικού η αναγνωσιμότητα είναι εξίσου κρίσιμη. Γλώσσες προγραμματισμού υψηλού επιπέδου, όπως η Python ή η JavaScript, έφεραν παρόμοια σαφήνεια στον κόσμο του προγραμματισμού, όπως η καρολίγγεια μικροσκοπική γραφή. Επέτρεψαν στις ομάδες να γράψουν κώδικα που να μπορεί να διατηρηθεί, τον οποίο οι άλλοι μπορούν εύκολα να κατανοήσουν και να βασιστούν. Οι υπολογιστές δεν ενδιαφέρονται για την αναγνωσιμότητα ενός κώδικα, στην πραγματικότητα, είναι κοινή πρακτική η ελαχιστοποίηση του κώδικα σε ορισμένες περιπτώσεις (για παράδειγμα, στην ανάπτυξη του frontend). Έτσι, ο κώδικας είναι γραμμένος για άλλους συναδέλφους προγραμματιστές για να τον διαβάσετε αργότερα ή ακόμα και για τον εαυτό σας να τον διαβάσετε αργότερα.


Θα μπορούσατε να πείτε "Εντάξει, κατάλαβα, φέρνετε μια ωραία μεταφορά μεταξύ της αρχαίας γραφής που χρησιμοποιούν οι ιερείς και ενός προγραμματισμού. Αλλά τι πρέπει να μάθω από αυτό;". Το μάθημα εδώ δεν αφορά μόνο τη σύνταξη ευανάγνωστου κώδικα – είναι να ορίσουμε τι σημαίνει πραγματικά αναγνώσιμο . Τι κάνει ένα κομμάτι κώδικα πιο ευανάγνωστο από ένα άλλο αλλά παρόμοιο; Πρακτικές όπως η συνεπής ονομασία για μεταβλητές, συναρτήσεις και ενότητες είναι μια αρχή, αλλά ως σύνολο μηχανικής πειθαρχίας, βρισκόμαστε ακόμα στα πρώτα στάδια της ανακάλυψης τι κάνει τον κώδικα εγγενώς κατανοητό και διατηρήσιμο.


Ακριβώς όπως η μικροσκοπική καρολίγγεια δεν ήταν το τέλος της εξέλιξης της καλλιγραφίας, οι σημερινές γλώσσες προγραμματισμού υψηλού επιπέδου είναι μόνο ένα βήμα στο ταξίδι μας προς την πιο προσιτή και αποτελεσματική ανάπτυξη λογισμικού.