Ken thompson: el genio que encuentra más valor en borrar código
La simplicidad, a menudo subestimada en la vorágine de la innovación tecnológica, emerge como el principio rector de Ken Thompson, uno de los arquitectos fundamentales de la era digital. El co-creador de Unix, diseñador del lenguaje B y padre, junto a Dennis Ritchie, del lenguaje Go, acaba de revelar una práctica que desafía la lógica convencional: su mayor productividad proviene de eliminar código. No una optimización menor, sino una poda radical que plantea interrogantes sobre la dirección actual del desarrollo de software.
La filosofía minimalista que define a un pionero
Thompson, figura legendaria en el mundo de la informática, no es ajeno a la construcción de sistemas operativos y lenguajes de programación que han moldeado la computación moderna. Desde los laboratorios Bell, donde junto a Ritchie concebirón Unix, hasta su etapa en Google, la búsqueda de la eficiencia y la claridad ha sido su brújula. El sistema Unix, con su enfoque modular y su filosofía de 'hacer una cosa bien', sentó las bases para una forma de programar que prioriza la simplicidad sobre la complejidad.
Su influencia se extiende al lenguaje B, precursor de C, un lenguaje que dominó la programación de sistemas durante décadas. Y más recientemente, Go, un lenguaje diseñado para sistemas de producción a gran escala, donde la sintaxis escueta y el sistema de tipos directo reflejan esa misma obsesión por la claridad. Pero la declaración de Thompson sobre la eliminación de código revela una faceta aún más profunda de su entendimiento sobre la creación de software.
La deuda técnica: Un enemigo silencioso Cada línea de código añadida, por trivial que parezca, introduce una nueva fuente de complejidad. Es un punto potencial de fallo, una carga adicional para las pruebas y un obstáculo para futuras modificaciones. Al acumularse, esta deuda técnica puede transformar un sistema ágil en un laberinto inmanejable, donde incluso los cambios más pequeños se convierten en operaciones de alto riesgo.
Thompson no ve la eliminación de código como un retroceso, sino como una forma de reducir esa superficie de error, simplificar la arquitectura y revitalizar el sistema. Exige un entendimiento profundo de la lógica subyacente y la capacidad de discernir lo esencial de lo superfluo, una habilidad que, paradójicamente, requiere más criterio que la propia escritura de código.

¿Un espejismo en la era de la productividad por líneas?
La filosofía de Thompson choca frontalmente con una tendencia arraigada en muchos equipos de desarrollo: la medición de la productividad en función del número de líneas de código escritas. Una métrica engañosa que ignora el coste oculto de la complejidad: el tiempo invertido en comprender y mantener el código, la fragilidad que introduce en el sistema y la ralentización que provoca en el proceso de desarrollo. En la era de la inteligencia artificial, donde se promete una automatización total, este mensaje de simplicidad resulta especialmente resonante.
Bjarne Stroustrup, el creador de C++, solía decir con ironía: