Experto en IA: la usé y me decepcionó

Fuentes: I used AI. It worked. I hated it.

Este artículo explora la experiencia de un experto en seguridad de IA, conocido por su escepticismo hacia la IA generativa, al utilizarla para completar un proyecto de migración del Taggart Institute a una nueva plataforma de aprendizaje. El autor, quien se siente obligado a usar estas herramientas para comprender sus riesgos y garantizar su seguridad, relata su proceso, admitiendo que, aunque funcional, la experiencia fue desagradable.

La necesidad surgió al migrar el Taggart Institute desde plataformas comerciales (Teachable y Discord) a Discourse, una plataforma de foros que requería personalización para funcionar como un sistema de gestión del aprendizaje (LMS). Un componente crucial, la generación de certificados de finalización de curso, era difícil de implementar manualmente debido a la falta de tiempo del autor, quien también debe equilibrar su trabajo con sus responsabilidades familiares. Decidió probar Claude Code, una herramienta de codificación basada en IA, para ver si podía acelerar el desarrollo.

El proyecto consistió en crear un webhook interceptor que generara certificados PDF con una identificación única y un código QR verificable. El autor adoptó un enfoque metódico, siguiendo las recomendaciones de Anthropic (los creadores de Claude Code) y utilizando el modo 'Plan' para que el modelo generara un plan de desarrollo detallado, que luego se documentaba en Markdown. Se eligió Rust para el backend debido a su seguridad y familiaridad, y Svelte para el frontend por su facilidad de depuración. La generación de PDFs se realizó con Typst, una herramienta de tipografía que permite flexibilidad en el diseño.

El proceso se basó en el desarrollo guiado por pruebas (TDD), donde el modelo generaba pruebas y luego implementaba el código, seguido de una revisión exhaustiva por parte del autor. Aunque el proyecto no era extremadamente complejo (una aplicación CRUD básica), la necesidad de garantizar la seguridad, la autenticación y el manejo de datos requirió una atención meticulosa al código generado. El autor concluye que, si bien la IA generativa puede acelerar el desarrollo, el proceso de depuración y la falta de control sobre el código generado fueron frustrantes, lo que le hizo cuestionar su utilidad a pesar de su funcionalidad.