The water filtration industry has played us for absolute fools

My Brita water filter does not in fact purify.

Don't supply `-f` to `rm` unless you know you need it

A vignette on the theme of ‘do not allow yourself to get into the habit of supplying the -f flag to rm’.

Argument in a high-trust environment

I tend to argue things in a particular way because I’m in a high-trust environment.

Crates (existentials in F#)

An introduction to the crate pattern for representing existential quantification in F#.

Metatesting your property-based tests

A rather little-known but very easy and high-reward way to sanity-check your property-based tests.

In praise of `--dry-run`

First-class support for a –dry-run mode makes a tool more maintainable, more testable, and more user-friendly.

Continuation-passing style

Motivating the technique of continuation-passing style, by looking at recursive functions.

Rewriting the Technical Interview, in Mathematica

An exploration into reaching into the internals of Mathematica to natively evaluate C code.

Software engineer syllabus

An incomplete but growing list of things I would make mandatory reading if I were building a software engineering syllabus.

Cyclic dependencies (a note from Hacker News)

A quick note from Hacker News about how to model in F# something that might look like cyclic dependencies.

An incomplete life evaluation checklist

A checklist I have used during my regular six-monthly life review.

Find the Bug, C# edition

A cute little exercise in bug-spotting.

A bug in Git

A bug I found and reported in Git.

Christmas quiz

A round of questions I wrote for a Christmas quiz.

Christmas dinner notes

My notes on the production of a Christmas dinner.

Anki as Learning Superpower

Some techniques to help you get more out of Anki.

General relativity (a note from Hacker News)

A quick note from Hacker News about a neat fact from general relativity.

Nulls and options (a note from Hacker News)

A quick note from Hacker News about why we want optional types but why ‘null’ is unintuitive.

The uncountability of the reals (a note from Hacker News)

A quick note from Hacker News about a beautiful proof of the uncountability of the reals.

In favour of recursive functions, not imperative constructs, to make loops

How to write loops immutably and safely.