Ken Thompson: el secret per ser més productiu eliminant codi
Imagina un dels genis fundacionals de la informàtica, Ken Thompson, celebrant que un dels seus dies més productius va ser quan va eliminar 1.000 línies de codi. No és ironia, és una filosofia que canvia la manera de programar.
Quan un llegendari creador com ell defensa que menys és més en programació, val la pena parar-hi atenció i plantejar-nos si estem valorant realment la productivitat al món del desenvolupament.
Qui és Ken Thompson i per què les seves idees importen
El creador d'Unix i la revolució de la simplicitat
Ken Thompson, juntament amb Dennis Ritchie, va crear Unix als anys seixanta als laboratoris Bell, un sistema que no només era un sistema operatiu, sinó una nova forma d'entendre la computació.
Unix es basa en eines petites i modulars que fan una sola cosa però molt bé, i que es poden combinar entre elles. Aquesta filosofia de construcció senzilla i eficient ha marcat la seva trajectòria i la de tota la indústria.
El llenguatge B i l'origen de Go
Thompson va dissenyar el llenguatge B, precursor directe del famós C desenvolupat per Ritchie. Aquesta evolució va establir les bases per a la programació de sistemes durant dècades.
Més tard, ja a Google, va co-crear Go, un llenguatge amb la mateixa obsessió per la claredat, la simplicitat i l'eficiència, deixant clar que en programació la complexitat no és aliada.
Per què eliminar codi és sovint més valuós que escriure'n
Els riscos de sumar línies sense control
Cada línia de codi nova és una oportunitat més per a errors, bugs i complicacions futures. Quan un projecte creix sense criteri, la seva «deute tècnica» es dispara i qualsevol canvi esdevé una aposta arriscada.
Eliminar codi redueix la superfície d'error, simplifica l'arquitectura i fa que els futurs canvis siguin més àgils i segurs. No és tornar enrere, és avançar amb més solidesa.
El criteri darrere de la simplificació
Treure codi exigeix entendre profundament el sistema, identificar què és realment necessari i tenir la valentia de prescindir del que sobra.
Aquesta decisió és més difícil que afegir funcionalitat nova, però és la que fa la diferència entre un codi clar i mantenible o un embolic impossible de gestionar.
La filosofia de Go i el llegat de Ken Thompson
Go, un llenguatge fet per a la claredat
Go va néixer per oferir una sintaxi escueta, un sistema de tipus directe i mecanismes de concurrència fàcils d'entendre, evitant la complexitat innecessària dels llenguatges com C++ o Java.
Tot el que no està al llenguatge és una complexitat que el programador no ha de gestionar, i això reflecteix perfectament la filosofia de Thompson.
El debat sobre la productivitat en programació
Molts encara mesuren la productivitat per la quantitat de línies escrites, ignorant que el cost real està en l'acumulació de codi difícil d'entendre i mantenir.
Ken Thompson ho va resumir: programar bé no és escriure més, sinó saber què no cal escriure. Un missatge que els millors enginyers de software practiquen des de fa dècades.
| Aspecte | Mesura per línies de codi | Mesura per simplicitat |
|---|---|---|
| Productivitat | Quantitat de codi escrit | Codi funcionant i clar |
| Mantenibilitat | Complicat per l'excés | Fàcil d'entendre i canviar |
| Riscos | Més bugs i errors | Menys possibilitats d'error |
La clau és reduir la complexitat per augmentar la qualitat.
La reflexió de Ken Thompson no és només una anècdota, sinó una guia per a tothom que vulgui millorar com a programador i com a equip.
Si ets desenvolupador, planteja't quin és el teu dia més productiu: escriure més o simplificar?
La realitat és que entendre quan eliminar codi i com fer-ho amb criteri és un dels veritables secrets per dominar el desenvolupament de software.