Τι σημαίνουν οι κορυφαίες ειδήσεις χάκερ αυτής της εβδομάδας για τους μαθητές Python
Εάν μαθαίνετε Python ή μόλις ξεκινάτε ως προγραμματιστής, μια πρώτη σελίδα των Hacker News μπορεί να διαβαστεί ως δημοψήφισμα σχετικά με το εάν το σχέδιό σας εξακολουθεί να έχει νόημα. Οι σημερινές κορυφαίες ιστορίες ως επί το πλείστον δεν είναι αυτού του είδους οι ειδήσεις. Διαβάστε πέρα από τους τίτλους και σχεδόν κάθε ένα από αυτά είναι μια υπενθύμιση ότι η υπομονή με τις αναφορές σφαλμάτων, η κατανόηση της πραγματικής κλίμακας των εργαλείων σας και η σκεπτικιστική αντιμετώπιση των αξιώσεων αναφοράς έχουν μεγαλύτερη σημασία από οποιοδήποτε πλαίσιο ή μοντέλο είναι στην τάση αυτή την εβδομάδα. Εδώ είναι τι λέει στην πραγματικότητα κάθε ιστορία, με την πηγή συνδεδεμένη, και μια συγκεκριμένη πρόταση για κάποιον που βρίσκεται νωρίς στην καριέρα της Python.
Το Postgres 19 άργησε, και αυτό είναι σημάδι καλής δοκιμής, όχι αποτυχίας
Το Postgres 19 άργησε γιατί βρίσκονται τώρα τόσα άλλα σφάλματα βρέθηκε κοντά στην κορυφή του Hacker News σήμερα με πάνω από 800 βαθμούς. Ο τίτλος από μόνος του δεν λέει γιατί εμφανίζονται περισσότερα σφάλματα τώρα από ό,τι σε προηγούμενους κύκλους κυκλοφορίας, μόνο ότι είναι, και ότι ο επιπλέον αριθμός σφαλμάτων ωθεί την ημερομηνία κυκλοφορίας πίσω.
Το χρήσιμο μάθημα για όποιον μαθαίνει Python δεν αφορά συγκεκριμένα τα εσωτερικά της PostgreSQL, είναι για το πώς φαίνεται ένα υγιές έργο λογισμικού από έξω. Μια ολισθηρή ημερομηνία κυκλοφορίας επειδή οι δοκιμαστές συνεχίζουν να βρίσκουν πραγματικά σφάλματα είναι σημάδι ότι ένα έργο παίρνει σοβαρά την ορθότητα, όχι σημάδι δυσλειτουργίας. Εάν φτιάχνετε τα δικά σας μικρά έργα και αισθάνεστε πίσω επειδή συνεχίζετε να βρίσκετε σφάλματα στον κώδικα που πιστεύατε ότι είχαν τελειώσει, αυτό είναι φυσιολογική ανάπτυξη λογισμικού, δεν αποτελεί ένδειξη ότι είστε κακός σε αυτό. Γράψτε δοκιμές για τις λειτουργίες για τις οποίες είστε λιγότερο σίγουροι και αντιμετωπίστε το "Βρήκα άλλο σφάλμα" καθώς η διαδικασία λειτουργεί και δεν αποτυγχάνει.
Το Scaling Git στο OpenAI είναι μια υπενθύμιση ότι ο έλεγχος έκδοσης είναι υποδομή και όχι πλαίσιο ελέγχου
Το Scaling Git στο OpenAI συγκέντρωσε 213 βαθμούς σήμερα. Το κομμάτι αφορά τη λειτουργία του Git σε μια κλίμακα που οι περισσότεροι μεμονωμένοι προγραμματιστές δεν συναντούν ποτέ προσωπικά, αλλά η υποκείμενη δεξιότητα που υποδεικνύει είναι ότι υποτιμά κάθε νεότερος προγραμματιστής: η κατανόηση του τι κάνει στην πραγματικότητα το σύστημα ελέγχου έκδοσης, όχι μόνο τις λίγες εντολές που έχετε απομνημονεύσει.
Οι περισσότεροι άνθρωποι μαθαίνουν «git add», «git commit» και «git push» ως μυϊκή μνήμη και δεν προχωρούν ποτέ περισσότερο. Αυτό είναι καλό για ένα σόλο σενάριο, αλλά τη στιγμή που εργάζεστε σε μια ομάδα, θα χτυπήσετε συγκρούσεις συγχώνευσης, θα χρειαστεί να επαναφέρετε έναν κλάδο ή θα πρέπει να καταλάβετε γιατί ένα αρχείο εξαφανίστηκε από το ιστορικό. Το μάθημα του Python Foundations δεν διδάσκει απευθείας το Git, αλλά η συνήθεια που δημιουργεί, η προσεκτική ανάγνωση μηνυμάτων λάθους αντί να πανικοβληθεί, είναι η ίδια συνήθεια που μετατρέπει ένα μπερδεμένο σφάλμα Git σε κάτι επιλύσιμο αντί για τρομακτικό.
Η επιτάχυνση δημιουργίας DNS του Cloudflare είναι μια μελέτη περίπτωσης στη δημιουργία προφίλ πριν από τη βελτιστοποίηση
Μειώσαμε στο μισό την καθυστέρηση δημιουργίας DNS και μειώσαμε τη χρήση μνήμης κατά 85% προσγειώθηκε 178 πόντους σήμερα. Αυτός ο συγκεκριμένος αριθμός βελτίωσης προέρχεται από την ανάρτηση ιστολογίου μηχανικής της Cloudflare που περιγράφει τη δουλειά τους, όχι έναν ανεξάρτητο έλεγχο, επομένως θεωρήστε το ως ένα αυτοαναφερόμενο αποτέλεσμα από την ομάδα που δημιούργησε την επιδιόρθωση, η οποία εξακολουθεί να είναι μια ουσιαστική μελέτη περίπτωσης στον πραγματικό κόσμο.
Το μοτίβο κάτω από την επικεφαλίδα είναι αυτό που μπορείτε να χρησιμοποιήσετε σε ένα πολύ μικρότερο έργο: Η ανάρτηση του Cloudflare περιγράφει την ανοικοδόμηση μόνο των τμημάτων ενός συστήματος που στην πραγματικότητα άλλαξαν, αντί να ξαναχτίζετε τα πάντα κάθε φορά. Η ίδια ιδέα ισχύει τη στιγμή που το δικό σας σενάριο Python αργεί: προτού μαντέψετε μια βελτιστοποίηση, μετρήστε ποιο μέρος είναι πραγματικά αργό χρησιμοποιώντας τη λειτουργική μονάδα «cProfile» που αποστέλλεται με την Python:
Το να μαντέψετε διορθώσεις απόδοσης χωρίς πρώτα να δημιουργήσετε προφίλ είναι το πώς οι προγραμματιστές σε κάθε επίπεδο σπαταλούν ώρες βελτιστοποιώντας κώδικα που δεν ήταν ποτέ το πραγματικό σημείο συμφόρησης.
Το PostHog που απομακρύνεται από το DuckDB είναι ένα μάθημα βαρετού και αποδεδειγμένου έναντι γρήγορου και νέου
Μετακίνηση της αποθήκης μας από το DuckDB κέρδισε 174 πόντους σήμερα. Ο τίτλος σας λέει την κατεύθυνση της απόφασης, μακριά από το DuckDB, χωρίς να προσδιορίζει κάθε λόγο στον ίδιο τον τίτλο, οπότε πάρτε το ως "μια πραγματική ομάδα παραγωγής επανεξέτασε μια νεότερη αναλυτική βάση δεδομένων για την αποθήκη της", όχι ως ετυμηγορία ότι το DuckDB είναι κατεστραμμένο.
Για όποιον μαθαίνει να δουλεύει δεδομένα με την Python, το ευρύτερο μάθημα είναι ότι η επιλογή μιας βάσης δεδομένων ή ενός εργαλείου δεδομένων είναι μια αντιστάθμιση μεταξύ του πόσο νέο και γρήγορο είναι κάτι και πόση εμπειρία παραγωγής υπάρχει για τη διάγνωσή του όταν κάτι πάει στραβά. Όταν πειραματίζεστε μόνοι σας, τα νεότερα εργαλεία όπως το DuckDB είναι πραγματικά εξαιρετικά για γρήγορη τοπική ανάλυση με panda ή Polars. Όταν τα έσοδα μιας ομάδας εξαρτώνται από μια αποθήκη δεδομένων που λειτουργεί σωστά στις 3 π.μ., ο λογισμός περιλαμβάνει τη λειτουργική ωριμότητα και όχι μόνο την ταχύτητα αναφοράς.
Ένας πράκτορας AI που δοκιμάζει την εφαρμογή σας σαν άνθρωπος είναι πλέον ένα χρηματοδοτούμενο προϊόν
Launch HN: Momentic (YC W24) – Πράκτορες που εντοπίζουν σφάλματα χρησιμοποιώντας την εφαρμογή σας συγκέντρωσε 143 πόντους σήμερα ως ανάρτηση εκκίνησης που υποστηρίζεται από το Y Combinator. Το pitch, σύμφωνα με τον τίτλο, είναι ένας πράκτορας που εντοπίζει σφάλματα αλληλεπιδρώντας με την εφαρμογή σας όπως θα έκανε ένας ανθρώπινος ελεγκτής, αντί να βασίζεται μόνο σε χειρόγραφα σενάρια δοκιμών.
Αυτό αξίζει να το λάβετε σοβαρά υπόψη ως τάση, όχι ως λόγο για να παραλείψετε να δοκιμάσετε τον εαυτό σας. Τα εργαλεία που αυτοματοποιούν τις διερευνητικές δοκιμές είναι πραγματικά χρήσιμα όταν έχετε ήδη καταλάβει τι υποτίθεται ότι πρέπει να επαληθεύει μια δοκιμή και γιατί έχει σημασία ένα σφάλμα. Εάν δεν έχετε γράψει ποτέ μια δοκιμή με το χέρι, η αναφορά σφαλμάτων ενός πράκτορα θα σημαίνει λιγότερο για εσάς από ό,τι για κάποιον που το έχει κάνει. Μάθετε δηλώσεις «βεβαίωσης» και έναν βασικό δοκιμαστικό δρομέα όπως το «pytest» στα δικά σας μικρά έργα προτού αναζητήσετε έναν πράκτορα για να το κάνει για εσάς. θα έχετε πολύ μεγαλύτερη αξία από το εργαλείο μόλις το κάνετε.
Το τίμιο takeaway
Καμία από τις σημερινές ιστορίες μεμονωμένα δεν αλλάζει αυτό που θα έπρεπε να μελετάτε αυτήν την εβδομάδα. Μια καθυστερημένη κυκλοφορία του Postgres λέει ότι οι δοκιμές λειτουργούν όπως προβλέπεται, όχι ότι το οικοσύστημα δυσκολεύεται. Μια ανάρτηση Git-at-scale από το OpenAI είναι μια υπενθύμιση ότι η ευχέρεια ελέγχου έκδοσης είναι μια πραγματική ικανότητα, όχι πολυάσχολη εργασία. Οι αναρτήσεις του Cloudflare και του PostHog δείχνουν την ίδια κατεύθυνση: κατανοήστε την πραγματική συμπεριφορά των εργαλείων σας υπό φόρτωση προτού εμπιστευτείτε ένα σημείο αναφοράς, είτε αυτό το σημείο αναφοράς είναι η ανάρτηση ιστολογίου κάποιου άλλου είτε η δική σας υπόθεση. Και ένας χρηματοδοτούμενος πράκτορας δοκιμών είναι ένας λόγος για να μάθετε τα βασικά στοιχεία των δοκιμών νωρίτερα, όχι να τα παραλείψετε. Είστε έτοιμοι να δημιουργήσετε τις βασικές αρχές κάτω από όλα αυτά; Ξεκινήστε με Python Foundations.
Συχνές ερωτήσεις
Η καθυστερημένη κυκλοφορία του PostgreSQL 19 σημαίνει ότι το έργο έχει πρόβλημα;
Όχι. Ο ίδιος ο τίτλος αποδίδει την καθυστέρηση στην ανεύρεση περισσότερων σφαλμάτων κατά τη διάρκεια των δοκιμών, γεγονός που αποτελεί ένδειξη ενδελεχούς ελέγχου και όχι δυσλειτουργίας του έργου. Δείτε την πλήρη ανάρτηση για τον αρχικό ισχυρισμό.
Χρειάζεται να κατανοήσω το Git στην κλίμακα του OpenAI για να είμαι καλός νεότερος προγραμματιστής;
Όχι, αλλά η υποκείμενη δεξιότητα έχει σημασία σε οποιαδήποτε κλίμακα: η κατανόηση του τι κάνουν πραγματικά οι εντολές ελέγχου έκδοσης, όχι απλώς η απομνημόνευσή τους, είναι αυτό που μετατρέπει ένα μπερδεμένο σφάλμα Git σε επιλύσιμο πρόβλημα αντί για στιγμή πανικού.
Πρέπει να εμπιστευτώ τον ισχυρισμό του Cloudflare για μείωση στο μισό της καθυστέρησης δημιουργίας DNS και μείωση της χρήσης μνήμης κατά 85 τοις εκατό;
Αντιμετωπίστε το ως ένα αυτοαναφερόμενο αποτέλεσμα μηχανικής που δημοσιεύεται στο ίδιο το ιστολόγιο της Cloudflare, όχι ως ένα ανεξάρτητο ελεγμένο σημείο αναφοράς. Το χρήσιμο μάθημα για τον δικό σας κώδικα είναι η συνήθεια δημιουργίας προφίλ πίσω από αυτό, όχι το συγκεκριμένο ποσοστό.
Γιατί μια ομάδα θα μετακινούσε την αποθήκη δεδομένων της από το DuckDB αφού την επιλέξει;
Η ιστορία δεν απαριθμεί κάθε λόγο στον τίτλο της, μόνο την κατεύθυνση της απόφασης. Το γενικό μάθημα είναι ότι τα εργαλεία δεδομένων παραγωγής αντισταθμίζουν το πόσο νέο και γρήγορο είναι ένα εργαλείο σε σχέση με το πόση λειτουργική εμπειρία υπάρχει για την αξιόπιστη λειτουργία του.
Πρέπει να βασιστώ σε πράκτορες δοκιμών τεχνητής νοημοσύνης όπως το Momentic αντί να μάθω να γράφω δοκιμές μόνος μου;
Όχι, μάθετε πρώτα τα βασικά. Οι αναφορές σφαλμάτων ενός πράκτορα σημαίνουν πολύ περισσότερα για κάποιον που έχει ήδη καταλάβει τι πρέπει να επαληθεύσει μια δοκιμή. Εξασκηθείτε με το «pytest» στα δικά σας έργα, για τα οποία το μάθημα Python Foundations δημιουργεί τη βάση, προτού βασιστείτε σε έναν πράκτορα.
Ποιο είναι το μοναδικό πρακτικό στοιχείο από τα σημερινά νέα για προγραμματιστές;
Μετρήστε πριν βελτιστοποιήσετε, αμφισβητήστε ένα σημείο αναφοράς προτού το εμπιστευτείτε και αντιμετωπίστε τα σφάλματα που εντοπίστηκαν κατά τη διάρκεια της δοκιμής καθώς η διαδικασία λειτουργεί. Καμία από τις σημερινές ιστορίες δεν είναι λόγος για να αλλάξετε το σχέδιο εκμάθησης Python, μόνο ένας λόγος για να συνεχίσετε να χτίζετε καλές συνήθειες.