<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Dean Is</title>
		<link>https://dean.is</link>
		<description>The personal website of Dean Marano</description>
		<atom:link href="https://dean.is/blogging/rss.xml" rel="self" type="application/rss+xml" />
<item>
	<title>Task Tracking in Plain Text</title>
	<link>https://dean.is/blogging-about/task-tracking-in-plain-text</link>
	<description>I pulled my project's work out of the code repo and into its own — a git repo of markdown RFCs and stories. No service, no database. Plain text in git, because reading text and following links is the one thing an agent needs no setup to do.</description>
	<pubDate>Tue, 09 Jun 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Did More PRs Mean More Code?</title>
	<link>https://dean.is/blogging-about/did-more-prs-mean-more-code</link>
	<description>After a 350-line cap landed in the agent's memory, my PR throughput more than doubled. The interesting question is whether that translated into more code shipped, or just more boxes packed.</description>
	<pubDate>Mon, 11 May 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Hungry Hungry Self-Hosted Action Runners</title>
	<link>https://dean.is/blogging-about/hungry-hungry-self-hosted-action-runners</link>
	<description>I set up a scalable pool of self-hosted GitHub Actions runners to speed up CI. An agent excited to use every core, plus a pnpm cache miss, plus 2,777 jobs in 36 hours. Then my ISP emailed.</description>
	<pubDate>Fri, 01 May 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>ActiveRecord's Magic in TypeScript</title>
	<link>https://dean.is/blogging-about/activerecords-magic-in-typescript</link>
	<description>The hardest part of porting ActiveRecord isn't the SQL. It's the developer experience. Here's how virtual source files, Proxies, and rethinking associations brought Ruby's magic to a typed language.</description>
	<pubDate>Thu, 16 Apr 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>The "Make it an A" Loop</title>
	<link>https://dean.is/blogging-about/make-it-an-a-loop</link>
	<description>The simplest prompt I've added to my agent loop is asking it to grade its own PR. It works twice (once after the draft opens, and once before the merge) and each pass catches a different kind of shortcut.</description>
	<pubDate>Wed, 15 Apr 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Chasing the Goalposts</title>
	<link>https://dean.is/blogging-about/chasing-the-goalposts</link>
	<description>When you're porting Rails to TypeScript, you need metrics to track progress. But every time I made the metrics more honest, my numbers dropped. Here's what I learned about measuring the right thing from the start.</description>
	<pubDate>Thu, 02 Apr 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Making Copilot Talk Back to Agents</title>
	<link>https://dean.is/blogging-about/making-copilot-talk-back-to-agents</link>
	<description>I built a webhook relay that closes the feedback loop between GitHub and terminal agents, so reviews and test failures reach the right tmux pane without me in the middle.</description>
	<pubDate>Mon, 30 Mar 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Goodhart's Law and the First 10,000 Tests</title>
	<link>https://dean.is/blogging-about/goodharts-law-and-the-first-10000-tests</link>
	<description>Three weeks into rewriting Rails in TypeScript with a coding agent, the hardest part isn't writing code. It's figuring out what to measure.</description>
	<pubDate>Tue, 24 Mar 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Reverts Over Rollbacks</title>
	<link>https://dean.is/blogging-about/reverts-over-rollbacks</link>
	<description>The laws of physics are technically time-reversible. Deployments are not.</description>
	<pubDate>Wed, 18 Mar 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Wrestling with LLMs: The Right Tool for the Job</title>
	<link>https://dean.is/blogging-about/rewriting-bemi-in-zig</link>
	<description>I rewrote a 3.2 GB, four-process data tracking system in Zig in two hours. Not because I know Zig, but because I don't have to anymore.</description>
	<pubDate>Thu, 05 Mar 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Wrestling with LLMs: The Staging Lights</title>
	<link>https://dean.is/blogging-about/tdd-with-llms</link>
	<description>I've been asking LLMs to write tests first for months. Simon Willison's new guide explains why it works, and lends credence to what test-driven development has always practiced.</description>
	<pubDate>Tue, 24 Feb 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Three Dokku Plugins That Built Each Other</title>
	<link>https://dean.is/blogging-about/three-dokku-plugins-that-built-each-other</link>
	<description>I started building a backup tool and accidentally built an infrastructure-as-code engine. Then a test harness turned into an app store. Three plugins that weren't planned together ended up needing each other.</description>
	<pubDate>Wed, 18 Feb 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>dokku-sso: Testing Against Real Apps</title>
	<link>https://dean.is/blogging-about/dokku-sso-testing-against-real-apps</link>
	<description>Three Dokku plugins taught me that your tests are only as good as your test framework. BATS kept me testing internals. Playwright let me test outcomes.</description>
	<pubDate>Sun, 08 Feb 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Ember Data Part 3: Doing It Ourselves</title>
	<link>https://dean.is/blogging-about/ember-data-doing-it-ourselves-part-3</link>
	<description>The Ember Data team promised migration assistance for model-fragments. It never came. So I did it myself.</description>
	<pubDate>Sat, 07 Feb 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>eslint-plugin-typed-jsdoc: or if type errors were lint errors</title>
	<link>https://dean.is/blogging-about/eslint-typed-jsdoc</link>
	<description>I wanted TypeScript's benefits without changing languages. After 4 days building a type inference system, I realized I could just use tsc and ESLint. The working version took 3 hours.</description>
	<pubDate>Tue, 03 Feb 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Run a Mail Server (No, Not Like That)</title>
	<link>https://dean.is/blogging-about/run-a-mail-server</link>
	<description>Everyone says don't run your own mail. They're right, but they're also missing the point. There's a middle path.</description>
	<pubDate>Wed, 21 Jan 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Ember Data 3.x and Beyond: Going Off The Rails (Part 2)</title>
	<link>https://dean.is/blogging-about/ember-data-going-off-the-rails-part-2</link>
	<description>Corporate pivots, broken promises, and the slow abandonment of the community that made Ember Data successful.</description>
	<pubDate>Thu, 15 Jan 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Ember Data Origins: Drafting on Rails (Part 1)</title>
	<link>https://dean.is/blogging-about/ember-data-drafting-on-rails-part-1</link>
	<description>The early promise of Ember Data's Rails integration, the JSON:API pivot, and the emergence of community extensions that would later become casualties.</description>
	<pubDate>Wed, 14 Jan 2026 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Starting a Frontend Guild: Making Enjoyable Meetings</title>
	<link>https://dean.is/blogging-about/starting-a-frontend-guild</link>
	<description>I started a frontend guild at my current employer. Not to teach, but to listen. One hour a month, three parts - one for update, two for others. That two-to-one ratio led to a 10x reduction in API traffic and made meetings people actually wanted to attend.</description>
	<pubDate>Wed, 07 Jan 2026 17:00:00 GMT</pubDate>
