Codice eliminato: imparare disfacendo (anche quello degli altri)
·2 min·Base
“
Imparare a programmare di solito significa aggiungere roba. E se invece la chiave fosse togliere, soprattutto codice non tuo?
In 30 secondi
01Eliminare codice, anche non proprio, aiuta a capire meglio un progetto.
02Togliere 200 righe di codice ha svelato problemi e soluzioni nascoste.
→
💡
Cosa significa per te
Per chiunque, questa storia insegna che semplificare e togliere il superfluo è spesso la via più efficace per capire e migliorare ogni sistema, dal codice ai processi aziendali.
Diciotto mesi fa, costruire un chatbot era un'impresa monolitica, roba da smanettoni con la pazienza di Giobbe. Oggi, l'aria è cambiata e gli strumenti AI si sono fatti un po' più... intelligenti.
·2 min·1·Medio
03Ridurre la complessità è spesso la via più rapida per migliorare un software.
0101
Perché togliere codice è meglio che aggiungerne?
Sembra un paradosso, ma a volte per capire un sistema complesso la soluzione migliore è iniziare a smontarlo. Gamya M., un ingegnere software, ha raccontato di aver imparato molto di più eliminando 200 righe di codice che non aveva scritto lui, piuttosto che scrivendone di nuove. È un modo per fare archeologia software, scoprendo le scelte passate e i loro effetti.
Spesso i progetti software crescono come un albero intricato, con rami aggiunti negli anni da mani diverse. Ogni riga di codice ha una storia, una ragione d'essere, o almeno l'aveva. Togliere pezzi inutili forza a capire l'intero sistema, come un puzzle che si risolve togliendo i pezzi superflui. Non è un lavoro da poco, richiede pazienza e una buona dose di coraggio.
0202
Cosa si impara eliminando?
Eliminando codice "ereditato", si scoprono subito i punti deboli e le dipendenze nascoste di un sistema. Gamya M. ha raccontato su Dev.to, in un post di agosto 2023, come questa pratica l'abbia aiutato a identificare ben due bug che altrimenti sarebbero rimasti invisibili per mesi. È come fare pulizia in cantina: trovi cose che non sapevi di avere.
📬 Ti piace quello che leggi?
Ricevi le migliori notizie AI ogni settimana, direttamente in inbox.
In più, questa pratica costringe a seguire il flusso logico del programma, riga per riga. Si capisce perché una certa soluzione è stata adottata, o perché un'altra è stata scartata. Capire il "perché" dietro il codice altrui è una skill fondamentale per ogni sviluppatore, anche se non si applica solo al mondo della programmazione. Non è forse vero che spesso la soluzione più semplice è quella che funziona meglio?
0303
E cosa cambia per chi non programma?
L'idea di "imparare disfacendo" non è solo per i programmatori, ma vale per qualsiasi processo o sistema. Pensate a un'azienda con procedure complicate: spesso semplificare, togliere passaggi inutili, rivela inefficienze e apre la strada a soluzioni migliori. Il concetto di "sottrazione" nel software è stato teorizzato da diversi esperti, tra cui Donald Knuth che ha spesso sottolineato l'importanza della semplicità.
Questo approccio ci ricorda che la complessità non è sempre sinonimo di valore. Anzi, spesso è il contrario. Un prodotto o un servizio più semplice è quasi sempre più facile da usare, da mantenere e, in fondo, più efficace. Quindi, la prossima volta che vi trovate davanti a qualcosa di troppo elaborato, provate a chiedervi: cosa posso togliere?
Siamo onesti: scrivere codice è noioso per l'AI, figuriamoci per noi. Ma se un'intelligenza artificiale potesse fare tutto da sola, dalla specifica al test?