Zombie Zen

Ross's Blog

Introducing postgrestest

Posted at by Ross Light

Today, I released a small library called postgrestest. It spins up an ephemeral PostgreSQL database in Go. I’ve found it quite useful for writing tests that use PostgreSQL while keeping the test hermetic and reasonably fast. In my benchmarks, starting a server takes roughly 650 milliseconds and creating a database takes roughly 20 milliseconds — a 70% improvement and 90% improvement, respectively, over a postgres Docker container in the default configuration.

You can install it with:

go get zombiezen.com/go/postgrestest
Read more…
Posted at
Permalink

gg 1.0 released!

Posted at by Ross Light
gg

I’m proud to announce the first stable release of gg, my alternative Git command-line interface! This has been a release over two years in the making: I’ve battle-tested gg across many different workflows and projects. It’s saved me tons of time every day, and I hope it can save time for others too. Download the latest release and try it out for yourself!

Read more…
Posted at
Permalink

Building at YourBase

Posted at by Ross Light
YourBase logo

I’m excited to announce that I am joining the engineering team at YourBase! YourBase’s flagship product is a build system that greatly improves the speed of software development with very little configuration. It brings me back to what I’m passionate about: improving how people work by making software simpler. It’s still early days, but I’m excited by the enthusiasm and the respectful, remote-first culture I’ve found at YourBase. I can’t wait to see what we build together!

Posted at
Permalink

Apollo Client Caching

Posted at by Ross Light

Since I’ve started working at Clutter, I’ve grown to enjoy the Apollo React Client library. However, I’ve noticed that the client’s caching behavior can be difficult to understand and cause surprising issues, so I’ve decided to collect my findings into one easily digestible post. This post assumes a basic understanding of GraphQL.

The major hidden component of Apollo Client is the cache, which sits between every query and the backend server.

The major hidden component of Apollo Client is the cache, which sits between every query and the backend server.

Read more…
Posted at
Permalink

Introducing: My GraphQL Go Server

Posted at by Ross Light
GraphQL logo

I’m excited to share my hobby project from the last few months: a GraphQL server library for Go. While it doesn’t implement the whole spec and might not be ready for production, I think it’s in a useful enough state to share more broadly. I’ve tested this library out with some toy projects and the results have been promising: I’m able to quickly publish a Go struct as a GraphQL endpoint.

Check it out now by reading the docs and adding it to your project with:

go get zombiezen.com/go/graphql-server/graphql
Read more…
Posted at
Permalink
← Previous Page Next Page →