Volver a programar después de décadas: cómo Claude Code y la Inteligencia Artificial han cambiado mi forma de construir

Durante mucho tiempo, programar fue una etapa cerrada. En mi caso, la última vez que escribí código “de verdad” fue en 1998. Lo recuerdo con una mezcla de cariño y nostalgia: herramientas como Borland Delphi, Turbo Pascal y algo de Turbo C; aquella sensación de estar cerca de la máquina, de entender el flujo, de pelearse con errores que hoy parecerían prehistóricos. Luego vino la vida profesional, las responsabilidades, la infraestructura, los proyectos, el negocio… y, como le pasa a mucha gente, el teclado dejó de ser un lugar de juego y pasó a ser un instrumento de trabajo para otras cosas.

Por eso me está resultando tan llamativo lo que está ocurriendo ahora. La Inteligencia Artificial no solo está acelerando tareas: en mi caso me ha devuelto algo que daba por perdido, que es el disfrute de crear software. Y no hablo de “ver cómo un modelo genera un snippet bonito”, sino de levantar aplicaciones completas, probar ideas, iterar y, sobre todo, sentir que la fricción ha bajado lo suficiente como para que vuelva a merecer la pena ponerse a construir por puro placer.

La sorpresa no es el código: es el método

En estos últimos experimentos, me he encontrado con una sensación que hacía años que no tenía: la consistencia. Con Claude Code, al menos en mi experiencia reciente, el ratio ha sido del 100 %: toda aplicación que he pedido ha funcionado a la primera. Suena exagerado, y lo sé, porque la programación nunca es perfecta. Pero lo que me tiene pensando no es el número en sí, sino el porqué.

La clave no es que el modelo “sea un genio”, sino el enfoque de trabajo. Claude Code no se limita a contestar en una ventana de chat: se apoya en un flujo donde el proyecto tiene memoria, reglas, convenciones y objetivos que se vuelven persistentes. Y ahí entra una pieza que, aunque parezca menor, es el corazón de todo: el archivo CLAUDE.md.

CLAUDE.md: un contrato para que el agente no improvise

Claude Code permite dos tipos de memoria: una “auto memory” donde el sistema guarda contexto útil (patrones del proyecto, comandos clave, preferencias) y otra basada en archivos CLAUDE.md, que el usuario escribe y mantiene como conjunto de instrucciones y reglas. Dicho sin vueltas: es un documento que le dice al agente “así se trabaja aquí”. Y eso, para alguien que lleva años gestionando sistemas y proyectos, es casi una obviedad: si el marco es claro, el resultado suele ser mejor.

Lo que cambia con estos agentes es que ese marco ya no es solo documentación para humanos: también es la guía operativa de la Inteligencia Artificial. Si el archivo define cómo se estructura el repositorio, qué comandos se usan para test, cómo se valida una entrega, qué estilo se sigue y qué decisiones no se tocan, el asistente deja de improvisar y empieza a ejecutar con más fiabilidad.

Mi experimento: “refinar el guion” antes de tocar el repositorio

La rutina que me ha funcionado (y que me ha hecho replantearme el flujo entero) ha sido esta:

  1. Pedir a Claude (en la web) que genere un CLAUDE.md con unos objetivos concretos.
  2. Pedir a Gemini que mejore ese Markdown.
  3. Pedir a GPT que lo mejore de nuevo.
  4. Pasar el resultado final a Claude Code en la terminal.

Lo interesante es que no estoy usando varios modelos para “hacer el código”, sino para mejorar el documento de instrucciones. Es decir: estoy invirtiendo el esfuerzo en el guion, no en la escena. Y ahí aparece una verdad incómoda para cualquiera que haya trabajado con equipos técnicos: cuando lo que se pide está bien definido, lo normal es que se ejecute mejor. Solo que ahora ese “equipo” incluye un agente que edita archivos, corre comandos y trabaja con el repositorio como si fuese un desarrollador más.

En mi caso, al refinar el CLAUDE.md con varios modelos, el documento termina siendo más nítido: menos ambigüedad, más criterios verificables, mejor orden, y —muy importante— menos contradicciones internas. El resultado se nota después: Claude Code entra en el repositorio con un mapa más claro y toma decisiones más alineadas con lo que realmente quiero.

Por qué esto encaja con mi forma de trabajar (aunque haya pasado tanto tiempo)

Si dejé de programar en 1998, no fue por falta de interés: fue por contexto. La realidad es que el mundo cambió y mis prioridades también. Pero hay algo que no ha cambiado: mi obsesión por los sistemas que funcionan, por los procesos repetibles y por reducir el caos operativo.

