caleb!

i'm learning how to make stuff with code for myself and occasionally for others. i write about what i learn on my blog, chase functional programming, memory, how computers work, getting my feet in the murky waters of CRDTs in my free time, and try to make sense of the world through books.

Zapr

Split electricity bills without the guesswork.

Inline Emoji Picker

Spawn emojis directly from your keyboard on macOS without losing flow as you type

Livenormad

Affordable unique pieces of home decor From around the globe

Space

Upload a photo of your room and see how the furniture fits before you buy it

Writing

View all

an interface can actually extend multiple interfaces

19 Jul 2026

tuples can be unambiguous

13 Jul 2026

On strings and characters in Haskell

15 Apr 2026

Bits, bytes and pieces

18 Mar 2026

Talks

Improving UX on the web with URLs

In person, Jun 2024

Building npm packages in 2023 — and beyond

In person, Dec 2023

Growing by creating OSS projects

Virtual, Mar 2023

Building performant and user-centric applications on the web.

In person, Nov 2022

Protecting API Keys in production with Next.js API routes

Virtual, Oct 2021