Los peligros y riesgos de usar ChatGPT para crear una extensión de Joomla

Los peligros y riesgos de usar ChatGPT para crear una extensión de Joomla

Le preguntamos al propio ChatGPT...

En los últimos años, las herramientas de IA como ChatGPT se han vuelto populares para diversas tareas, desde la generación de contenido hasta la asistencia en la escritura de código. Muchos desarrolladores, tanto experimentados como novatos, han comenzado a explorar estas herramientas potenciadas por IA para ayudar en la creación de extensiones y complementos de software, incluidas las extensiones de Joomla. Sin embargo, aunque ChatGPT puede proporcionar valiosos conocimientos y apoyo en la generación de código, usarlo para construir una extensión de Joomla desde cero o para manejar tareas de desarrollo complejas conlleva riesgos inherentes y posibles inconvenientes. Aquí echamos un vistazo más de cerca a estos peligros y por qué es esencial tener precaución.

1. Generación de Código Incompleta o Inexacta

Aunque ChatGPT puede generar fragmentos de código, no es infalible. La comprensión de la IA se basa en grandes conjuntos de datos y entrenamiento, pero no "entiende" realmente el código de Joomla o PHP como lo haría un desarrollador. Puede producir código que parece sintácticamente correcto pero que no se alinea con los requisitos de la plataforma de desarrollo de Joomla o las mejores prácticas. Por ejemplo, ChatGPT podría producir código que carece de la integración adecuada con la estructura MVC (Modelo-Vista-Controlador) de Joomla o que no maneja de manera segura las interacciones con la base de datos. Estas inexactitudes pueden llevar a extensiones que no funcionan correctamente y que no brindan la funcionalidad esperada.

2. Vulnerabilidades de Seguridad

La seguridad es una preocupación crítica al construir extensiones de Joomla, ya que a menudo acceden y manipulan datos dentro de un CMS que puede contener información sensible. ChatGPT no tiene la capacidad de realizar comprobaciones de seguridad en tiempo real ni de entender los últimos parches de seguridad requeridos para Joomla. El código generado puede carecer de técnicas adecuadas de sanitización, validación y escape, lo que podría abrir puertas a vulnerabilidades comunes como la inyección de SQL o el cross-site scripting (XSS). Estas fallas de seguridad pueden exponer tu sitio y los datos de los usuarios a hackers, lo que podría resultar en información comprometida y daños a la reputación.

3. Incompatibilidad con Actualizaciones de Joomla

Joomla lanza frecuentemente actualizaciones para mejorar la funcionalidad, corregir errores y mejorar la seguridad. El código generado por ChatGPT no tiene en cuenta el ecosistema en constante evolución de Joomla, lo que significa que la extensión que ayuda a producir puede no ser compatible con futuras actualizaciones de Joomla. Esto podría llevar a funciones rotas o incluso hacer que todo el sitio sea inutilizable si surgen conflictos entre el código de la extensión y los archivos principales de Joomla.

4. Falta de Conciencia en Depuración y Pruebas

ChatGPT no posee la capacidad de probar o depurar código de manera autónoma. Aunque puede proporcionar soluciones a posibles problemas si se le solicita, no puede evaluar la fiabilidad de una extensión en escenarios del mundo real. Los desarrolladores que confían únicamente en ChatGPT para tareas complejas de lógica o procesamiento de datos pueden pasar por alto errores críticos que una revisión manual o una sesión de depuración revelaría. Las pruebas adecuadas son especialmente cruciales en las extensiones de Joomla, que deben interactuar sin problemas con el backend y el frontend de Joomla.

5. Problemas Legales y de Licencias

Otro aspecto importante a considerar es la licencia. Joomla se lanza bajo la Licencia Pública General GNU (GPL), y cualquier extensión desarrollada para él debe cumplir con los términos de la GPL. ChatGPT puede generar inadvertidamente fragmentos de código que no estén alineados con los requisitos de licencia de Joomla, lo que podría llevar a posibles complicaciones legales. Además, las fuentes de código de ChatGPT son desconocidas, por lo que es difícil verificar si el código proporcionado es compatible con la GPL.

