En el ámbito de la gestión de proyectos, la proliferación de herramientas con una vasta gama de funcionalidades puede resultar abrumadora. Frecuentemente, estas soluciones integran características que exceden las necesidades básicas del usuario, lo que lleva a la búsqueda de alternativas más sencillas y personalizadas. Ante esta situación, se planteó un experimento para evaluar la capacidad de tres modelos de lenguaje avanzados (Gemini, ChatGPT y Copilot) en la creación de una aplicación Kanban con requisitos específicos: operatividad offline, almacenamiento local de datos y ausencia de suscripciones.
El objetivo principal era desarrollar una herramienta de gestión de proyectos que fuera deliberadamente simple, un instrumento ligero y autónomo que residiera directamente en el escritorio del usuario, sin dependencias de servicios en la nube o pagos recurrentes. Este enfoque buscaba emular la experiencia de una aplicación nativa, pero generada con la asistencia de inteligencia artificial.
El proceso de desarrollo asistido por IA
A cada uno de los modelos de IA se le proporcionó el mismo prompt, instruyéndolos para generar el código necesario para una aplicación Kanban. Los requisitos incluían:
- Una interfaz de usuario básica que representara las columnas de un tablero Kanban (por ejemplo, 'Por hacer', 'En progreso', 'Hecho').
- Funcionalidad para añadir, editar y eliminar tareas dentro de cada columna.
- Capacidad para arrastrar y soltar tareas entre columnas.
- Persistencia de datos local, asegurando que la información no se perdiera al cerrar la aplicación o el navegador.
- Operación completamente offline, sin necesidad de conexión a internet una vez cargada la página.
Los resultados iniciales fueron consistentes: los tres modelos lograron generar código funcional que, al ser guardado como un archivo HTML y abierto en un navegador web, producía una aplicación Kanban operativa. Este hecho subraya la capacidad actual de los modelos de lenguaje para traducir instrucciones complejas en soluciones de software viables, incluso para usuarios con conocimientos de programación limitados.
Análisis comparativo de los resultados
Aunque los tres modelos produjeron aplicaciones funcionales, las diferencias emergieron en la calidad del código, la facilidad de implementación y la experiencia de usuario de la aplicación resultante. A continuación, se presenta una síntesis de las observaciones:
- Gemini: Su código fue robusto y la aplicación resultante demostró ser estable. Sin embargo, la estructura del código a veces requería ajustes menores para optimizar la interactividad o el diseño.
- ChatGPT: Generó un código notablemente limpio y bien estructurado. La aplicación producida por ChatGPT a menudo presentaba una interfaz de usuario más intuitiva y un manejo de eventos más fluido, lo que facilitaba la interacción con las tareas.
- Copilot: Si bien también generó una aplicación funcional, en algunas iteraciones su código presentaba ciertas redundancias o requería una mayor depuración para alcanzar el nivel de refinamiento de ChatGPT. No obstante, su capacidad para sugerir y completar fragmentos de código en tiempo real fue una ventaja durante el proceso de refinamiento.
La sorpresa radicó en que, a pesar de las expectativas iniciales, ChatGPT se destacó como el modelo que consistentemente produjo el código más eficiente y la aplicación más pulida, requiriendo la menor cantidad de intervenciones manuales para cumplir con los requisitos establecidos.
Este experimento demuestra que, para tareas de desarrollo de aplicaciones sencillas y con requisitos bien definidos, los modelos de lenguaje generativos pueden actuar como herramientas de prototipado rápido o incluso como generadores de soluciones completas. La elección del modelo más adecuado dependerá de factores como la complejidad del proyecto, la necesidad de un código optimizado y la experiencia del usuario en la depuración y modificación del código generado.
La capacidad de estas IA para crear herramientas personalizadas y offline representa un avance significativo en la democratización del desarrollo de software, permitiendo a usuarios no programadores construir sus propias soluciones adaptadas a sus necesidades específicas, sin incurrir en costos de suscripción o dependencias externas.