Paul Graham για Java και "hacker" γλώσσες προγραμματισμού (2001)

Paul Graham για Java και "hacker" γλώσσες προγραμματισμού (2001)

Αυτό το δοκίμιο προέκυψε από συζητήσεις που είχα με αρκετούς προγραμματιστές σχετικά με το θέμα της μεροληψίας κατά της Java. Δεν πρόκειται για κριτική της Java, αλλά για ένα ξεκάθαρο παράδειγμα του «ραντάρ χάκερ».

Με την πάροδο του χρόνου, οι χάκερ αναπτύσσουν μια μύτη για καλή ή κακή τεχνολογία. Σκέφτηκα ότι θα ήταν ενδιαφέρον να προσπαθήσω να περιγράψω τους λόγους για τους οποίους βρίσκω αμφισβητήσιμη την Java.

Κάποιοι που το διάβασαν το θεώρησαν ως μια αξιοσημείωτη προσπάθεια να γράψουν κάτι για το οποίο δεν είχε γραφτεί ποτέ πριν. Άλλοι προειδοποίησαν ότι έγραφα για πράγματα για τα οποία δεν ήξερα τίποτα. Για κάθε ενδεχόμενο λοιπόν, θα ήθελα να διευκρινίσω ότι δεν γράφω για την Java (με την οποία δεν έχω συνεργαστεί ποτέ), αλλά για το «ραντάρ χάκερ» (το οποίο έχω σκεφτεί πολύ).

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

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