</item>
<item>
	<title>How RFCs Outlived My Employer</title>
	<link>https://dean.is/blogging-about/how-rfcs-outlived-my-employer</link>
	<description>From implementing internet RFCs across healthcare apps to writing internal RFCs at Hashicorp - a deep dive into why a 50-year-old process remains the gold standard for making durable, high-quality decisions in distributed engineering organizations.</description>
	<pubDate>Mon, 29 Dec 2025 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Wrestling with LLMs: The Parachute on the Dragster</title>
	<link>https://dean.is/blogging-about/working-with-llms-parachute-on-dragster</link>
	<description>LLMs gave me a dragster engine. But going 10x without tests, CI/CD, or proper deployment is a crash waiting to happen. The twist: LLMs help build the parachute too.</description>
	<pubDate>Mon, 22 Dec 2025 17:00:00 GMT</pubDate>
</item>
<item>
	<title>Wrestling with LLMs: The Developer's New Hats</title>
	<link>https://dean.is/blogging-about/working-with-llms-developers-new-hats</link>
	<description>After Phase 26 revealed catastrophic bugs Claude missed, I realized working with LLMs requires a fundamental role shift. I'm wearing different hats as PM and QA engineer, and handing my dev hat to the machine.</description>
	<pubDate>Mon, 15 Dec 2025 17:00:00 GMT</pubDate>
</item>
<item>
	<title>Wrestling with LLMs: Zen and the Art of Vibe Coding</title>
	<link>https://dean.is/blogging-about/zen-and-the-art-of-vibe-coding</link>
	<description>LLMs will confidently give wrong answers and repeat mistakes. Your natural response - sarcasm, frustration, blame - makes them worse. Zen practices offer a framework for staying calm and getting better outputs. Your vibe becomes the model's vibe.</description>
	<pubDate>Fri, 12 Dec 2025 17:00:00 GMT</pubDate>
</item>
<item>
	<title>Wrestling with LLMs: Managing Smarmy, Overconfident LLMs</title>
	<link>https://dean.is/blogging-about/managing-smarmy-clippys</link>
	<description>Claude told me dokku-dns was "production ready" and "enterprise grade" after 6 weeks. Then real world testing revealed everything was broken - some of it catastrophically so.</description>
	<pubDate>Tue, 09 Dec 2025 00:00:00 GMT</pubDate>
</item>
<item>
	<title>dokku-dns: Automated DNS Management for Self-Hosted Apps</title>
	<link>https://dean.is/blogging-about/dokku-dns-automation</link>
	<description>How dokku-dns eliminates manual DNS work through triggers and zones, making DNS management invisible.</description>
	<pubDate>Thu, 04 Dec 2025 00:00:00 GMT</pubDate>
</item>
<item>
	<title>My Dokku Homelab: Open Source Apps That Power My Digital Life</title>
	<link>https://dean.is/blogging-about/hosting-my-homelab</link>
	<description>A tour of the open source applications I self-host on Dokku, from photo management to home automation.</description>
	<pubDate>Tue, 02 Dec 2025 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Why Dokku: The Power of PaaS Simplicity for the Busy Developer</title>
	<link>https://dean.is/blogging-about/using-dokku-when-i-docker</link>
	<description>Dokku provides an elegant layer atop Docker for self-hosting, enabling professional-grade deployments without operational complexity.</description>
	<pubDate>Mon, 01 Dec 2025 00:00:00 GMT</pubDate>
</item>
<item>
	<title>What I’ve Liked About Trying Svelte as an Ember Dev</title>
	<link>https://dean.is/blogging-about/what-i-liked-about-svelte-as-an-ember-dev</link>
	<description>A reflection on transitioning from Ember.js to SvelteKit, highlighting familiar patterns and key improvements.</description>
	<pubDate>Mon, 17 Nov 2025 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Essential Development Tips for Robust and Maintainable Code</title>
	<link>https://dean.is/blogging-about/collecting-development-tips</link>
	<description>A collection of battle-tested advice for writing cleaner, more resilient, and understandable code, drawing from years of professional experience.</description>
	<pubDate>Tue, 20 Sep 2016 00:00:00 GMT</pubDate>
</item>
<item>
	<title>Understanding Basic and Advanced Data Types in Programming</title>
	<link>https://dean.is/blogging-about/looking-at-data-types</link>
	<description>A comprehensive guide to the fundamental and common advanced building blocks of information storage in computer programming.</description>
	<pubDate>Tue, 20 Sep 2016 00:00:00 GMT</pubDate>
</item>
	</channel>
</rss>