Skip to content
Articles

Notes from the workbench — AWS, serverless, and building SaaS as a team of one.

DynamoDB vector search, end to end: a CDK field guide

DynamoDB can do semantic search natively now. A complete, code-heavy guide to the new vector indexes - the custom resource CloudFormation makes you write, and the score semantics you don't want to get backwards.

AWS DynamoDB CDK Bedrock Serverless

AppSync Events, part 4a: measuring the undocumented

The publisher-visible failure surface AWS doesn't document, the dead-letter queue that stayed empty, and what a poisoned handler taught us about EVENT-mode semantics: measured, dated, reproducible.

AWS AppSync Serverless

AppSync Events, part 3: the parts the tutorials skip

Pinning docs-vs-source discrepancies with tests, a module-load pattern for testable Lambda handlers, and a hand-rolled WebSocket client whose own race condition made the case for it.

AWS Powertools CDK Testing

From a blank SD card to ROS2 Jazzy: standing up Elliot's Raspberry Pi 5

The from-scratch setup of Elliot's main compute — flashing Ubuntu 24.04 Server, the mDNS and direct-ethernet DDS plumbing that makes two Pis talk, the swap and USB-current tweaks a Pi 5 actually needs, and a clean ROS2 Jazzy install.

Raspberry Pi ROS2 Ubuntu Robotics

A robot's body language: driving a 96-LED ring from a Raspberry Pi

The hardware and ROS2 software behind Elliot's status ring — driving 96 WS2812Bs straight from a Pi's SPI with no microcontroller, a pure-function animation engine on a render thread, and the sudo that quietly cut the node off from the rest of ROS2.

Raspberry Pi ROS2 Robotics

Colophon: how this site is built

An Astro static site, a navy-and-brass design system, and a single CDK stack you can deploy from your laptop. Here's the whole recipe.

Astro AWS CDK