Έχω γράψει κώδικα για τα τελευταία ~18 χρόνια, και επαγγελματικά για περίπου 8 χρόνια (συμπεριλαμβανομένης της Google, Uber) - και πρέπει να πω ότι το αγάπησα πραγματικά.
Έπρεπε να ξοδέψω το μεγαλύτερο μέρος του χρόνου μου δημιουργώντας διασκεδαστικά πράγματα, ο κύκλος ανταμοιβής ήταν σφιχτός και τα εργαλεία μου βελτιώνονταν σχεδόν κάθε λίγα χρόνια. Σύνταξη, αυτόματη ολοκλήρωση, IntelliSense, αναπαραγωγές σε επίπεδο έργου και ακόμη και πρώιμο Github Copilot έκαναν την εμπειρία μου γραφής κώδικα πιο χαρούμενη.
Αυτό το τελευταίο κύμα αισθάνεται πολύ, πολύ διαφορετικό. Με τον οργανικό προγραμματισμό (*cough* vibe-coding), δεν αισθάνεται σαν μια άλλη προοδευτική αναβάθμιση.
Προσπάθησα να περιορίσω το γιατί ακριβώς αισθάνεται τόσο διαφορετικό. Τότε, καθώς παρακολουθούσα έναν πράκτορα κώδικα μία φορά και μια άλλη μικρή αλλά ακόμα κάπως διφορούμενη εργασία στη βάση κώδικα μου, ξαφνικά μου ήρθε η ώρα. Δεν αισθάνεται σαν να «κωδικοποιώ» πια, μάλλον αισθάνεται σαν να είμαι «αναθέτοντας».«Νιώστε την εποχή»στιγμές του είδους.
Ακόμα αισθάνομαι σαν να «κατευθύνω» ή να «προγραμματίζω» το σύστημα.Αλλά αυτό που είναι διαφορετικό είναι ότι τώρα προγραμματίζω μια οργάνωση κωδικοποιητών πράκτορα για να επιτύχω το στόχο, αντί να προγραμματίζω τον υπολογιστή απευθείας.
ΕΝΑ ΣΟΒΑΡΟ ΑΠΟΤΕΛΕΣΜΑ
Το γεγονός είναι ότι ο καθένας στον κόσμο έχει τώρα (ή σύντομα θα έχει) πρόσβαση σε έναν στρατό ολοένα και πιο λαμπρών κωδικοποιητών στην τσέπη τους.
Είναι μια πικρή συνειδητοποίηση. ενσυναίσθησα μεΑμαζόνιοςΤο συναίσθημα είναι εδώ, μετά από ένα tweet όπου λέει ότι «δεν νομίζει πια ότι πρέπει να μάθετε να κωδικοποιείτε».
Κωδικοποίηση για λόγους τέχνης v/s Κωδικοποίηση για λόγους χρήστη
Η κωδικοποίηση για διασκέδαση είναι ευχάριστη. Πίσω στις ημέρες του undergrad, απολάμβανα πραγματικά τον ανταγωνιστικό προγραμματισμό επίσης. Η ομάδα μου πήγε ακόμη και για τις περιφερειακές ομάδες της ACM-ICPC Ασίας δύο φορές, και γενικά είχαμε μια έκρηξη. Υπάρχει μια ορισμένη βιασύνη που προέρχεται από το να καταλάβουμε ένα πρόβλημα και να γράψουμε κώδικα για να το λύσουμε. Δεν είναι εντελώς διαφορετικό από ένα παζλ σταυροειδών ή ένα sudoku ή ένα μαθηματικό πρόβλημα. Φυσικά, θα μπορούσατε να πάρετε βοήθεια για να το κάνετε (erm. cheat!), αλλά αυτό δεν είναι το νόημα.
Όταν εργάζεστε σε ένα προϊόν, πρέπει σε μεγάλο βαθμό να πετάξετε αυτή τη νοοτροπία από το παράθυρο. Εδώ, ο κώδικας υπάρχει κυρίως για να εξυπηρετήσει το προϊόν και τον χρήστη. Είναι ένα μέσο προς το τέλος. Ο τελικός χρήστης δεν νοιάζεται αν το έγραψα ή διέταξε έναν πράκτορα να το γράψει. Ο χρήστης νοιάζεται μόνο ότι λειτουργεί. Σωστά, αξιόπιστα, ασφαλή, γρήγορα. ότι μπορούν να ξεχάσουν ότι υπάρχει, και να συνεχίσουν την ημέρα τους. Έτσι, η ερώτηση γίνεται "Ποιος είναι ο γρηγορότερος τρόπος για να φτάσετε σε (καλό, διατηρήσιμο) κώδικα που κάνει αυτό;"
Δυστυχώς, φαίνεται ότι η απάντηση σε αυτό είναι ότι μπορεί να χρειαστεί να μάθω να... βγαίνω από το δρόμο. ότι ίσως ως επί το πλείστον δεν θα έπρεπε να γράφω κώδικα πια, επειδή κάνοντας αυτό θα με έκανε το εμπόδιο, ή ακόμα χειρότερα - το εμπόδιο.
στην«Ο μέσος όρος τελείωσε», ο Tyler Cowen μίλησε για τη δυναμική των ομάδων «ανθρώπου + υπολογιστή» στα σκάκι. Τέτοιες ομάδες (εκπληκτικά) εξακολουθούσαν να έχουν ένα πλεονέκτημα ακόμη και πρόσφατα όπως το 2013, αλλά η γραμμή τάσης της ανθρώπινης συμβολής στην ομάδα ήταν σαφής.«Για τι είναι καλοί οι άνθρωποι»: :
Είναι ενδιαφέρον να παρατηρηθεί μια προσέγγιση προς το σημείο στροφής, όπου ακόμη και οι πιο ταλαντούχοι άνθρωποι μετακινούνται από το να είναι πολύ πραγματικοί συνεισφέροντες στο να είναι αυστηρά μηδενικό περιθωριακό προϊόν.
Είναι ενδιαφέρον να παρατηρηθεί μια προσέγγιση προς το σημείο στροφής, όπου ακόμη και οι πιο ταλαντούχοι άνθρωποι μετακινούνται από το να είναι πολύ πραγματικοί συνεισφέροντες στο να είναι αυστηρά μηδενικό περιθωριακό προϊόν.
Μια παρόμοια δυναμική φαίνεται να παίζεται εδώ στην κωδικοποίηση.Προς το παρόν, φαίνεται ότι μπορώ ακόμα να προσθέσω αξία κοιτάζοντας την παραγωγή του μηχανήματος και προσθέτοντας αξία πάνω από αυτό, αλλά και πάλι - για πόσο καιρό; Αυτό που είναι σήμερα καλό για γρήγορη πρωτότυπο σήμερα θα βελτιωθεί και θα είναι ο οικοδόμος των ισχυρών συστημάτων αύριο.
Από τη μία πλευρά, τα πράγματα χαμηλού επιπέδου που αφαιρούνται δεν είναι καινούργια για το πεδίο. Επιστήμη των υπολογιστών, πολύ περισσότερο από άλλα πεδία έχει μια πλούσια ιστορία σύνθεσης. Οι πιθανότητες είναι ότι δεν έχετε γράψει σε μηχανικό κώδικα ή συναρμολόγηση σε κάποιο χρονικό διάστημα αν ποτέ (ευχαριστώ τους συντάκτες!). Έχετε σχεδόν σίγουρα χρησιμοποιήσει δομικά στοιχεία (βιβλιοθήκες / API / πλατφόρμες) που δημιουργήθηκαν από άλλους ανθρώπους.
Προς το παρόν, ωστόσο, η κωδικοποίηση παραμένει μόνο ένα μέρος της συνολικής διαδικασίας μηχανικής λογισμικού. Και αποδεικνύεται ότι ο τρόπος που μπορώ να φέρω τη μεγαλύτερη αξία σε αυτό το σύστημα δεν είναι με την ικανότητά μου να κωδικοποιώ πια, είναι με το όραμά μου και την ικανότητά μου να διατυπώσω αυτό που θέλω και να κατευθύνω αυτή την οργάνωση των πράκτορες προς αυτόν τον στόχο.
Πού πηγαίνουμε λοιπόν από εδώ;
Επειδή είναι σαν την αντιπροσωπεία, τα αξιώματα της διαχείρισης της ανθρώπινης οργάνωσης φαίνεται να ισχύουν για τη διαχείριση της οργάνωσης του πράκτορα.
- Γνωρίστε τους περιορισμούς των αντιπροσώπων σας και αναθέστε ανάλογα.Πάντα θα προσπαθούν πρόθυμα να δαγκώσουν περισσότερα που μπορούν να μασήσουν.Μην τα αφήσετε.
- Εγκαταστήστε συστήματα ελέγχων και ισορροπιών για να πιάσετε όταν μια αλλαγή σπάει, και να καθοδηγήσετε τον πράκτορα προς την κατεύθυνση της γραφής καλού κώδικα.
- Δημιουργήστε ένα περιβάλλον όπου οι πράκτορες μπορούν να πάρουν τις πληροφορίες που χρειάζονται για να πετύχουν. Η τεκμηρίωση είναι καλή. Ο διαχωρισμός των ανησυχιών είναι καλός. Μια καλά οργανωμένη βάση κώδικα είναι καλή.
- Η παράλληλη προγραμματισμός είναι καλή. Μην περιμένετε μόνο για έναν ενιαίο πράκτορα με έναν ενιαίο τρόπο, ειδικά για μακροχρόνιες εργασίες. Υπάρχει μια σταθερή πιθανότητα ότι οι μελλοντικοί προγραμματιστές ελίτ μοιάζουν με τους ανελέητους παίκτες του APM Starcraft - διοικούν και συλλέγουν τα αποτελέσματα του στρατού των μονάδων πράκτορα.
- Και το πιο σημαντικό, κάντε το όραμά σας σαφές και επικοινωνήστε το σαφώς, έτσι ώστε ο πράκτορας να μπορεί να εξουσιοδοτηθεί να κάνει τις σωστές αποφάσεις που ταιριάζουν στο ευρύτερο πλαίσιο σας.
Και μετά από όλα έχει ειπωθεί και γίνει όμως, όταν τελικά παραδώσετε κάτι - εξακολουθείτε να το σφραγίζετε με τη σφραγίδα της ποιότητας σας. Το όνομά σας και η φήμη σας είναι το εμπορικό σήμα σας. Ως ο "οδηγός" αυτών των πράκτορες, είστε ακόμα υπεύθυνοι για τα αποτελέσματά τους.