Go, Forrest, go

Go, Forrest, go es el original nombre que Eduardo puso al proyecto de Piweek. Además le hizo este logo tan alucinante.

¿Es un castor? ¿Es un topo? ¡No! Es un gopher 8D
¿Es un castor? ¿Es un topo? ¡No! Es un gopher 8D

Así que no me quedó más remedio que apuntarme a su proyecto… Esta Piweek era la excusa perfecta para aprender Go y una de sus características más interesantes: la facilidad para crear goroutines. En este caso, como tanto Eduardo como yo somos muy pythonistas así que no esperábamos que algo así fuera tan fácil :P

El proyecto que hemos hecho es una biblioteca que permite hacer consultas SNMP de forma paralela y concurrente. Tiene una configuración de contención por host para evitar enviar demasiadas peticiones y saturar un destino. Hicimos una prueba síncrona con un servidor http y otra asíncrona con AMQP. Y todo el resultado está disponible en un repositorio público.

El lunes empezamos montando juntos un esqueleto; después fue tomando forma la biblioteca principal. El miércoles nos dividimos para hacer el trabajo: por un lado, el servidor http; por otro lado, la gestión de colas con amqp (un servicio que acepta consultas snmp desde un broker amqp y posteriormente publica las respuestas en el broker). Y el jueves terminamos de nuevo juntos y preparamos la demo. Hasta nos dio tiempo a hacer EL súper logo.

Mis conclusiones de esta Piweek:

  • Gracias a Go hemos podido levantar una pequeña aplicación que lanza muchísimas peticiones ligeras. Con Python nos habría resultado mucho más complicado.
  • Con todo, Go no me ha gustado mucho; la sintaxis no es tan limpia y el sistema de paquetes me ha dejado estupefacta y ojiplática a partes iguales.
  • Trabajar con Eduardo ha sido un lujazo. Es un compi excepcional, y una mala bestia del tema de comunicaciones.
  • Y hace dibujos con los esquemas. Y tiene una gran paciencia explicando.

Me ha gustado mucho dedicar una semana a un lenguaje de programación del que no sabía nada, a un protocolo del que no sabía nada y con un compañero con quien apenas había trabajado (más allá de un genial desk surfing). ¡Piweek en estado puro!

Os presento a los ganadores de la VI Piweek
Os presento a los ganadores de la VI Piweek
comments powered by Disqus