Μία από αυτές τις τεχνολογίες αποδείχθηκε ότι ήταν η Java για μένα. Δεν έχω γράψει ούτε ένα πρόγραμμα σε Java, και έχω περιγράψει μόνο την τεκμηρίωση, αλλά έχω την αίσθηση ότι δεν είναι προορισμένη να γίνει μια πολύ επιτυχημένη γλώσσα. Μπορεί να κάνω λάθος—το να κάνεις προβλέψεις για την τεχνολογία είναι μια επικίνδυνη επιχείρηση. Και όμως, ένα είδος απόδειξης της εποχής, να γιατί δεν μου αρέσει η Java:

  1. Υπερβολικός ενθουσιασμός. Αυτά τα πρότυπα δεν χρειάζεται να επιβληθούν. Κανείς δεν προσπάθησε να προωθήσει C, Unix ή HTML. Τα αληθινά πρότυπα τίθενται πολύ πριν καν τα ακούσουν οι περισσότεροι άνθρωποι. Στο ραντάρ ενός χάκερ, η Perl μοιάζει με την Java αποκλειστικά και μόνο λόγω των πλεονεκτημάτων της.
  2. Η Java δεν στοχεύει ψηλά. Στην αρχική περιγραφή της Java, ο Gosling δηλώνει ρητά ότι η Java σχεδιάστηκε για να είναι εύκολη για προγραμματιστές που είναι συνηθισμένοι στο C. Σχεδιάστηκε για να είναι μια άλλη C++:C με μερικές ιδέες δανεισμένες από πιο προηγμένες γλώσσες. Όπως οι δημιουργοί κωμικών σειρών, γρήγορου φαγητού ή ταξιδιωτικών περιηγήσεων, οι δημιουργοί της Java σχεδίασαν συνειδητά ένα προϊόν για ανθρώπους που δεν ήταν τόσο έξυπνοι όσο οι ίδιοι. Ιστορικά, οι γλώσσες που έχουν σχεδιαστεί για χρήση από άλλους ανθρώπους έχουν αποτύχει: Cobol, PL/1, Pascal, Ada, C++. Οι επιτυχημένες όμως ήταν αυτές που ανέπτυξαν οι δημιουργοί για τον εαυτό τους: C, Perl, Smalltalk, Lisp.
  3. Κρυφά κίνητρα. Κάποιος είπε κάποτε ότι ο κόσμος θα ήταν καλύτερος αν οι άνθρωποι έγραφαν βιβλία μόνο όταν είχαν κάτι να πουν, αντί να γράφουν όταν ένιωθαν να γράψουν ένα βιβλίο. Ομοίως, ο λόγος που συνεχίζουμε να ακούμε για Java δεν είναι επειδή προσπαθούν να μας πουν κάτι για τις γλώσσες προγραμματισμού. Ακούμε για την Java ως μέρος του σχεδίου της Sun να αντιμετωπίσει τη Microsoft.
  4. Κανείς δεν την αγαπά. Οι προγραμματιστές C, Perl, Python, Smalltalk ή Lisp είναι ερωτευμένοι με τις γλώσσες τους. Δεν έχω ακούσει ποτέ κανέναν να δηλώνει την αγάπη του για την Java.
  5. Οι άνθρωποι αναγκάζονται να το χρησιμοποιήσουν. Πολλοί άνθρωποι που γνωρίζω και χρησιμοποιούν Java το κάνουν από ανάγκη. Πιστεύουν ότι θα τους εξασφαλίσει χρηματοδότηση, ή πιστεύουν ότι θα προσελκύσει τους πελάτες, ή είναι απόφαση της διοίκησης. Αυτοί είναι έξυπνοι άνθρωποι. αν η τεχνολογία ήταν καλή, θα τη χρησιμοποιούσαν οικειοθελώς.
  6. Αυτό είναι ένα πιάτο πολλών σεφ. Οι καλύτερες γλώσσες προγραμματισμού αναπτύχθηκαν από μικρές ομάδες. Η Java καθοδηγείται από επιτροπή. Εάν αποδειχθεί επιτυχημένη γλώσσα, θα είναι η πρώτη φορά στην ιστορία που μια επιτροπή δημιουργεί μια τέτοια γλώσσα.
  7. Είναι γραφειοκρατική. Από όσα λίγα γνωρίζω για την Java, φαίνεται ότι υπάρχουν πολλά πρωτόκολλα για να κάνετε οτιδήποτε. Οι πολύ καλές γλώσσες δεν είναι έτσι. Σε αφήνουν να κάνεις ό,τι θέλεις και δεν σου στέκονται εμπόδιο.
  8. Τεχνητή διαφημιστική εκστρατεία. Τώρα η Sun προσπαθεί να προσποιηθεί ότι η Java βασίζεται στην κοινότητα, ότι είναι ένα έργο ανοιχτού κώδικα όπως η Perl ή η Python. Κι όμως, η ανάπτυξη ελέγχεται από μια τεράστια εταιρεία. Έτσι, η γλώσσα κινδυνεύει να αποδειχθεί η ίδια βαρετή ανέχεια με οτιδήποτε βγαίνει από τα σπλάχνα μιας μεγάλης εταιρείας.
  9. Δημιουργείται για μεγάλους οργανισμούς. Οι μεγάλες εταιρείες έχουν διαφορετικούς στόχους με τους χάκερ. Οι εταιρείες χρειάζονται γλώσσες που έχουν τη φήμη ότι είναι κατάλληλες για μεγάλες ομάδες μέτριων προγραμματιστών. Γλώσσες με χαρακτηριστικά όπως οι περιοριστές ταχύτητας στα φορτηγά U-Haul, που προειδοποιούν τους ανόητους να μην προκαλέσουν υπερβολική ζημιά. Στους χάκερ δεν αρέσουν οι γλώσσες που τους μιλάνε χαμηλά. Οι χάκερ χρειάζονται δύναμη. Ιστορικά, οι γλώσσες που δημιουργήθηκαν για μεγάλους οργανισμούς (PL/1, Ada) έχουν χάσει, ενώ οι γλώσσες που δημιουργήθηκαν από χάκερ (C, Perl) έχουν κερδίσει. Αιτία: Ο σημερινός νεαρός χάκερ είναι ο αυριανός ΚΟΤ.
  10. Οι λάθος άνθρωποι τη συμπαθούν. Οι προγραμματιστές που θαυμάζω περισσότερο γενικά δεν τρελαίνονται για την Java. Σε ποιον αρέσει; Κοστούμια, όσοι δεν βλέπουν τη διαφορά μεταξύ των γλωσσών, αλλά ακούν συνεχώς για Java στον Τύπο. προγραμματιστές σε μεγάλες εταιρείες, με εμμονή να βρουν κάτι καλύτερο ακόμα και από την C++. παμφάγοι μαθητές προσχολικής ηλικίας που θα λατρέψουν οτιδήποτε θα τους βρει δουλειά (ή θα καταλήξουν σε εξετάσεις). Οι απόψεις αυτών των ανθρώπων αλλάζουν ανάλογα με την κατεύθυνση του ανέμου.
  11. Ο γονιός της περνάει δύσκολα. Το επιχειρηματικό μοντέλο της Sun δέχεται επίθεση σε δύο μέτωπα. Οι φτηνοί επεξεργαστές Intel που χρησιμοποιούνται σε επιτραπέζιους υπολογιστές έχουν γίνει αρκετά γρήγοροι για διακομιστές. Και το FreeBSD φαίνεται να γίνεται τόσο καλό λειτουργικό σύστημα διακομιστή όσο το Solaris. Η διαφήμιση της Sun υποδηλώνει ότι θα χρειαστείτε διακομιστές Sun για εφαρμογές ποιότητας παραγωγής. Εάν αυτό ήταν αλήθεια, η Yahoo θα ήταν πρώτη στη σειρά για να αγοράσει τη Sun. Αλλά όταν δούλευα εκεί, χρησιμοποιούσαν διακομιστές Intel και FreeBSD. Αυτό προμηνύεται καλό για το μέλλον της Sun. Και αν πέσει ο ήλιος, η Java μπορεί επίσης να έχει πρόβλημα.
  12. Αγάπη του Υπουργείου Άμυνας. Το Υπουργείο Άμυνας ενθαρρύνει τους προγραμματιστές να χρησιμοποιούν Java. Και αυτό μοιάζει με το χειρότερο σημάδι από όλα. Το Υπουργείο Άμυνας κάνει μια εξαιρετική (αν και ακριβή) δουλειά για την προστασία της χώρας, αγαπούν τα σχέδια, τις διαδικασίες και τα πρωτόκολλα. Η κουλτούρα τους είναι εντελώς αντίθετη με την κουλτούρα των χάκερ. όταν πρόκειται για λογισμικό, τείνουν να κάνουν λάθος στοιχήματα. Η τελευταία γλώσσα προγραμματισμού που ερωτεύτηκε το Υπουργείο Άμυνας ήταν η Ada.

