It all started with a meme.
This one involved created an insult from everybody’s favorite abusive television chef, Gordon Ramsay, by picking a value from three columns.
The more code you write, the greater the surface for potential bugs. In traditional REST APIs, you often get stuck writing lots of routing and serialization code, which can often get out of sync as your application grows. RPC (Remote Procedure Call) libraries come to the rescue here, generating a lot of this client & server code for you so you can focus on your implementations.
Previously, RPC usage in golang was centered around a couple larger libraries, gokit and grpc. As a counter to this, some glorious Twitch engineers have recently open-sourced a much more minimal library called Twirp…
In a 2015 post, good ol’ Martin Fowler put it well:
Almost all the successful microservice stories have started with a monolith that got too big and was broken up
So what does that process look like? In this post, we’re going to go on a little journey and carve away a high-performance service from a very simple node app. We’ll do load testing to verify our bottleneck, create a protobuf file to clearly communicate the service boundary, and then integrate a golang server implemented with an RPC library called Twirp. …
Inevitably systems get complex enough that forcing your development environment to quickly bend to your will for some testing case involves some labyrinthine process of adding the right models in the right order to work well enough for some denormalised table that you didn’t know existed to return the one field you need to bang out a fix.
How about just not doing that.
Especially on the frontend, I love to stub out the responses I expect. This leads to its own issues, often where I do a weird little command line salsa of repetitive
git stash manipulations.
Hello internet void!
As part of some possibly flakey new years resolutions, I’m setting out on a little experiment in technical writing.
My extremely well-thought out plan to dive deeper into all these interests and add…