Hi, I'm Adam. I make complex systems feel approachable.

I'm an engineer in Chicago working where product and engineering meet. I've led teams, run product discovery, and shipped open-source tools that thousands of people use every day.

I care a lot about building the right thing, not just the obvious one.

Adam on a boat on the Nile, looking out over the water

Things I believe about building software

Fifteen years of open source (226 repositories, one decade-old SaaS, and a lot of lessons) distilled into three habits.

Start with the problem, not the code

My tools start with discovery: customer interviews, watching how people actually work. The code comes later. It's easy to ship a feature; shipping a solution takes knowing whose problem you're solving, and why.

Leave a foundation others can build on

The projects I'm proudest of are the ones other people build on: extension APIs, plugin systems, open formats. My REST API for Obsidian now underpins an ecosystem of tools I couldn't have built alone (and, honestly, wouldn't have thought to).

New tools change what's worth building (and doing)

Reverse-engineering iCloud's sync protocol was never going to be worth months of my time. With AI in the loop, though, it was worth a few weekends. A surprising amount of the job now is noticing when something expensive has quietly become cheap.

A few things I've made

The full collection is on GitHub, but these are good places to start.

Products

Things you can pick up and use, no programming required.

Recall for Obsidian

20,000+ users

A deep integration between your browser and your notes in Obsidian. Take notes about the page you're on, or mark a link with a decision you've made ("ruled this one out", say), and the next time that link crosses your path, your earlier judgment is right there waiting for you. The idea is to make your notes actionable on the web.

inthe.am

★ 587

A hosted companion for the Taskwarrior task manager. I built it, ran it for ten years, and, when the time came, retired it gracefully. The whole life of a product, start to finish.

icloud-md

New · 2026

Your Apple Notes as plain Markdown files on any OS: diffable, greppable, and yours. iCloud's sync protocol is undocumented, so I reverse-engineered it with AI's help. The latest in a long habit of getting data back out of walled gardens.

Your recipes, out of the app and into your files: Paprika recipes as plain Markdown you can read anywhere, edit in anything, and push back.

One key, every device follows: Logitech's Flow reimplemented in software for Linux, clipboard included.

Developer tools

For people building their own things.

Obsidian Local REST API

★ 2,760 · 649k downloads

The standard bridge between your code (and, increasingly, your AI agents) and your Obsidian notes. It's secure, local, and extensible enough that an ecosystem of plugins builds on top of it. It's the engine behind Recall for Obsidian, above.

Programmatic access to your MyFitnessPal data: the library behind a lot of personal-health dashboards and, somewhat to my surprise, a citation in published nutrition research.

markdown-patch

New · 2026

A structure-aware patch format for Markdown: target a heading, block, or frontmatter field instead of a line number. No regex, no sed.

The electronics bench

Sometimes the right tool needs a soldering iron.

ESP32 firmware that replaces the venerable HC-05 Bluetooth-to-UART module, alongside Saleae logic-analyzer plugins and custom KiCad boards.

Right now

Building the layer that connects AI agents to personal knowledge; fresh releases of icloud-md and markdown-patch this week.

Aug 2026