Skip to the content.

:robot: El desarrollador de C++ y la inteligencia artificial

Con la llegada de modelos que escriben código con confianza, muchos aspirantes a desarrolladores se han hecho una pregunta razonable: ¿siquiera vale la pena ingresar a la profesión? Es una pregunta justa, y descartarla con un “nah, todo será igual que antes” sería incorrecto. Veamos qué está pasando realmente.

La respuesta corta: los ingenieros siguen siendo necesarios, pero el estándar ha cambiado. He aquí por qué.

:dna: La IA reproduce aquello con lo que fue entrenada

Un modelo se entrena en un vasto cuerpo de código ya escrito y, por su propia naturaleza, produce lo que apareció con mayor frecuencia en esos datos. Hace un trabajo excelente con tareas que la humanidad ya ha resuelto miles de veces: analizar JSON, levantar un servidor HTTP, escribir pruebas para una función fácil de entender.

Sus limitaciones crecen exactamente de la misma raíz:

:warning: Por qué el costo de un error es mayor en C++

En los lenguajes con memoria administrada, el código incorrecto generalmente falla de forma ruidosa e inmediata. En C++ este no es el caso.

La conclusión es simple: solo puedes aceptar código que seas capaz de verificar. Y para verificar el código en C++, necesitas saber C++ no menos que cuando lo escribes a mano. Las herramientas que ayudan (sanitizers, static analyzers, fuzzing) se describen en Conjunto de herramientas del lenguaje.

:bulb: El cuello de botella del desarrollo no es la velocidad de escritura

Este es el punto más importante. El trabajo de un ingeniero nunca se ha reducido a escribir caracteres. Consiste en:

Ninguna de estas tareas puede delegarse a un modelo, no porque “no sea lo suficientemente inteligente”, sino porque son preguntas sobre personas, dinero y responsabilidad. Si una aplicación perjudica a un usuario, es la empresa y los ingenieros específicos quienes responden por ella, no la herramienta. En campos donde el software está certificado —medicina, aviónica, automotriz (ver Estándares de codificación y requisitos normativos)— esto ya no es filosofía, sino un requisito literal: un humano firma el resultado.

Otra observación, conocida mucho antes de las redes neuronales: leer el código de otra persona es más difícil que escribir el tuyo propio. A medida que hay más código y se escribe más rápido, el cuello de botella ya no es escribir, sino comprender y revisar. Ese es un trabajo para un ingeniero, y es más probable que su volumen crezca.

:chart_with_upwards_trend: Qué cambia realmente

Sería deshonesto decir que no está pasando nada. Algo está pasando, y esto es lo que ya es visible:

La conclusión práctica: invierte en los fundamentos (el modelo de memoria, el tiempo de vida de los objetos, la concurrencia, la arquitectura, la depuración). Todo lo que te permita juzgar si una solución es correcta. De eso se trata exactamente el roadmap.

:hourglass: Una trampa para los que aún están aprendiendo

El riesgo más grave de la IA para un desarrollador principiante no es “te quitará tu trabajo”, sino que se interpondrá en el camino del aprendizaje.

La habilidad surge de luchar con un problema: lo intentas, fallas, descubres por qué y un modelo mental de lo que está sucediendo permanece en tu cabeza. Si le preguntas a un asistente en cada dificultad, el problema se resuelve pero el modelo mental no. Después de un año de práctica como esa, resulta que no tienes forma de comprobar la respuesta del asistente.

Qué hacer al respecto:

:handshake: Cómo usarlo de manera útil

Y tres reglas que vale la pena tener en cuenta en todo momento: verifica lo que se genera, sigue la política de tu empresa sobre el envío de código a servicios externos y recuerda los riesgos de las licencias. Más sobre esto en la sección de herramientas de IA.

:telescope: Lo que nadie sabe

Sinceramente: nadie sabe cómo será la profesión en diez años, ni los autores de este roadmap, ni los propios autores de los modelos. Cualquiera que prediga con confianza que “todos serán reemplazados” o “nada cambiará” está haciendo pasar una ilusión por un hecho.

Lo que se puede decir con confianza: la demanda de personas que entiendan cómo funcionan los sistemas y puedan ser responsables del resultado no ha desaparecido hasta ahora. Las herramientas de desarrollo siempre han cambiado: ensamblador, compiladores, IDEs, autocompletado, búsqueda en internet. Cada vez el estribillo era “ahora cualquiera puede programar”, y cada vez había más trabajo, no menos, porque el desarrollo más barato abría nuevos problemas por resolver. El giro actual aún puede resultar diferente, pero hasta ahora no hay base para apostar que el conocimiento profundo perderá su valor repentinamente.


A la página principal