What if you could build an entire, production-ready app not in weeks or months — but in minutes?

In order to build the many experiments for my research on the future of personal computing, and the subsequent demos for these Lab Notes, I needed a way to build much faster than was presently possible (the work simply won’t work if it takes weeks or months to scale up each experiment; the learning has to be faster than that).

Here’s what I’ve been building:

It’s a framework that allows me to build entire production-ready apps in minutes. …

Managing many user requests at once with Mail Pilot is an entire system in itself. This essay breaks down the organization and process I use to hande and make use of a high volume of requests.

Email is a very personal thing. Everyone has their own unique list of “must-have” features for an email client. Managing many user requests at once is a skill that I have become proficient at, but only after years of gracelessly fumbling through poor processes.

Here are the organization, process, and other details that have served me well for the last several years as I’ve…

For the last three years, I’ve been working on a totally new Mail Pilot. More than that, it’s a totally new way to do email.

Today, I want to share the first look at what I’ve been cooking up:

This new Mail Pilot represents a dramatic shift in every part of building and using an email client, but I’ll save that and more for the coming weeks.

If you want to stay up to date with the new Mail Pilot, sign up on the website:

👉 Head to mailpilot.app to sign up for more info as it’s available


Since launching 1997.chat this past week to bring some connection and nostalgia to the socially isolated, nearly 2,000 buddies have signed up, Nylon Magazine published a thing, and now, a Mac app has appeared.

The Mac app brings even more of the classic IM experience. You get notification sounds all the time, a bouncing icon dock when you receive messages, and an easier way to manage all your chat windows.

👉 Download it from 1997.chat

If you want to set your background to the classic “Bliss” from Windows XP, here it is:

Last week, with many headed into social isolation, a thought occurred to me: AIM should come back. After a few more thoughts occurred to me, outlined below, I went ahead and built it.

👉 Want to jump right into it? Head to 1997.chat on your desktop to get your screen name. If you want to add me to your list o’ buddies, my screen name is ado12! (Note: You don’t have to have numbers in your screen name, but it adds to the nostalgia.)

The case for AIM

Back in the day, before Facebook and Twitter, and before email became… email, we had AIM…

The world I thought I lived in forever changed in the few years of my pre-teens, just as it did for every kid I knew or went to school with, and I suspect, many in my generation.

We all have an affinity for our favorite grocery chains — for me, growing up, my sense of nostalgia is rapidly invoked at the sight of a Shoppers. They sell “colossal donuts,” the best of which is the apple fritter. As a boy, my father would take my sister and I to Shoppers on weekend mornings, get us a donut (politely ignoring the…

That’s all steam, not clouds — rising near the Grand Prismatic Spring in Yellowstone National Park

Stephen King’s wife once took his latest story out of the trash and forced him to finish it. That story was Carrie.

Stewart Butterfield wanted to return his investors’ money when his game wasn’t gaining traction. His investor rejected the refund, and the company went on to release Slack, which just went public at a $16 billion valuation.

After 51 games, and on the verge of bankruptcy, Rovio set out to make one last game before calling it quits. That game was Angry Birds.

You never know what your best is. All you can do is increase your output.


The newly released SwiftUI allows you to write your interface declaratively. And with the new data flow mechanisms, you can write your data flow declaratively as well — and everything will update as you would expect it to, automatically. The concepts are powerful, but they can be a little confusing.

In this post, I’ll break down all the ways to move data declaratively through our SwiftUI views. Let’s start with a cheat sheet, and then we’ll move into descriptions and examples of each.


Summary: read-only values provided by the parent view.

  • A property is how a view defines what it…

You come up with a brilliant idea, you obsess over it, you Google some info, and on your screen lies your idea, being done by someone else, for the last two years. You’re all too familiar with that sinking feeling in your stomach that follows. You abandon the idea almost immediately after all that excitement and ideation.

First, existing solutions prove your idea — their existence proves that you’re trying to solve a real problem that people might pay to have solved. And it proves that you’re heading in a direction that makes sense to others, too.

Second, and this…

Just as I was getting close to recording a video on Mail Pilot Discovery Edition’s new keyboard shortcuts, I noticed something horrifying.

They were a little… sluggish.

The Problem

When you’re scrolling around the Mail Pilot Discovery Edition interface, with all of its rendered email previews, the interface is buttery smooth despite how much is being rendered. I worked hard to make it extremely performant (redeveloping the entire interface twice to get it there). It is a super unique interface, and required stepping beyond convention to get it to work really well.

Once the keyboard shortcuts were working, moving messages felt fine…

Alexander Obenauer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store