Rust in Practice

Writing software is a craft. I’ve been writing software code for a long time, and currently I write a lot of Rust. These posts are about writing it well in the context I actually work in, which is data-intensive and scientific software. Error handling, tracing and observability, serialisation, and using the type system to encode things that matter. I try to demystify the language and show how to use it to write software that is reliable, maintainable, and easy to understand.

Rust in Practice
errors orange

Error Handling in Rust: anyhow and thiserror

Practical Rust error handling beyond the basics: add context with anyhow and define typed errors with thiserror.

Read More
errors blue

Error Handling in Rust: Fundamentals

A clear, practical guide to Rust error handling: panic, Result, ?, unwrap, and expect - written for Rust developers who want clarity without jargon.

Read More
crab blue

Finding Similarity with Vector Search: A Beginner's Guide

This blog comes out of an interactive workshop I gave using SurrealDB. It's a beginner's guide to vector search, a modern way to find matches based on multiple preferences at once.

Read More