Hi! I'm Ryan, and I build products with a focus on privacy and ethical design.

The Corgi is my
rubber duck debugger.

Wed 01 January 2020 4 minutes

Wobbling in Rust

Writing slightly dangerous code in Rust that (literally, mostly) will not die.

Sat 07 December 2019 6 minutes

Decoupling, or: where's my data?

Couple was an app for significant others to chat with. It's 2019 - where's the data?

Thu 01 August 2019 1 minute

Automatic Old Reddit Redirect Safari Extension

Miss the old Reddit in Safari? This extension can help.

Wed 05 June 2019 3 minutes

On Sign-In with Apple

An amazing product with features many seem to be missing.

Wed 15 May 2019 2 minutes

One Last Ride

Redesigning a personal website is a personal hell.

Thu 07 March 2019 3 minutes

Vim, ALE, Docker, and Per-Project Linting

How to make ALE use python/flake8 in Docker without running Vim over SSH.

Mon 18 February 2019 1 minute

Rust, Cargo, lcrypto/OpenSSL, Mac, and You

OpenSSL on Mac is a weird mess, and it can make compiling Rust programs annoying. This is a short guide to help.

Thu 31 January 2019 6 minutes

Dynamic Images in iOS Push Notification Extensions

A guide to rendering dynamic images in push notification extensions for iPhone and iPad.

Wed 02 January 2019 1 minute

Using a Custom JSONEncoder for Pandas and Numpy

Serialization that plays nicely together.

Mon 31 December 2018 5 minutes

My 2018 Reading List

An end-of-year look at what I read, and what I recommend.

Looking for Older Pieces?

I've been writing (professional and... not so much) since about 2005. Check out the Archives for a full list of pieces.

Ryan around the Web