// writing
Writing — Page 4
A mix of technical deep-dives, career reflections, and dispatches from the road.

obsidianSep 1, 2026· 3 min
Obsidian URI: Your Vault Has an API You're Not Using
Obsidian ships with a custom URI protocol that lets scripts, browsers, and phone shortcuts read and write your vault without you touching the app.
read more →

developmentAug 30, 2026· 4 min
Async Svelte: Using await Directly in Your Components
Svelte 5.36 lets you use await at the top level of a component, inside $derived, and in your markup.
read more →

financeAug 29, 2026· 4 min
What's Actually in Your Phone When You Tap to Pay
Your card number isn't in your phone. Here's what a digital wallet actually stores, why a stolen token is useless on its own, and why merchants care about…
read more →

obsidianAug 28, 2026· 3 min
DataviewJS: The Escape Hatch When Bases and DQL Run Out
Bases handles most vault dashboards now, and Dataview's query language covers the rest. DataviewJS is what you reach for when neither can express the thing…
read more →

developmentAug 27, 2026· 4 min
The Web Locks API: One Tab Does the Work, the Rest Wait
Your app already runs in five tabs at once, and they all think they are in charge. The Web Locks API gives the browser a real mutex so only one of them does…
read more →

financeAug 26, 2026· 4 min
How US Regulators Sorted Crypto Into Five Buckets
For years, whether a token was a security came down to a lawyer's read of a 1946 orange grove case. In 2026 the SEC finally published a taxonomy, and then…
read more →

obsidianAug 25, 2026· 3 min
Writing an Obsidian Plugin Is Smaller Than You Think
Most people patch around a missing Obsidian feature with a Templater script and a CSS snippet. The plugin API is often the shorter path, and the surface…
read more →

developmentAug 24, 2026· 3 min
Form-Associated Custom Elements: Web Components That Belong in a Form
Custom elements can be real form controls. Here is how formAssociated, ElementInternals, and setValidity retire the hidden-input hack for good.
read more →

developmentAug 23, 2026· 4 min
Next.js Partial Prefetching: One Shell Per Route, Not One Per Link
Next.js 16.3 stops firing a prefetch request for every link in the viewport and caches one reusable loading shell per route instead.
read more →
// the newsletter