Curated articles, resources, tips and trends from the DevOps World.
RabbitMQ is a great message broker with awesome Golang support. It’s a great pub-sub system, and pub-sub has become a staple communication architecture in micro-services. At my current day job, we use RabbitMQ to push hundreds of millions of social media posts through our Go services daily.
An anonymous struct is just like a normal struct, but it is defined without a name and therefore cannot be referenced elsewhere in the code. Structs in Go are similar to structs in other languages like C.
In microservice architectures, it’s fairly common to have a project that includes different worker types. A Makefile can be used to manage the creation of multiple programs, but the Go toolchain has a tool that can be used as well, go generate. Here are some examples of how it can be used:
time.Time is the perfect choice for handling times in Go in most cases, it even comes in the standard library! The problem is that the time.Time{} struct uses more than 24 bytes of memory under most conditions.
What is Superdense coding? Superdense coding is a quantum communications protocol that allows a user to send 2 classical bits by sending only 1 qubit. Learn Go by writing Go code I'm a senior engineer learning Go, and the pace of Boot.dev's Go Mastery courses has been perfect for me.
I’ve often seen, and have been responsible for, throwing code into packages without much thought. I’ve quickly drawn a line in the sand and started putting code into different folders (which in Go are different packages by definition) just for the sake of findability.
Go is a strongly typed language, which means at any point a developer should know exactly what type of value they are dealing with. For example, if we have a function that prints a string, we can’t just give it an integer and expect it to work. We have to cast it to a string explicitly:
Golang is King when it comes to concurrency. No other language has so many tools right out of the box, and one of those tools is the standard library’s sync.Mutex{}. Mutexes let us safely control access to data across multiple goroutines.
time.Time makes dealing with dates and times in Go a breeze, and it even comes bundled in the standard library! However, a time.
Interfaces in Go allow us to treat different types as the same data type temporarily because both types implement the same kind of behavior. They’re central to a Go programmer’s toolbelt and are often used improperly by new Go developers, which leads to unreadable and often buggy code.
Have valuable insights to share with the DevOps community? Submit your article for publication.
Get the latest DevOps news, tools, and insights delivered to your inbox.
Made with pure grit © 2026 Jetpack Labs Inc. All rights reserved. www.jetpacklabs.com