Durante meses he querido escribir una entrada de blog. Pero durante estos últimos cinco meses me he dado cuenta de que ya no importa.
Se suponía que iba a tratar sobre mi setup personal de Golang+SQLite, un conjunto de forks y utilidades que he estado manteniendo y usando en mis proyectos personales durante los últimos dos años. Pero ya no le veo el sentido a escribir ese artículo.
Hace cinco meses
Hace cinco meses instalé opencode y me zambullí la programación agéntica. Sumergiéndome al máximo en su velocidad y frustración. Quemando tokens, personales y corporativos, dejando a mis agentes ejecutándose, y revisando su output a las 23:30 solo para darles una última instrucción para que puedan seguir trabajando toda la noche. Todo esto mientras, en respuesta al ceño fruncido de mi mujer, le prometo que esto es totalmente normal, y que es la última vez que voy a abrir el portátil esta noche.
He hecho varios proyectos en 2-3 días que cada uno me habría llevado al menos 2 semanas de concentración en serio (algo que se vuelve de cada vez más raro a medida que pasa el tiempo y el calendario se llena de reuniones). Al mismo tiempo, el output de los LLMs falla de esa manera tan especial con la que ya debes de estar familiarizado: errores tontos, suposiciones raras, hasta el punto de que abandonas por completo el intento de entender el código. Te vuelves incapaz de hacer cambios sin pedírselo al agente, y aceptas que tienes que reescribirlo entero a mano (o simplemente aceptar el slop).
He escrito skills y generado MCPs y CLIs específicamente para ser usados por el LLM, incluyendo skills que destilan, mejoran y crean otras skills. He seguido esta forma de trabajar hasta sus últimas consecuencias. Haciendo en horas lo que antes me llevaba días. Haciendo en días lo que antes me llevaba semanas.
Pero aunque a veces era divertido y emocionante, no era lo mismo que programar.
El jardín
Yo era un jardinero, un jardinero que disfrutaba regando sus macetas cada día. Cuidaba mi regadera, la limpiaba, la pulía, e intentaba imaginar nuevos y mejores tipos de regaderas que pudiesen mejorar mi experiencia regando las flores.
Un día una serpiente visito mi jardín: "¿Qué haces perdiendo todo este tiempo regando las flores una por una? Metiendo tiempo y esfuerzo en una tarea que nunca termina... Hay una forma mejor, déjame enseñarte un hechizo. Ya no tendrás que regar tus flores individualmente. En su lugar, podrás invocar seres que hagan el trabajo por ti, como hizo el creador cuando te creó a ti. Y serás como él."
La primera vez que lancé ese hechizo se sintió increíble. El cielo se llenó de seres que trajeron nubes y lluvia a mi jardín. No era perfecto, las flores no se regaban una por una como yo lo habría hecho. Pero era más que suficiente.
Con el tiempo, cualquier otra cosa que no fuese lanzar el hechizo empezó a parecerme una pérdida de tiempo. Las flores crecían salvajes y siguiendo patrones impredecibles, descontrolados. Pero bueno, seguían vivas y creciendo.
Dejé de ponerme la ropa de jardinero y de mancharme las manos con la tierra. Mi regadera empezó a oxidarse, y dejé de pensar en nuevos diseños e ideas para futuras regaderas. Me olvidé de los distintos tipos de flores que tenía en mi jardín, y de sus necesidades y belleza individuales.
Un día les dije a los seres que siguieran viniendo sin esperar a que yo lanzase el hechizo. Y empecé a pensar cuál era mi propósito en ese jardín, o si alguna vez me había pertenecido realmente.
¿Qué me queda?
Esta es la parte que me recuerda a AlphaGo, un documental sobre una partida entre Lee Sedol, uno de los jugadores de Go más fuertes de la historia, y AlphaGo, el sistema de IA desarrollado por DeepMind.
Hay una escena en la película que se me quedó grabada. Cuando Lee Sedol es derrotado, casi puedes ver cómo empiezan a agrietarse los pilares de su realidad. Empieza a cuestionarse qué significa realmente estar vivo, ahora que una máquina puede reproducir algo que él había asumido como exclusivamente humano: gusto, intuición. Y creo que todos los programadores que disfrutábamos del acto de programar en sí mismo, de mejorar y usar nuestras capacidades técnicas, estamos pasando por una fase parecida. No es que la máquina pueda hacer todo lo que hacemos nosotros (todavía), ni que pueda pensar como pensamos nosotros (todavía). Pero, ¿importa realmente? Se siente como que ya está todo vacío, como si ya no tuviese sentido hacer las cosas sin lanzar el hechizo.
Hay una escena final en el documental donde Lee Sedol recupera la chispa en su vida, y vuelve a jugar al Go. Si miramos el estado actual del Go, el techo de lo que un jugador humano puede hacer ha aumentado dramáticamente desde la introducción de la IA en el juego. No sé si esto se puede extrapolar a la programación como actividad laboral, porque las empresas optimizan la efectividad, no el significado existencial de cada uno de sus empleados. Pero al menos algo que he empezado a hacer yo mismo es aprender ensamblador de Game Boy. Es refrescante, y no siento la tentación de usar IA porque es una actividad que ejecuto con el objetivo de aprender, usar la IA para generar el código sería contraproducente. Es un área en la que me siento mucho más cómodo "perdiendo" el tiempo usando IA como si fuese un profesor, en lugar de como agente.
Quizá no estemos hechos para cuidar de un jardín. Quizá estamos aquí para descubrir nuevos tipos de flores.