Claude Code, en cierto modo, se siente como llevar esa mentalidad al desarrollo: reglas claras, memoria persistente y una herramienta que puede operar a través de archivos y comandos. La documentación lo presenta como un asistente de programación que entiende el código base y puede trabajar en múltiples archivos y herramientas; además, existe en varias “superficies” (terminal, IDEs, escritorio y web) que comparten el mismo motor para reutilizar configuración y memoria del proyecto. Esa continuidad es justo lo que permite trabajar por hábitos, no por improvisación.

Y aquí aparece otra cosa que, para mí, es muy reveladora: la idea de poder arrancar una sesión local y continuarla desde otro dispositivo. El concepto de Remote Control apunta a un futuro donde programar no es “sentarse en el escritorio”, sino continuar tareas donde toque, manteniendo la ejecución en tu propia máquina y conservando herramientas locales y configuración del proyecto. No es un detalle menor: es una pista clara de hacia dónde está yendo el desarrollo asistido por agentes.

Lo que he aprendido: la Inteligencia Artificial rinde más cuando se le baja la incertidumbre

Si tuviera que resumir la lección en una frase, sería esta: la Inteligencia Artificial programa mejor cuando no tiene que adivinar.

Un CLAUDE.md bien escrito reduce la incertidumbre en puntos muy concretos:

  • Qué hay que construir y qué no.
  • Cómo se valida que está “bien”.
  • Qué estilo y convenciones se consideran correctas.
  • Qué comandos son el camino estándar (build, test, lint, ejecución).
  • Qué decisiones arquitectónicas son intocables.
  • Qué atajos o patrones del repositorio conviene respetar.

En mi caso, ese documento es lo que convierte un “hazme una app” en un “hazme esto, así, con estas restricciones y con esta forma de comprobarlo”. Y cuando además lo refinan varios modelos antes de dárselo al agente que ejecuta, el resultado tiende a ser más consistente.

Una conclusión personal: no es nostalgia, es capacidad recuperada

Volver a programar no me ha hecho volver a 1998. Todo lo contrario: me ha recordado que el problema no era el lenguaje ni el IDE, sino el coste mental de ponerse a construir desde cero con poco tiempo y demasiadas cosas encima.

La Inteligencia Artificial ha reducido ese coste lo suficiente como para que vuelva a ser divertido. Y eso, para mí, es la gran noticia: no es que ahora “cualquiera programe”, es que la barrera para experimentar ha bajado tanto que personas que llevábamos años en otros frentes podemos volver a crear, aprender y disfrutar.

Y sí, seguiré usando este enfoque de “refinar el guion” antes de tocar el repositorio. Porque, al final, la diferencia entre un agente que acierta y uno que divaga suele estar en lo mismo que diferenciaba a un buen proyecto de uno mediocre hace décadas: requisitos claros, reglas coherentes y una forma objetiva de saber si el trabajo está terminado.

Algunos experimentos que puedes visitar que me he apoyado en Claude como:

  • Bitadir.com, un directorio de blogs con código de hace más de 12 años que he actualizado y refactorizado.
  • Polen Madrid, como alérgico al polen un sitio donde consultar información y suscribirse para recibir alertas.
  • FitBono, un sistema de gestión de clases para entrenadores personales hecho para iPhone, pensando en mi entrenador y que espero que pronto apruebe Apple.
  • MboxViewer, otra herramienta para mac para abrir mis backups de correo Gmail con Google Takeout que pesan más de 50Gb y poder consultar emails offline.
  • mboxshell, la misma herramienta para leer grandes mbox pero desde terminal. Liberado en GitHub.
  • CF football Bypass, un plugin para WordPress que si detecta que La Liga bloqueó tu sitio que usa Cloudflare lo desactiva temporalmente y lo vuelve activar cuando no estás bloqueado. No es lo ideal pero al menos tu web funciona.
  • Y muchas más cosas sin publicar y publicadas que estoy experimentando…

Preguntas y respuestas

¿Qué es Claude Code?
Un asistente de programación agéntico que puede trabajar con un repositorio, editar archivos y ejecutar comandos desde la terminal y otras integraciones.

¿Para qué sirve CLAUDE.md?
Para dejar instrucciones persistentes del proyecto: reglas, convenciones y objetivos que el agente debe seguir en cada sesión.

¿Por qué mejorar el CLAUDE.md con varios modelos ayuda?
Porque reduce ambigüedades y contradicciones: el agente recibe un “contrato” más claro y toma mejores decisiones.

¿Esto garantiza que todo salga bien a la primera?
No, pero mejora la consistencia: cuando el contexto es claro y verificable, hay menos iteraciones y menos sorpresas.