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

The Corgi is my
rubber duck debugger.

Sun 15 March 2020 2 minutes

You Did Not EARN IT

Petition your Representatives to vote against the EARN IT act.

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.

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