Emulators in Golang for Fun and Profit - Part 3

It’s alive!

Emulators in Golang for Fun and Profit - Part 2

The emulation adventure continues!

Emulators in Golang for Fun and Profit

This past weekend I decided that I wanted to write an emulator for something in Go. As someone on twitter said to me, that only a developer would write en emulator just because! The main reasons though were to a) learn more about how CPUs work and b) build something fun.

Goroutines, Channels and WaitGroups

Recently I came across a scenario where I needed to execute some long running functions and capture the results for later use. Of course to reduce the latency of this code I ran the functions concurrently with goroutines and a waitgroup. The kicker here was that to return the results from the goroutines I had to use channels and getting the complete data from the channel was more complex than I thought.

Reliable, scalable and language agnostic microservices with protocol buffers and gRPC.

Unless you’ve been living under a rock (or a monolith, badum tish!) for the past couple of years, you will have heard the term microservices at some point. Chances are you, or someone you know, are developing microservices.