En 2014, Manu Martínez-Almeida volvió a España tras trabajar en San Francisco (Joypad, TinySpark) y, mientras estudiaba Ingeniería de Telecomunicaciones, ideó Fyve, una red social basada en intereses. Para su backend eligió Go por su austeridad, y de esa necesidad nació Gin, el framework web que aún mantiene el repositorio gin-gonic/gin. Aunque Fyve desapareció, Gin sobrevivió y hoy suma alrededor de 88.000 estrellas y más de 290.000 proyectos que lo usan como dependencia.
La decisión de diseño central fue distinguir entre «fácil» y «simple». Inspirado por la charla «Simplicity is Complicated» de Rob Pike, Martínez-Almeida rechazó el enfoque del popular Martini, basado en inyección de dependencias por reflexión: resultaba cómodo en el primer ejemplo, pero ocultaba el flujo de control y penalizaba la ruta de petición. En el otro extremo, el paquete net/http de la librería estándar es explícito pero repetitivo, porque obliga a reescribir el mismo «fontanería» para parámetros de ruta, parseo, validación y respuesta en cada handler.
Gin optó por un punto intermedio: mantener la ruta de petición explícita, evitar reflexión y esconder el trabajo repetitivo detrás de un único objeto, gin.Context, que reúne la solicitud, el response writer, los parámetros y los helpers de validación. El Context de Gin se introdujo en 2014, dos años antes que context.Context de la librería estándar, y acabó adoptando esa interfaz sin romper compatibilidad.
El enrutador se apoya en un árbol radix, la misma técnica que popularizó httprouter, lo que reduce el tiempo de búsqueda a un recorrido por la longitud de la URL, en lugar de comparar expresiones regulares. Las asignaciones se minimizan con slices preasignados y un sync.Pool para reciclar objetos Context entre peticiones, lo que reduce presión sobre el recolector de basura.
Otro principio rector fue la promesa de cero cambios breaking, inspirada en la política de compatibilidad de Go. El crecimiento llegó tras lanzarlo en Hacker News en el momento adecuado; Martínez-Almeida lo cedió después a nuevos mantenedores, en especial Bo-Yi Wu y Javier Provecho. La misma filosofía «simple antes que fácil» se aplicó años después en Qwik.
