Speeding Up Go Tests
It can be frustrating as a developer to wait for a large test suite to run, particularly when you have to run the suite multiple times in development. In this post, we’ll explore parallel and short modes with Go tests in an effort to …
Jul 30, 2023Async or Swim: A Developer's Guide to Wading into Asynchronous Processing
The Go programming language provides powerful tools for managing concurrency, but robust asynchronous code requires us as developers to design around uncertain tasks and manifold queues. Step through an async codebase with us in this post!
Jun 5, 2023Mocking the Universe: Two Techniques for Testing gRPC with Mocks
At Rotational, we use gRPC quite a bit. It’s great for specifying network APIs, but can challenge us to find new ways to thoroughly test the code. Follow along with this post to learn two ways of using mocking to test gRPC services!
Mar 28, 2023Ranges of Integer Data Types
The data type choices we make when building data systems or metrics is critically important: as our systems run for long periods of time it can be easy to overflow the integers that we use (Y2K bug anyone?). As a result, I find myself …
Sep 7, 2022Marshaling Go Enums to and from JSON
Customizing JSON serialization for your data types seems relatively straightforward on the surface, but it’s easy to get turned around in receiver, value, pointer, and indirection confusion. Many of the patterns and rules-of-thumb you …
May 26, 2022Fake It When You Make It: Creating Mocks in Go
In the age of microservices and containerized applications, software is less monolithic and more interdependent. How do we write tests which account for this new reality? One common strategy is to create mocks for services. In this post, …
Dec 6, 2021Using Google's Secret Manager API with Go
Security is by definition an inconvenience. At the very least, it’s about making access to data as challenging as possible for the baddies, conveniently measured in computation time. But good security also requires us good folks to go …
Jun 1, 2021Contexts in Go Microservice Chains
Contexts are a critical part of services implemented in Golang. Although we see them often in server interfaces, they can be mysterious to developers implementing request handlers. In this post, we’ll discuss what contexts are and …
May 2, 2021Documenting a gRPC API with OpenAPI
gRPC makes the specification and implementation of networked APIs a snap. But what is the simplest way to document a gRPC API? There seem to be some hosted providers by Google, e.g. SmartDocs, but I have yet to find a gRPC-specific tool. …
Feb 12, 2021
- 1
- of
- 1