Olvídate de Python o Rust: hablar con las máquinas es el nuevo lenguaje de programación de moda gracias a la IA

Publicado el 23/12/2024 por Diario Tecnología
Artículo original

Olvídate de Python o Rust: hablar con las máquinas es el nuevo lenguaje de programación de moda gracias a la IA

La programación está en plena metamorfosis: hasta ahora, sólo una 'élite' capaz de dominar lenguajes como Python, C++ o Java podían crear su propio software. Pero hoy en día, gracias a herramientas de IA generativa como ChatGPT y GitHUb Copilot, basta con usar instrucciones en lenguaje natural para desarrollar aplicaciones funcionales sin escribir código complejo.

¿Qué aporta la IA en este campo?

  • Democratización para los no programadores: Ahora cualquiera con una idea y conocimientos básicos de inglés puede participar en la creación de software.
  • Productividad elevada para los actuales programadores: Desarrolladores tradicionales ven cómo las herramientas de IA (GitHub Copilot, ChatGPT, etc.) les ayudan a escribir código más rápido y con menos errores.
  • Nuevos perfiles profesionales: Ingenieros y no ingenieros deben mejorar sus habilidades de comunicación y 'prompt engineering' para sacarle el máximo partido a la IA.
  • Necesidad de nuevas habilidades para los viejos perfiles: Para los 'programadores poco comunicativos', se plantea la necesidad de pulir sus habilidades verbales y escritas para poder subir a esta ola.

¿Quiénes lo vieron venir?

Hace casi dos años, alguien lo había visto venir: Andrej Karpathy, exdirector senior de IA en Tesla, predijo en Twitter el surgimiento de esta tendencia: el inglés como el nuevo lenguaje de programación 'de moda'.

"Este desarrollo está desdibujando las barreras entre humanos y máquinas, permitiendo que más personas sean tecnólogos efectivos sin habilidades de programación tradicionales".

Y vaya si lo es: actualmente, según Stability AI, un sorprendente 41% del código alojado en GitHub es generado por inteligencia artificial.

Aunque esta tendencia promete abrir las puertas del desarrollo tecnológico a más personas, también redefine el papel del programador tradicional. Karpathy ha destacado, sin embargo, que aunque el inglés simplifica la entrada a la programación, dominar el arte de la ingeniería de prompts (instrucciones claras y efectivas para la IA) será una habilidad crucial:

"La claridad y la especificidad en los comandos determinarán el éxito de estas herramientas".

Realidad vs. 'hype'

La capacidad para 'programar' de la IA usando lenguaje natural puede generar ahora un enorme entusiasmo, pero entre las promesas de una revolución absoluta y la realidad cotidiana de los proyectos de software, existe aún una brecha significativa.

Las cosas son así por ahora

  1. Supervisión humana sigue siendo imprescindible: Aunque las herramientas de IA pueden escribir líneas de código complejas y dar sugerencias inteligentes, no eliminan la necesidad de revisiones humanas. Ámbitos como la banca, sanidad o aeronáutica no pueden depender únicamente de la confianza ciega en las salidas de un modelo de IA. Debe haber ingenieros revisando la lógica, el rendimiento y la seguridad del sistema antes de lanzar un producto al mercado o integrarlo en infraestructuras críticas.
  2. Todavía hay 'áreas grises' que la IA no resuelve: En campos muy especializados, con problemas 'novedosos' o investigaciones de vanguardia, la IA entrenada en datos existentes puede no proporcionar soluciones adecuadas o completamente originales. La creatividad humana y el pensamiento lateral siguen siendo indispensables para abrir nuevos caminos, diseñar algoritmos pioneros o abordar retos específicos donde no hay datos históricos que la IA pueda 'memorizar'.

No nos vengamos muy arriba aún

  1. La IA no reemplazará totalmente a los programadores: Uno de los principales tópicos que circulan es que la IA generativa eliminará la necesidad de desarrolladores. La realidad es que, si bien la escritura de fragmentos repetitivos se agiliza y automatiza, las decisiones arquitectónicas, la optimización de rendimiento y la integración con sistemas heredados seguirán requiriendo intervención humana. Además, la evaluación de la calidad del código final (refactorización, patrones de diseño, escalabilidad) permanece en manos de expertos.
  2. No creas que cualquier persona podrá crear software complejo sin conocimientos previos: Aunque se ha reducido la barrera de entrada, y hoy es más sencillo construir prototipos básicos con instrucciones en inglés, la experiencia y el conocimiento técnico siguen marcando la diferencia. Para una aplicación sencilla, las herramientas 'no code' pueden ser suficientes; pero proyectos más críticos exigen experiencia en arquitectura, en bases de datos, en seguridad y en ciclos de vida de desarrollo de software.
  3. No pensemos que la IA generativa es infalible: A pesar de los innegables avances de modelos como GPT-4, la IA sigue cometiendo errores, tiene “alucinaciones” (inventa datos o referencias que no existen) y puede generar código con vulnerabilidades de seguridad si el set de entrenamiento o las indicaciones son incompletas o imprecisas. Confiar ciegamente en la IA conlleva riesgos, especialmente si no se establecen procesos adecuados de verificación, testeo y validación.
  4. No subestimemos el cambio organizacional: La adopción de herramientas de IA en empresas y equipos de desarrollo no consiste únicamente en instalar un plug-in de autocompletado en el IDE. Implica cambiar procesos internos, capacitar al personal, redefinir políticas de control de calidad y, a veces, modificar los flujos de integración y despliegue continuo.

Imagen | Marcos Merino mediante IA

En Genbeta | Tiene 21 años y es gratis: por qué Notepad++ es una de las apps favoritas de los desarrolladores tras tanto tiempo

23_Dec_2024"> Marcos Merino .