Ardan Labs
Featured Post

Range-Over Functions in Go

Updated February 17th, 2026 11 min read

Iteration has long been one of the more fragmented areas of Go, with developers relying on ad hoc patterns to traverse custom data structures. This article explores the range-over-functions …

Subscribe to our Newsletter

By signing up you get access to our FREE Training Bundle, Technical Tuesday releases, Special Offers, & Notifications on our latest content.

All Blog Posts

Published

Dec 19, 2018

-

6 min read

Goroutine Leaks - The Abandoned Receivers

go Training golang

Goroutine Leaks are a common cause of memory leaks in Go programs. In my previous post, I presented an introduction to Goroutine leaks and provided one example of a common mistake that many Go developers make. Continuing that work, this post presents another scenario on how Goroutines could be leaked.

Published

Nov 12, 2018

-

8 min read

Goroutine Leaks - The Forgotten Sender

go Training golang

Goroutine leaks are a common source of memory leaks in concurrent programs. This post defines Goroutine leaks and provides one example of a leak that is easy to miss in production code.

Published

Aug 14, 2018

-

3 min read

Creating the Art for Gopher Kart

Go Gopher GopherCon GopherKart

In the months leading up to GopherCon, my wife Jamilet and I had come up with the idea of creating a “small” browser-based game for the convention using the racing …

Published

Jun 27, 2018

-

6 min read

Ultimate Go Service

go Training golang

Introduction I teach a class called Ultimate Go. The class is three days long and teaches you the history, mechanics and semantics of the Go programming language. The …

Published

Apr 28, 2018

-

5 min read

Bounds Check Elimination In Go

go Training golang

Introduction One day I was talking to Damian Gryski in Slack about some performance improvements he made to his go-metro package. When I first looked at the changes I was …

Published

Mar 23, 2018

-

12 min read

Interface Values Are Valueless

go Training golang

Introduction I’ve been seeing a lot of question about interfaces lately on Slack. Most of the time the answers are technical and focus on implementation details. …

Published

Feb 20, 2018

-

17 min read

Focus On Being Precise

go Training golang

Introduction I was guided for many years to write functions that are generalized and to create layers upon layers of abstraction so things don’t break as business …

Published

Jan 22, 2018

-

18 min read

Escape-Analysis Flaws

go Training golang

Prelude It will be helpful to read this four-part series first on escape analysis and data semantics. Details on how to read an escape analysis report and pprof output …

Published

Oct 24, 2017

-

22 min read

The Behavior Of Channels

go Training golang

Introduction When I started to work with Go’s channels for the first time, I made the mistake of thinking about channels as a data structure. I saw channels as a queue …