Go Concurrency
Concurrency is frequently cited as a reason to use Go, but also frequently misunderstood. In this post we discuss when and where to use concurrency in Go, when not to, and how it differs from other languages you may have used.
Concurrency is frequently cited as a reason to use Go, but also frequently misunderstood. In this post we discuss when and where to use concurrency in Go, when not to, and how it differs from other languages you may have used.
Go’s “empty interface” type is easy to abuse, but can be useful in specific circumstances. In this post I propose three rules that can be used to determine if it is appropriate to use an empty interface.
Thoughts on finding a balance between centralized and distributed package management that works well for package authors, consumers, and companies with strict package management policies.
Desktops with Linux and IETF kitten
Shortcuts in i3 and words in Vi written
Unicode standards normalizing my strings
These are a few of my favorite things
In 2013 I wrote How I Compute. I reread it recently and was surprised by how much had changed in the last four years, so I’ve decided to update it with a few of my new favorite things.
New theme, new software: this blog is now generated by Hugo.
A melody written for Sarah.
A contra dance for Sarah.
In which this blog gets a new TLS certificate.
Writing of ships is hard work on an empty stomach.