A Study Guide to Confusingly Named Consistency Guarantees

There are a huge number of terms used when describing consistency guarantees in distributed systems. What’s the difference between serializable and linearizable? What’s a ‘dirty read’? How do these concepts map between SQL and NoSQL databases? What, in other words, is Kyle Kingsbury actually talking about? I personally find the concepts very confusing. For one thing, everyone uses slightly different terminology for similar or adjacent concepts. Martin Kleppmann helpfully points out that it’s not just me.

Always close the response body! Running out of file descriptors in Golang

In Go you cannot just fire and forget a function. Failing to handle the return types could lead your program to fail. It is quite easy, for instance, to leak file descriptors. This is very, very bad for long-running or high throughput processes. Check for leaks.