Hi, I'm Andrew.

I build AI agents that remember and learn. Principal AI Engineer at Redis, author, and open source maintainer.

Synchronizing the iOS Clipboard with a Remote Server Using Command-Line Tools

Synchronizing the iOS Clipboard with a Remote Server Using Command-Line Tools

When developing on a remote computer over SSH from iOS, one problem has vexed...

Starting a Publishing Company: Month 1

Starting a Publishing Company: Month 1

I started a publishing company! Spellbook Press launched this week, taking pr...

Coding on an iPad Pro in 2019

Coding on an iPad Pro in 2019

Download audio version In 2017 I asked, “Can You Wri...

What Are We Doing Here?

What Are We Doing Here?

[T]hough it is worthwhile to attain the end merely for one man, it is fine...

Using Windows 10 and the Surface Book 2 for Web Development

Using Windows 10 and the Surface Book 2 for Web Development

I’ve been a web developer who uses a Mac for almost ten years, but lately I’m...

Demonstrating Timeouts, Retries, and Circuit Breakers with an Outage Simulator

Demonstrating Timeouts, Retries, and Circuit Breakers with an Outage Simulator

I’ve seen quite a few outages and outage-like scenarios caused by improper ha...

Can you Write Code on a Chromebook?

Can you Write Code on a Chromebook?

This is an update to Can you Write Code on an iPad?, in which I tried writing...

Mixins in Python and Ruby Compared

Mixins in Python and Ruby Compared

The venerable “mixin” is a technique I learned as a Python developer. Now, af...

Ten Years of Learning Investments

Ten Years of Learning Investments

I’m coming up on ten years as a professional software developer. On...