When to avoid DRY in Go

If you’re here for the first time, this post is part of our Business Applications in Go series. Previously, we introduced Wild Workouts, our example application built with modern tools but containing some subtle anti-patterns. We added them on purpose to show common pitfall...

An intro to Go for non-Go developers

A brief introduction to Go for programmers who haven't used Go before: Why use it? The standard library. And the language itself.

Python and Go : Part I - gRPC

Series Index Python and Go: Part I - gRPC Python and Go: Part II - Extending Python With Go Python and Go: Part III - Packaging Python Code Python and Go: Part IV - Using Python in Memory Introduction Like tools, programming languages tend to solve problems they are designed to....

Recreational Programming with Serverless

Containers Under The Hood

Futures in Go, no package required

Futures are mechanisms for decoupling a value from how it was computed. Goroutines and channels allow implementing futures trivially. Does this approach cover all aspects of a future?

You should not build your own authentication

Welcome to the third and last article covering how to build “Too Modern Go application”. But don’t worry. This doesn’t mean we’re done showing you how to build applications that are easy to develop, maintain, and fun to work with in the long term. It...

ZZT in Go (using a Pascal-to-Go converter)

Describes my port of Adrian Siekierka's "Reconstruction of ZZT" to Go, done in a semi-automated way using a Pascal-to-Go converter.

Testing in Go: philosophy and tools

Describes the minimalist philosophy of testing in Go and the built-in testing tools (LWN.net).

Robust gRPC communication on Google Cloud Run (but not only!)

Welcome to the third article in the series on building business-oriented applications in Go! In this series, we show you how to build applications that are easy to develop, maintain, and fun to work with in the long term. In this article, I describe how to build robust internal c...