a tumblelog
23 May 2020

maybedoer: the Maybe Monoid for Go

This file is used to sequence functions that could fail together, allowing you to avoid doing an if err != nil check on every single fallible function call.

Source: maybedoer: the Maybe Monoid for Go, an article by Christine Dodrill.

Optional JSON fields in Go

One common kind of data stored in a configuration file is options. In this post, I'll talk about some nuances we have to be aware of when storing options in JSON and unmarshaling them to Go.

Specifically, the most important difference between options and any other data is that options are often, well... optional. Our program can have a large number of possible configuration options, but we may want to configure any particular invocation with only a subset - leaving all the others at their default values.

Source: Optional JSON fields in Go, an article by Eli Bendersky.

Bash Romance

It’s not a particularly new or exciting take to say that we’ve outgrown Bash. The Unix shell environment was novel and powerful in its day, but its age is really starting to show.

Source: Bash Romance.