Σημειώστε ότι δεν πρόκειται για κριτική της Java, αλλά για κριτική στο εξώφυλλό της. Δεν γνωρίζω αρκετά καλά την Java ώστε να μου αρέσει ή να μην μου αρέσει. Απλώς προσπαθώ να εξηγήσω γιατί δεν με ενδιαφέρει να μάθω Java.

Μπορεί να φαίνεται βιαστικό να απορρίψετε μια γλώσσα χωρίς καν να προσπαθήσετε να προγραμματίσετε σε αυτήν. Αλλά αυτό είναι που πρέπει να αντιμετωπίσουν όλοι οι προγραμματιστές. Υπάρχουν πάρα πολλές τεχνολογίες για να τις εξερευνήσετε όλες. Πρέπει να μάθετε να κρίνετε από εξωτερικά σημάδια αν θα αξίζει τον χρόνο σας. Με την ίδια βιασύνη, απέρριψα τα Cobol, Ada, Visual Basic, IBM AS400, VRML, ISO 9000, SET Protocol, VMS, Novell Netware και CORBA—μεταξύ άλλων. Απλώς δεν μου έκαναν έκκληση.

Ίσως κάνω λάθος στην περίπτωση της Java. Ίσως μια γλώσσα που προωθείται από μια μεγάλη εταιρεία για να ανταγωνιστεί μια άλλη, που αναπτύχθηκε από την επιτροπή για τις μάζες, με πολλή διαφημιστική εκστρατεία και αγαπήθηκε από το Υπουργείο Άμυνας, παρόλα αυτά να αποδειχθεί μια τακτοποιημένη, όμορφη και δυνατή γλώσσα που θα χαρώ. πρόγραμμα σε. Μπορεί. Είναι όμως πολύ αμφίβολο.

Ευχαριστώ για τη μετάφραση: Denis Mitropolsky

PS

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο