Short-form technical ramblings. Formerly VP of Architecture at, I'm Member of Technical staff at Mozi and co-author of "Docker: Up and Running" from O'Reilly Media.


New blog post: "Parsing Protobuf Definitions with Tree-sitter" .  It's all about how I used #Treesitter to jumpstart some nice internal #Protobuf tooling at work in #Golang.

I am working with protobuf files and wanted to write some new tooling for code generation that doesn't use Go's horrible protoreflect.

I started parsing the files with Treesitter (in Go), which works great. Writing query S expressions was kinda annoying but then I found that #Neovim has a built-in #Treesitter query editor and live tree/document playground.

Holy crap! This is sooooo nice. 🤯

#nybolt #ev #electriccars #ElectricVehicles #battery #tesla #elonmusk

This one is better than Musk’s Tesla:

“A British startup may have found the answer to one of the frustrations of driving an electric car — waiting around for the battery to charge.

Nybolt, based in Cambridge, has developed a new 35kWh lithium-ion battery that was charged from 10% to 80% in just over four and a half minutes in its first live demonstration last week.

That is much faster than the 20 minutes or so it currently takes some electric cars using a fast charger, such as a Tesla (TSLA) Supercharger. It is also much closer to the two minutes it takes to fill up the average gasoline-powered car.”

It still annoys me that installing the aws-cli tools requires all of Python to be installed. Would love a single binary (a la Go) instead #AWS.

I just realized today that SQLite actually has `json_extract()`! This is potentially pretty huge for one of our use cases. Combined with indexes on expressions, this is pretty powerful. I use json_extract() all the time on Athena and Trino. Didn't realized SQLite had it.

At Mozi, our whole backend is evented and event-sourced along the lines of my blog post from 2022 at Tom Patterer and I hooked up DBT today, backed by Athena, and we then wired up Amazon Quicskight and got some charts with BI metrics. Fairly happy with that.

Man, these new #GtiHub ARM64/AARCH64 beta runners are fast. Maybe not bogged down with tons of noisy neighbors yet.

#GitHub finally released #ARM64 runners into public beta. I had to make some small changes to the build because the ARM Ubuntu image is a little different. But one of our service build times for the ARM64 container went down from 20 mins --> 4 mins! Win.

More appreciation for how well it has been going working on a couple of medium-sized Go projects. We've worked to keep test speeds quick and it takes only about 3 seconds to run 5k+ assertions on one of the projects.

Any interest out there in me writing a blog post on this PoC I did awhile back in #TruffleRuby? #Ruby