ti ho appena nominato "presidente dei programmatori che non rubacchiano".
Qualche settimana fa io e <collega x> stavamo partecipando ad una gara per una commessa a m000000lti zeri e dovevamo sviluppare una landing con diversi effetti in vanilla-JS. Per me era una cosa abbastanza semplice ma per lui, abituato a sviluppare con jQuery per esempi, era una cosa tutt'altro che facile: così ha iniziato a copiare esempi su esempi senza rendersi conto di cosa e come stava copiando. Risultato: quando abbiamo fatto merge dei due snippet la pagina era letteralmente piantata.
Cos'era successo? Facendo code-review del suo lavoro ho visto che aveva inserito 4 handler diversi per l'evento scroll della finestra e, studiando il funzionamento degli effetti che doveva ricreare, in nessun caso gli serviva davvero eseguirli all'evento scroll.
In pratica non si era posto né il problema della ripetizione del codice, né dell'ottimizzazione delle performance, né della logica necessaria e sufficiente per completare il suo task. Aveva trovato e copiato quanto gli bastava per fare funzionare ogni singolo effetto.
Analizzato il problema e riscritto il codice adeguato alla risoluzione dei suoi task, alla fine l'antica anfora è stata portata in salvo.
Questo per dire che la differenza non è data dal fatto di copiare o meno snippet (anche perché trovo sinceramente stupido implementare da zero qualcosa che esiste già ed è più testato di quanto farei io, scopi didattici a parte), ma dal fatto di capire fino in fondo le implicazioni di ciò che si sta facendo.


Rispondi quotando