Go nació en Google en 2007 con una meta concreta: compilar rápido, ejecutar rápido y escribir código que cualquier persona del equipo pueda leer sin esfuerzo. No es una promesa de futuro ni un lenguaje académico — Docker, Kubernetes, Terraform, Cloudflare y cientos de empresas más lo tienen en producción desde hace más de una década.
Si alguna vez usaste contenedores o trabajaste con infraestructura moderna, probablemente ya estás usando Go sin saberlo.
¿Qué es Go?
Go (también llamado Golang) es un lenguaje compilado, de tipado estático y con recolector de basura. Fue creado por Robert Griesemer, Rob Pike y Ken Thompson, y liberado como software libre en 2009.
Su filosofía se resume en una frase de Rob Pike: «Less is exponentially more». Comparado con Java o C++, Go elimina herencia, sobrecarga de operadores y ficheros de cabecera. El resultado es un lenguaje pequeño — 25 palabras clave — que se aprende en días y se lee sin sorpresas.
Características que lo hacen distinto
Compilación a binario nativo. Go produce un único ejecutable estático. Sin máquina virtual, sin intérprete. El binario incluye todo lo necesario para correr y arranca en milisegundos.
Concurrencia como ciudadano de primera clase. Las goroutines son hilos ligeros gestionados por el runtime que pesan apenas 2 KB cada uno. Una aplicación Go puede lanzar cientos de miles de goroutines sin problema. Lanzar una tarea en paralelo cuesta una sola palabra clave: go.
Tipado estático con inferencia. El tipo se infiere cuando es obvio (x := 10), pero se verifica en tiempo de compilación. Los errores de tipo no llegan a producción.
Standard library potente. Servidor HTTP, JSON, criptografía y testing están incluidos en la stdlib, listos para usar sin dependencias externas.
¿Dónde se usa Go?
Go domina la infraestructura moderna. Algunos ejemplos concretos:
Infraestructura y DevOps: Docker, Kubernetes, Terraform, Prometheus y Grafana están escritos en Go.
Backends y microservicios: Uber, Twitch, Cloudflare y Dropbox migraron servicios críticos a Go por su rendimiento y bajo consumo de memoria.
Herramientas CLI: La GitHub CLI, Hugo y muchas otras CLIs populares están en Go. Compilar a un solo binario portable es ideal para distribuir herramientas.
¿Cuándo tiene sentido elegir Go?
Go brilla en APIs y microservicios HTTP, herramientas de línea de comandos, workers y procesos concurrentes, y cualquier sistema donde el arranque rápido y el bajo consumo de memoria importen. No es la mejor opción para ciencia de datos (Python gana ahí), frontends (JavaScript/TypeScript), ni sistemas de tiempo real estricto sin GC (Rust o C).
La curva de aprendizaje es inusualmente amable: en una semana se pueden escribir programas reales, en un mes código de producción.
Aprendé Go en Coding Challenges y DevTalles
Si querés aprender Go desde cero de forma estructurada, el curso de Go en Coding Challenges cubre todo el camino: desde la sintaxis básica y los tipos, pasando por structs, interfaces y manejo de errores, hasta goroutines, channels, generics y patrones idiomáticos. Son 10 capítulos, 41 lecciones y unas 14 horas de contenido, completamente en español y gratis.
Podés empezar desde el inicio en coding-challenges.dev/learn/go. Pero si prefieres videos y estructura tradicional de lecciones y ejercicios:
Golang - Fundamentos del lenguaje por DevTalles y Ricardo Cuéllar