6. Falta de Personalización

Si bien ChatGPT es excelente para generar código estándar, las extensiones a menudo requieren toques personalizados para cumplir con requisitos específicos. La IA puede tener dificultades para crear una extensión de Joomla que coincida precisamente con las características únicas o los elementos de diseño requeridos para un proyecto específico. La personalización generalmente requiere una comprensión profunda del marco de Joomla, que ChatGPT no tiene. Esto puede llevar a extensiones que parecen demasiado genéricas o que no satisfacen completamente las necesidades funcionales del proyecto, lo que finalmente requiere que un desarrollador intervenga y realice ajustes manuales.

Mejores Prácticas para Usar ChatGPT en el Desarrollo de Joomla

Aunque los riesgos mencionados son significativos, hay formas de mitigarlos si decides usar ChatGPT en tu proceso de desarrollo de extensiones de Joomla:

  1. Usa ChatGPT para Inspiración, no para soluciones completas: En lugar de confiar en ChatGPT para crear una extensión completa, úsalo para obtener ideas, generar pequeños fragmentos o simplificar tareas repetitivas.
  2. Emplea las mejores prácticas de seguridad: Siempre revisa y sanitiza cualquier código proporcionado por ChatGPT, especialmente en lo que respecta al manejo de entradas/salidas, para prevenir vulnerabilidades.
  3. Pruebas y depuración manuales: Realiza pruebas y depuraciones exhaustivas para asegurar la funcionalidad y compatibilidad dentro del marco de Joomla.
  4. Consulta la documentación: Verifica la compatibilidad de cualquier código generado por IA utilizando la documentación oficial de Joomla y los recursos de la comunidad.

Conclusión

Usar ChatGPT para ayudar en el desarrollo de extensiones de Joomla puede ser beneficioso para la lluvia de ideas o la generación de pequeñas piezas de código. Sin embargo, confiar en él para construir extensiones completas introduce riesgos relacionados con la seguridad, compatibilidad y funcionalidad. Los desarrolladores deben abordar ChatGPT con precaución, siempre verificando y refinando cualquier código que produzca para asegurar que cumpla con los requisitos de Joomla y con las necesidades únicas de su proyecto.


Descargo de responsabilidad

No estamos esperando artículos totalmente escritos por algún tipo de IA. De hecho, nuestras directrices dicen claramente: "No uses IA para escribir tu artículo por ti".

captura de pantalla de parte de las directrices para el JCM

Sin embargo, pensamos que sería interesante y un poco divertido pedirle al propio ChatGPT que enumerara los peligros y riesgos de usar ChatGPT para crear una extensión de Joomla. También se le pidió que hiciera sugerencias sobre cómo ChatGPT puede ayudar a desarrollar extensiones de Joomla mientras se evitan esos peligros y riesgos.

Esta es una única vez, destinada a entretenimiento y tal vez incluso podamos aprender algo de ella. No te lo tomes demasiado en serio. El artículo no es completamente exacto y puede no alinearse con las opiniones de ningún Joomler. El contenido del artículo está determinado en gran medida por el texto de entrada a la IA: lo que tú indicas es lo que obtienes.

Tal vez el artículo te estimule a escribir uno mejor sobre el tema del uso de IA en el desarrollo de extensiones.

Sobre el autor


Este artículo es una traducción de The Dangers and Risks of using ChatGPT to Create a Joomla Extension.

 

Joomla!® es Software Libre distribuido bajo licencia GNU/GPL
The Joomla!® name is used under a limited license from Open Source Matters in the United States and other countries.
mejorcon.joomla.es is not affiliated with or endorsed by Open Source Matters or the Joomla! Project.