Check for Standards Before Creating a New One

flags

I recently had a ticket opened on my team’s backlog board requesting the ability to bypass our API’s caching system. For context, our front-end team uses my team’s API to make fairly heavy requests to ElasticSearch, and one of the features of our API gateway is to cache the results of heavy aggregations for ~30 …

Read more

How to Properly Use Defer in Golang

hand signal

What is the “defer” keyword in Go? In the Go programming language, defer is a keyword that allows developers to delay the execution of a function until the current function returns. What throws some people off is that the deferred function’s arguments are evaluated immediately, but the function itself doesn’t fire until the wrapping function …

Read more

Comprehensive Guide to Dates and Times in Go

clock

Keeping track of time in code has long been every developer’s nightmare. While no language or package manages time perfectly, I think Golang does a pretty good job out-of-the-box. This full tutorial should answer ~90% of the questions you’ll have about time management in Go. Table of Contents Overview – How dates and times are …

Read more

Continuous Deployments != Continuous Disruptions

stream running down hill continuous

Luckily, I’ve met very few engineers in my career who are outright opposed to continuous deployment. That said, I have met some, and I think their hesitation is usually rooted in the myth that continuous causes more disruptions to end-users than a batched release cycle. What is continuous deployment? Before we get into the nitty-gritty …

Read more

The 10x Meeting – Solving for Too Many Meetings

meetings on couch

Perhaps you’ve heard of the fabled 10x developer (or 10x engineer) – the one on the team that’s 10x as productive as their average colleague. While many, including myself, doubt the existence of such people, I do think there are meetings that are 10x as productive as the average meeting. My goal in this article …

Read more

Concatenating with strings.Builder Quickly in Golang

knot in string unsplash

The Go standard library makes concatenating strings easy. Concatenation is just a fancy word for adding strings together to make a larger string. For example, if we concatenate “hello”, ” ” and “world” we’d get “hello world”. The built-in fmt.Sprintf function takes a format and a variadic list of interfaces as input. The formatting option …

Read more

Golang vs Python: 6 Questions to Decide Which Programming Language is Best For You

golang vs python: this image shows a white man with a Gopher image superimposed on his face squaring up to box woth a Black man with a Python logo superimposed over his face.

These two coding languages duke it out – but who’s the winner? Question Tentative Winner Brief historic description of Golang vs Python – Golang vs Python: Which coding language is best for beginners? Python Golang vs Python: Which coding language is best for experienced coders? Go Golang vs Python: Which language is best for a …

Read more

The Ultimate Guide to JSON in Go

json data

As a language designed for the web, Go provides extensive support for working with JSON data. JSON (JavaScript Object Notation) is an incredibly popular data exchange format whose syntax resembles simple JavaScript objects. It’s one of the most common ways for applications to communicate on the modern web. Table of Contents Encoding and decoding with …

Read more