Writing

Notes from building Margin on weekends: what broke, what I decided not to build, and why the files stay plain. Long-form, occasional, no newsletter.

RSS feed
On disk
Margin vs Bear: Markdown notes in a database or in a folder

Bear keeps Markdown in one SQLite database. Margin keeps each note as a .md file in a folder, so it has folders and Bear doesn't. Where each is better, and how to move.

5 Oct 2026·9 min·/blog/margin-vs-bear
On disk
Your notes don't need an MCP server

Bear shipped a CLI, a Claude connector and an MCP server so agents can reach its notes. A folder of Markdown files needs none of that. What an agent gets from the folder, and what breaks when it edits it.

24 Sept 2026·6 min·/blog/no-mcp-server
Parsing
The edge cases I hit building a live-preview Markdown editor

I assumed Markdown would be the easy part of building a notes app. Pipes, round-tripping, paste and the cursor each ate a weekend.

23 Aug 2026·4 min·/blog/markdown-edge-cases
Parsing
Three things I decided not to parse

Unmatched embeds, tables that refuse to be repaired, and display options with nowhere to live. Sometimes declining to parse is the safer failure.

16 Aug 2026·2 min·/blog/not-to-parse
On disk
The watcher that cried delete

Some editors save by replacing the whole file, so a file watcher briefly sees a deletion. Believe that event and your app tells someone their note is gone.

8 Aug 2026·3 min·/blog/atomic-saves
Building
16 lessons from building a productivity app on weekends

Notes from the workshop rather than wisdom from the mountain. What a few months of building a notes app has changed about how I look at every app I use.

2 Aug 2026·4 min·/blog/sixteen-lessons
Hear once, when 1.0 ships
No newsletter. One message, then silence.