// writing
Thoughts on code,
craft & exploration.
A mix of technical deep-dives, career reflections, and dispatches from the road.
topic:

financeJul 25, 2026· 4 min
Dollar-Cost Averaging vs. Lump-Sum: What the Data Actually Says
Investing a windfall all at once beats easing it in about two-thirds of the time. Here is what the research actually says, and when dollar-cost averaging still makes sense.
read more →

obsidianJul 24, 2026· 4 min
Building an Obsidian Theme: A Practical Guide to CSS Variables
You do not need to fight cascade specificity to restyle Obsidian. Override a handful of CSS variables and you have a real theme that respects light and dark mode.
read more →

developmentJul 23, 2026· 4 min
JavaScript Iterator Helpers: Stop Converting to Arrays First
Iterator helpers bring map, filter, take, and drop to any iterator without spreading into an array first. They went Baseline in 2025, and they change how you handle Maps, Sets, and generators.
read more →

financeJul 22, 2026· 4 min
How Staking Actually Works: Validators, Rewards, and Slashing
A plain-English look at what happens under the hood when you stake crypto: how validators secure a proof-of-stake network, where the yield comes from, and what slashing really risks.
read more →

obsidianJul 21, 2026· 4 min
Obsidian Web Clipper: Clip the Web Straight Into Your Vault
The official Obsidian Web Clipper turns any web page into a clean, templated vault note. Here's how its templates, variables, and filters actually work.
read more →

developmentJul 20, 2026· 3 min
CSS :has() in Practice: The Parent Selector You Can Finally Ship
The :has() selector is Baseline and fast in 2026. Here's how to use it for parent styling, sibling reactions, and quantity queries without reaching for JavaScript.
read more →

developmentJul 19, 2026· 4 min
CSS @function: Reusable Logic Comes Native to the Browser
CSS finally has real, reusable functions. The new @function at-rule lets you define typed helpers that run in the browser with live values — here is how it works and where it is supported today.
read more →

financeJul 18, 2026· 5 min
Open Banking: How Apps Actually Get Your Bank Data
The mechanics behind connecting a budgeting app to your bank account, why screen scraping is dying, and where the US open banking rules stand in 2026.
read more →

obsidianJul 17, 2026· 5 min
Obsidian on Mobile: Stop Fighting the Toolbar
Most people give up on Obsidian mobile because the defaults don't match how they actually capture notes. The fix isn't plugins — it's ten minutes in the Mobile settings.
read more →

developmentJul 16, 2026· 4 min
The Soft Navigations API: Core Web Vitals Finally Work in SPAs
Chrome ships the Soft Navigations API unflagged in 151, giving single-page apps a standardized way to measure LCP, INP, and CLS per route change instead of only on the first load.
read more →
…
// the newsletter