Go es un lenguaje ideal para desarrollar software con IA
Cameron Balahan y Richard Seroter en el blog de desarrolladores de Google:
Durante un tiempo, la ingeniería de software ha experimentado un cambio profundo y fundamental: donde antes escribíamos la mayor cantidad de líneas de código a mano, ahora pedimos a los asistentes y agentes de código de IA que generen grandes extensiones de código por nosotros. Pero la IA necesita supervisión, por lo que somos nosotros, los humanos, quienes debemos leer el código generado, limpiarlo y verificar que haga lo que queremos que haga. Y debido a que la IA tiene una visión limitada del contexto más amplio en el que debe operar el código que genera, somos nosotros quienes definimos la arquitectura del sistema, diseñamos los límites entre los servicios y garantizamos la seguridad y confiabilidad general de nuestros entornos de producción.
En este paradigma, las cosas que más importan en nuestras herramientas de desarrollo también están cambiando.
Desde inicios de este año comencé a usar Go para mis exploraciones con tecnologías web (usehilo.com, este blog y otras cosas con las que estoy jugando). Aquí está mi reporte de GitHub:

Escogí Go por un set sencillo de razones:
- Es Strongly-typed.
- Es compilado.
- El compilador emite logs y errores bastante útiles.
- Es rápido, rápido, rápido.
- El standard library es suficientemente pequeño como para que cualquier modelo pueda usarlo.
Escogí Go bajo la hipótesis de que darle a un modelo menos oportunidades de cagarla y las herramientas para tener un feedback loop más corto produce mejores resultados que prompts más detallados. Empíricamente, lo que he encontrado es que independientemente del tamaño o sofistificación del modelo que estoy usando (Gemma 4 vs Opus 5 vs GLM 5.2, por ejemplo), mi hipótesis es mayormente correcta.
Por ejemplo: usé Ruby on Rails y Opus 4.x para construir comovamos.app, y la cantidad de falsos positivos, y lo mucho que necesito estar involucrado en cada decisión que toma, me ha hecho no querer darle mucho seguimiento. Y tengo un issue en mi backlog que simplemente dice “mover de Rails a Go". Granted, no tengo experiencia en Rails, y la forma en la que uso los modelos es más delegar objetivos que hacer pair programming. Seguramente, los devotos de San DHH tendrán mejores resultados usando AI para construir con Rails.
En cambio, los proyectos que he hecho con Go han podido avanzar mucho más suavemente, con menos falsos positivos, y mayor certeza de los resultados.
El blog de Google termina con esto:
A medida que los desarrolladores escriben menos código, podría parecer contradictorio que su elección de lenguaje de programación sea en realidad más importante que nunca. Sin embargo, cuando la generación de código se delega en la IA, el principal cuello de botella de la ingeniería de desarrollo cambia por completo de la velocidad de escritura al rigor de la revisión, verificación y mantenimiento. Los lenguajes que históricamente priorizaron la creación de prototipos flexibles y atajos inteligentes e implícitos ahora luchan por mantenerse estables bajo el peso de la producción fragmentada y agéntica. Go, por el contrario, fue diseñado desde el primer día para resolver los desafíos de la colaboración a gran escala y a largo plazo. Su claridad orientada a la lectura, su preparación para producción y su consistencia en toda la plataforma proporcionan las barreras deterministas exactas necesarias para absorber la producción de alta velocidad de un compañero de equipo de IA sin sacrificar la confiabilidad, la capacidad de mantenimiento o la integridad del sistema.
Comparto enlaces y analisis como este regularmente. Recíbelos por correo.