Control packet flow with TCP_NODELAY in Go

Writing web services requires a lot of effort and thinking to make them robust and performant. There’s a wide range of areas to look in order to improve the performance of our service.

Test Driven Advent of Code

By now most of you have probably heard of Advent of Code. If not, go check it out. I’ll give you a few moments…

Benchmark Surprises

I love a good mystery. If you really want my undivided attention, present me with a program which does a thing, and also a proof that it can’t possibly do that thing.

Dynamically scoped variables in Go

This is a thought experiment in API design. It starts with the classic Go unit testing idiom: func TestOpenFile(t *testing.T) { f, err := os.Open("notfound") if err != nil { t.Fatal(err) } // ... } What’s the problem with this code? The assertion. if err != nil { ... } is r...

Building a global services network using Go, QUIC and Micro

Over the past 6 months we at Micro have been hard at work developing a global service network to build, share and collaborate on microservices.

Como construir sitios web con HUGO

Esta publicación tiene como objetivo enseñar a como construir sitios web utilizando HUGO y como subirlo a un hosting. Hugo es un generador de sitios web estáticos construidos con el lenguaje GO, fue creado en el año 2013.

Fun With Flags

In a previous article we discussed why command line applications are important and talked about few guidelines. In this article we’ll see how we can use the built-in flag package to write command line applications.

Internets of Interest #15: The Queen of the Skies

If, like me, you’re a commercial aviation otaku, this walkthrough of an enthusiast built 747 cockpit simulator should be highly relevant to your interests.

Introduction to Gate

Safe use of unsafe.Pointer

Package unsafe provides an escape hatch from Go’s type system, enabling interactions with low-level and system call APIs, in a manner similar to C programs.