Tag latex

The Finished Thesis: 150 Pages Later

The Thesis Series – Bonus Post

Tag thesis

The Finished Thesis: 150 Pages Later

The Thesis Series – Bonus Post

Tag oakland-university

The Finished Thesis: 150 Pages Later

The Thesis Series – Bonus Post

Tag lyx

Tag academic-writing

Tag masters

The Finished Thesis: 150 Pages Later

The Thesis Series – Bonus Post

Tag formatting

Tag bibtex

Tag ieee

Tag citations

Tag wysiwyg

Tag tools

Tag isomob

The Finished Thesis: 150 Pages Later

The Thesis Series – Bonus Post

Tag haxe

From Side Scripts to Infrastructure: Making My Game Toolchain Usable by Other Humans

This is the companion to Claude Hit 100%, Codex Kept Going, and it is really about one practical question: can someone else sit down at this repo and get useful...

Claude Hit 100%, Codex Kept Going: The Week My AI Workflow Became a System

Last week I wrote about usage curves and cost in Claude Max vs Codex Max. This week felt different.

Day 1 with Claude: Five Games, One Website, and 128 Million Tokens

Saturday I sat down with Claude Code (Opus 4.6) and decided to see how much I could get done in a day. The answer: a lot more than I expected....

Porting TappyPlane: From Haxe/OpenFL to Godot 4 with Claude

Back in the day I built TappyPlane for a 3-hour game jam. It was a Flappy Bird clone starring a little green plane dodging rock pillars — built with Haxe,...

Rebuilding Snake: From a 4-Hour Haxe Jam Game to 10 Levels in Godot 4

I built a Snake game in 4 hours for a game jam back in 2014. Haxe, OpenFL, Flash target, 30 FPS. Three hand-crafted levels, frame-counter movement, bitmap tile rendering. It...

QuickSki Update: Forgiving Flags, Speed Ramp, and AI Skiers

QuickSki started life as a Haxe/OpenFL slalom game – ski downhill, thread gates, don’t hit trees. After porting TappyPlane to Godot 4, I gave QuickSki the same treatment. But this...

Nape and Barrage Integration for Bullet Collision and Ricochet

After the last article, Nape and Barrage are integrated and running together, but we still have a few issues -- Mainly that both Nape and Barrage want full control over a bullet's...

Extending the StableXUI library - Grid Widget

Back when we first started working with OpenFl a robust UI framework didn’t exist.  The first revision of our game interface was a homegrown solution which worked well but didn’t follow any...

The Finished Thesis: 150 Pages Later

The Thesis Series – Bonus Post

Tag game-engine

The Finished Thesis: 150 Pages Later

The Thesis Series – Bonus Post

Tag isometric

The Finished Thesis: 150 Pages Later

The Thesis Series – Bonus Post

Tag templates

Tag retrospective

Day 1 with Claude: Five Games, One Website, and 128 Million Tokens

Saturday I sat down with Claude Code (Opus 4.6) and decided to see how much I could get done in a day. The answer: a lot more than I expected....

Tag android

Tag performance

Tag pdf

The Finished Thesis: 150 Pages Later

The Thesis Series – Bonus Post

Tag openfl

From Side Scripts to Infrastructure: Making My Game Toolchain Usable by Other Humans

This is the companion to Claude Hit 100%, Codex Kept Going, and it is really about one practical question: can someone else sit down at this repo and get useful...

Claude Hit 100%, Codex Kept Going: The Week My AI Workflow Became a System

Last week I wrote about usage curves and cost in Claude Max vs Codex Max. This week felt different.

Day 1 with Claude: Five Games, One Website, and 128 Million Tokens

Saturday I sat down with Claude Code (Opus 4.6) and decided to see how much I could get done in a day. The answer: a lot more than I expected....

Porting TappyPlane: From Haxe/OpenFL to Godot 4 with Claude

Back in the day I built TappyPlane for a 3-hour game jam. It was a Flappy Bird clone starring a little green plane dodging rock pillars — built with Haxe,...

Rebuilding Snake: From a 4-Hour Haxe Jam Game to 10 Levels in Godot 4

I built a Snake game in 4 hours for a game jam back in 2014. Haxe, OpenFL, Flash target, 30 FPS. Three hand-crafted levels, frame-counter movement, bitmap tile rendering. It...

QuickSki Update: Forgiving Flags, Speed Ramp, and AI Skiers

QuickSki started life as a Haxe/OpenFL slalom game – ski downhill, thread gates, don’t hit trees. After porting TappyPlane to Godot 4, I gave QuickSki the same treatment. But this...

Nape and Barrage Integration for Bullet Collision and Ricochet

After the last article, Nape and Barrage are integrated and running together, but we still have a few issues -- Mainly that both Nape and Barrage want full control over a bullet's...

Extending the StableXUI library - Grid Widget

Back when we first started working with OpenFl a robust UI framework didn’t exist.  The first revision of our game interface was a homegrown solution which worked well but didn’t follow any...

Tag stablexui

Extending the StableXUI library - Grid Widget

Back when we first started working with OpenFl a robust UI framework didn’t exist.  The first revision of our game interface was a homegrown solution which worked well but didn’t follow any...

Tag ui

Extending the StableXUI library - Grid Widget

Back when we first started working with OpenFl a robust UI framework didn’t exist.  The first revision of our game interface was a homegrown solution which worked well but didn’t follow any...

Tag barrage

Nape and Barrage Integration for Bullet Collision and Ricochet

After the last article, Nape and Barrage are integrated and running together, but we still have a few issues -- Mainly that both Nape and Barrage want full control over a bullet's...

Tag particles

Tag bullet-patterns

Nape and Barrage Integration for Bullet Collision and Ricochet

After the last article, Nape and Barrage are integrated and running together, but we still have a few issues -- Mainly that both Nape and Barrage want full control over a bullet's...

Tag nape

Nape and Barrage Integration for Bullet Collision and Ricochet

After the last article, Nape and Barrage are integrated and running together, but we still have a few issues -- Mainly that both Nape and Barrage want full control over a bullet's...

Tag physics

Nape and Barrage Integration for Bullet Collision and Ricochet

After the last article, Nape and Barrage are integrated and running together, but we still have a few issues -- Mainly that both Nape and Barrage want full control over a bullet's...

Tag c

Advent of Code 2021: Stack-Based Bracket Matching in C

Advent of Code 2021 was running and I had a few evenings free. I knocked out four days – the first three in Python for speed, and Day 10 in...

Back to Basics: Algorithms and Data Structures in C

Every few years I go back to the fundamentals. Not because I’ve forgotten how merge sort works, but because implementing things from scratch in C forces a level of precision...

Tag algorithms

Advent of Code 2021: Stack-Based Bracket Matching in C

Advent of Code 2021 was running and I had a few evenings free. I knocked out four days – the first three in Python for speed, and Day 10 in...

Back to Basics: Algorithms and Data Structures in C

Every few years I go back to the fundamentals. Not because I’ve forgotten how merge sort works, but because implementing things from scratch in C forces a level of precision...

Tag data-structures

Advent of Code 2021: Stack-Based Bracket Matching in C

Advent of Code 2021 was running and I had a few evenings free. I knocked out four days – the first three in Python for speed, and Day 10 in...

Back to Basics: Algorithms and Data Structures in C

Every few years I go back to the fundamentals. Not because I’ve forgotten how merge sort works, but because implementing things from scratch in C forces a level of precision...

Tag sorting

Back to Basics: Algorithms and Data Structures in C

Every few years I go back to the fundamentals. Not because I’ve forgotten how merge sort works, but because implementing things from scratch in C forces a level of precision...

Tag strings

Back to Basics: Algorithms and Data Structures in C

Every few years I go back to the fundamentals. Not because I’ve forgotten how merge sort works, but because implementing things from scratch in C forces a level of precision...

Tag ctci

Back to Basics: Algorithms and Data Structures in C

Every few years I go back to the fundamentals. Not because I’ve forgotten how merge sort works, but because implementing things from scratch in C forces a level of precision...

Tag clrs

Back to Basics: Algorithms and Data Structures in C

Every few years I go back to the fundamentals. Not because I’ve forgotten how merge sort works, but because implementing things from scratch in C forces a level of precision...

Tag advent-of-code

Advent of Code 2021: Stack-Based Bracket Matching in C

Advent of Code 2021 was running and I had a few evenings free. I knocked out four days – the first three in Python for speed, and Day 10 in...

Tag python

Advent of Code 2021: Stack-Based Bracket Matching in C

Advent of Code 2021 was running and I had a few evenings free. I knocked out four days – the first three in Python for speed, and Day 10 in...

Tag stack

Advent of Code 2021: Stack-Based Bracket Matching in C

Advent of Code 2021 was running and I had a few evenings free. I knocked out four days – the first three in Python for speed, and Day 10 in...

Tag godot

The Game I Always Wanted to Make: How AI Let Me Finally Build My Childhood Obsession

I’ve been carrying a game in my head for forty years.

Space Taxi In Space: Rebuilding a C64 Classic Around Friendship, Humor, and Procedural Everything

It started with a Commodore 64 in a crawlspace. Behind the water heater, wrapped in a garbage bag from 1990, next to a disk drive we named Jared. The 5.25”...

Building Squirrel Defense: 4,900 Lines, Zero Sprites, One Afternoon

Every other project from Day 1 was a port. Squirrel Defense was the one I built from nothing — a game I made with my kids. No Haxe source to...

Day 1 with Claude: Five Games, One Website, and 128 Million Tokens

Saturday I sat down with Claude Code (Opus 4.6) and decided to see how much I could get done in a day. The answer: a lot more than I expected....

Porting TappyPlane: From Haxe/OpenFL to Godot 4 with Claude

Back in the day I built TappyPlane for a 3-hour game jam. It was a Flappy Bird clone starring a little green plane dodging rock pillars — built with Haxe,...

Rebuilding Snake: From a 4-Hour Haxe Jam Game to 10 Levels in Godot 4

I built a Snake game in 4 hours for a game jam back in 2014. Haxe, OpenFL, Flash target, 30 FPS. Three hand-crafted levels, frame-counter movement, bitmap tile rendering. It...

QuickSki Update: Forgiving Flags, Speed Ramp, and AI Skiers

QuickSki started life as a Haxe/OpenFL slalom game – ski downhill, thread gates, don’t hit trees. After porting TappyPlane to Godot 4, I gave QuickSki the same treatment. But this...

Tag web

Space Taxi In Space: Rebuilding a C64 Classic Around Friendship, Humor, and Procedural Everything

It started with a Commodore 64 in a crawlspace. Behind the water heater, wrapped in a garbage bag from 1990, next to a disk drive we named Jared. The 5.25”...

Building Squirrel Defense: 4,900 Lines, Zero Sprites, One Afternoon

Every other project from Day 1 was a port. Squirrel Defense was the one I built from nothing — a game I made with my kids. No Haxe source to...

Day 1 with Claude: Five Games, One Website, and 128 Million Tokens

Saturday I sat down with Claude Code (Opus 4.6) and decided to see how much I could get done in a day. The answer: a lot more than I expected....

Porting TappyPlane: From Haxe/OpenFL to Godot 4 with Claude

Back in the day I built TappyPlane for a 3-hour game jam. It was a Flappy Bird clone starring a little green plane dodging rock pillars — built with Haxe,...

Rebuilding Snake: From a 4-Hour Haxe Jam Game to 10 Levels in Godot 4

I built a Snake game in 4 hours for a game jam back in 2014. Haxe, OpenFL, Flash target, 30 FPS. Three hand-crafted levels, frame-counter movement, bitmap tile rendering. It...

Resurrecting a Dead Website with Jekyll and a Little AI

So say you run a game development website on a CMS that hasn't been maintained since the Obama administration. And say that website has been sitting on a shared hosting...

QuickSki Update: Forgiving Flags, Speed Ramp, and AI Skiers

QuickSki started life as a Haxe/OpenFL slalom game – ski downhill, thread gates, don’t hit trees. After porting TappyPlane to Godot 4, I gave QuickSki the same treatment. But this...

Tag html5

Space Taxi In Space: Rebuilding a C64 Classic Around Friendship, Humor, and Procedural Everything

It started with a Commodore 64 in a crawlspace. Behind the water heater, wrapped in a garbage bag from 1990, next to a disk drive we named Jared. The 5.25”...

Building Squirrel Defense: 4,900 Lines, Zero Sprites, One Afternoon

Every other project from Day 1 was a port. Squirrel Defense was the one I built from nothing — a game I made with my kids. No Haxe source to...

Day 1 with Claude: Five Games, One Website, and 128 Million Tokens

Saturday I sat down with Claude Code (Opus 4.6) and decided to see how much I could get done in a day. The answer: a lot more than I expected....

Porting TappyPlane: From Haxe/OpenFL to Godot 4 with Claude

Back in the day I built TappyPlane for a 3-hour game jam. It was a Flappy Bird clone starring a little green plane dodging rock pillars — built with Haxe,...

Rebuilding Snake: From a 4-Hour Haxe Jam Game to 10 Levels in Godot 4

I built a Snake game in 4 hours for a game jam back in 2014. Haxe, OpenFL, Flash target, 30 FPS. Three hand-crafted levels, frame-counter movement, bitmap tile rendering. It...

QuickSki Update: Forgiving Flags, Speed Ramp, and AI Skiers

QuickSki started life as a Haxe/OpenFL slalom game – ski downhill, thread gates, don’t hit trees. After porting TappyPlane to Godot 4, I gave QuickSki the same treatment. But this...

Tag game-design

Building Squirrel Defense: 4,900 Lines, Zero Sprites, One Afternoon

Every other project from Day 1 was a port. Squirrel Defense was the one I built from nothing — a game I made with my kids. No Haxe source to...

QuickSki Update: Forgiving Flags, Speed Ramp, and AI Skiers

QuickSki started life as a Haxe/OpenFL slalom game – ski downhill, thread gates, don’t hit trees. After porting TappyPlane to Godot 4, I gave QuickSki the same treatment. But this...

Tag port

Day 1 with Claude: Five Games, One Website, and 128 Million Tokens

Saturday I sat down with Claude Code (Opus 4.6) and decided to see how much I could get done in a day. The answer: a lot more than I expected....

Porting TappyPlane: From Haxe/OpenFL to Godot 4 with Claude

Back in the day I built TappyPlane for a 3-hour game jam. It was a Flappy Bird clone starring a little green plane dodging rock pillars — built with Haxe,...

Rebuilding Snake: From a 4-Hour Haxe Jam Game to 10 Levels in Godot 4

I built a Snake game in 4 hours for a game jam back in 2014. Haxe, OpenFL, Flash target, 30 FPS. Three hand-crafted levels, frame-counter movement, bitmap tile rendering. It...

QuickSki Update: Forgiving Flags, Speed Ramp, and AI Skiers

QuickSki started life as a Haxe/OpenFL slalom game – ski downhill, thread gates, don’t hit trees. After porting TappyPlane to Godot 4, I gave QuickSki the same treatment. But this...

Tag jekyll

Resurrecting a Dead Website with Jekyll and a Little AI

So say you run a game development website on a CMS that hasn't been maintained since the Obama administration. And say that website has been sitting on a shared hosting...

Tag ai

Redefining Yourself In The Age Of AI

The biggest AI shift for me has not been technical.

I Built A Dashboard Because AI Limits Changed How I Work

I pay for the highest consumer-tier AI coding subscriptions I can justify.

AI Expands The Option Space. Taste Decides What Ships.

One of the best uses of AI is not doing the known work faster.

Managing AI Agents Like A High-Velocity Team

Running multiple AI sessions is not like having magic.

Internal Tools Are The AI Multiplier

AI does not reduce the value of internal tools.

The Leadership Skill AI Does Not Replace

One of my most productive AI weeks had zero commits.

Token Limits Reveal Organizational Debt

Token limits are usually discussed as a model constraint.

Scaling Output Without Pretending AI Is A Team

AI can make one person look like a small team.

AI Makes Verification The Management Layer

The first wave of AI coding feels like a writing-speed upgrade.

What Did Not Work: AI Spin Loops, Identity Drift, and My Ben/Hiram Naming Debt

This is the uncomfortable companion to the other two posts from this run:

Should I Build My Own MCP for Trello? Yes, But Keep It Thin

After wiring Trello directly into the game, I kept asking myself the same question:

Claude Hit 100%, Codex Kept Going: The Week My AI Workflow Became a System

Last week I wrote about usage curves and cost in Claude Max vs Codex Max. This week felt different.

When AI Multiplies Velocity — and Chaos: Multi-Agent Lessons from a Real Codebase

I’ve been building a game called All Is Vanity in my spare time. This week I tried something ambitious: running eight AI coding agents simultaneously against the codebase.

The Game I Always Wanted to Make: How AI Let Me Finally Build My Childhood Obsession

I’ve been carrying a game in my head for forty years.

Space Taxi In Space: Rebuilding a C64 Classic Around Friendship, Humor, and Procedural Everything

It started with a Commodore 64 in a crawlspace. Behind the water heater, wrapped in a garbage bag from 1990, next to a disk drive we named Jared. The 5.25”...

Building Squirrel Defense: 4,900 Lines, Zero Sprites, One Afternoon

Every other project from Day 1 was a port. Squirrel Defense was the one I built from nothing — a game I made with my kids. No Haxe source to...

Day 1 with Claude: Five Games, One Website, and 128 Million Tokens

Saturday I sat down with Claude Code (Opus 4.6) and decided to see how much I could get done in a day. The answer: a lot more than I expected....

Porting TappyPlane: From Haxe/OpenFL to Godot 4 with Claude

Back in the day I built TappyPlane for a 3-hour game jam. It was a Flappy Bird clone starring a little green plane dodging rock pillars — built with Haxe,...

Rebuilding Snake: From a 4-Hour Haxe Jam Game to 10 Levels in Godot 4

I built a Snake game in 4 hours for a game jam back in 2014. Haxe, OpenFL, Flash target, 30 FPS. Three hand-crafted levels, frame-counter movement, bitmap tile rendering. It...

Resurrecting a Dead Website with Jekyll and a Little AI

So say you run a game development website on a CMS that hasn't been maintained since the Obama administration. And say that website has been sitting on a shared hosting...

Tag claude

I Built A Dashboard Because AI Limits Changed How I Work

I pay for the highest consumer-tier AI coding subscriptions I can justify.

My First MCP: No More Manual Bug Tickets

This week I shipped my first MCP, and it solved a problem I was tired of pretending was small.

What Did Not Work: AI Spin Loops, Identity Drift, and My Ben/Hiram Naming Debt

This is the uncomfortable companion to the other two posts from this run:

Should I Build My Own MCP for Trello? Yes, But Keep It Thin

After wiring Trello directly into the game, I kept asking myself the same question:

From Side Scripts to Infrastructure: Making My Game Toolchain Usable by Other Humans

This is the companion to Claude Hit 100%, Codex Kept Going, and it is really about one practical question: can someone else sit down at this repo and get useful...

Claude Hit 100%, Codex Kept Going: The Week My AI Workflow Became a System

Last week I wrote about usage curves and cost in Claude Max vs Codex Max. This week felt different.

When AI Multiplies Velocity — and Chaos: Multi-Agent Lessons from a Real Codebase

I’ve been building a game called All Is Vanity in my spare time. This week I tried something ambitious: running eight AI coding agents simultaneously against the codebase.

The Game I Always Wanted to Make: How AI Let Me Finally Build My Childhood Obsession

I’ve been carrying a game in my head for forty years.

Space Taxi In Space: Rebuilding a C64 Classic Around Friendship, Humor, and Procedural Everything

It started with a Commodore 64 in a crawlspace. Behind the water heater, wrapped in a garbage bag from 1990, next to a disk drive we named Jared. The 5.25”...

Building Squirrel Defense: 4,900 Lines, Zero Sprites, One Afternoon

Every other project from Day 1 was a port. Squirrel Defense was the one I built from nothing — a game I made with my kids. No Haxe source to...

Day 1 with Claude: Five Games, One Website, and 128 Million Tokens

Saturday I sat down with Claude Code (Opus 4.6) and decided to see how much I could get done in a day. The answer: a lot more than I expected....

Porting TappyPlane: From Haxe/OpenFL to Godot 4 with Claude

Back in the day I built TappyPlane for a 3-hour game jam. It was a Flappy Bird clone starring a little green plane dodging rock pillars — built with Haxe,...

Rebuilding Snake: From a 4-Hour Haxe Jam Game to 10 Levels in Godot 4

I built a Snake game in 4 hours for a game jam back in 2014. Haxe, OpenFL, Flash target, 30 FPS. Three hand-crafted levels, frame-counter movement, bitmap tile rendering. It...

Resurrecting a Dead Website with Jekyll and a Little AI

So say you run a game development website on a CMS that hasn't been maintained since the Obama administration. And say that website has been sitting on a shared hosting...

Tag concrete5

Resurrecting a Dead Website with Jekyll and a Little AI

So say you run a game development website on a CMS that hasn't been maintained since the Obama administration. And say that website has been sitting on a shared hosting...

Tag migration

Resurrecting a Dead Website with Jekyll and a Little AI

So say you run a game development website on a CMS that hasn't been maintained since the Obama administration. And say that website has been sitting on a shared hosting...

Tag game-jam

Porting TappyPlane: From Haxe/OpenFL to Godot 4 with Claude

Back in the day I built TappyPlane for a 3-hour game jam. It was a Flappy Bird clone starring a little green plane dodging rock pillars — built with Haxe,...

Rebuilding Snake: From a 4-Hour Haxe Jam Game to 10 Levels in Godot 4

I built a Snake game in 4 hours for a game jam back in 2014. Haxe, OpenFL, Flash target, 30 FPS. Three hand-crafted levels, frame-counter movement, bitmap tile rendering. It...

Tag snake

Rebuilding Snake: From a 4-Hour Haxe Jam Game to 10 Levels in Godot 4

I built a Snake game in 4 hours for a game jam back in 2014. Haxe, OpenFL, Flash target, 30 FPS. Three hand-crafted levels, frame-counter movement, bitmap tile rendering. It...

Tag procedural-generation

Space Taxi In Space: Rebuilding a C64 Classic Around Friendship, Humor, and Procedural Everything

It started with a Commodore 64 in a crawlspace. Behind the water heater, wrapped in a garbage bag from 1990, next to a disk drive we named Jared. The 5.25”...

Building Squirrel Defense: 4,900 Lines, Zero Sprites, One Afternoon

Every other project from Day 1 was a port. Squirrel Defense was the one I built from nothing — a game I made with my kids. No Haxe source to...

Rebuilding Snake: From a 4-Hour Haxe Jam Game to 10 Levels in Godot 4

I built a Snake game in 4 hours for a game jam back in 2014. Haxe, OpenFL, Flash target, 30 FPS. Three hand-crafted levels, frame-counter movement, bitmap tile rendering. It...

Tag debugging

What Did Not Work: AI Spin Loops, Identity Drift, and My Ben/Hiram Naming Debt

This is the uncomfortable companion to the other two posts from this run:

When AI Multiplies Velocity — and Chaos: Multi-Agent Lessons from a Real Codebase

I’ve been building a game called All Is Vanity in my spare time. This week I tried something ambitious: running eight AI coding agents simultaneously against the codebase.

Tag dce

Tag tower-defense

Building Squirrel Defense: 4,900 Lines, Zero Sprites, One Afternoon

Every other project from Day 1 was a port. Squirrel Defense was the one I built from nothing — a game I made with my kids. No Haxe source to...

Tag retro

The Game I Always Wanted to Make: How AI Let Me Finally Build My Childhood Obsession

I’ve been carrying a game in my head for forty years.

Space Taxi In Space: Rebuilding a C64 Classic Around Friendship, Humor, and Procedural Everything

It started with a Commodore 64 in a crawlspace. Behind the water heater, wrapped in a garbage bag from 1990, next to a disk drive we named Jared. The 5.25”...

Tag commodore-64

The Game I Always Wanted to Make: How AI Let Me Finally Build My Childhood Obsession

I’ve been carrying a game in my head for forty years.

Space Taxi In Space: Rebuilding a C64 Classic Around Friendship, Humor, and Procedural Everything

It started with a Commodore 64 in a crawlspace. Behind the water heater, wrapped in a garbage bag from 1990, next to a disk drive we named Jared. The 5.25”...

Tag space-taxi

The Game I Always Wanted to Make: How AI Let Me Finally Build My Childhood Obsession

I’ve been carrying a game in my head for forty years.

Space Taxi In Space: Rebuilding a C64 Classic Around Friendship, Humor, and Procedural Everything

It started with a Commodore 64 in a crawlspace. Behind the water heater, wrapped in a garbage bag from 1990, next to a disk drive we named Jared. The 5.25”...

Tag narrative

Space Taxi In Space: Rebuilding a C64 Classic Around Friendship, Humor, and Procedural Everything

It started with a Commodore 64 in a crawlspace. Behind the water heater, wrapped in a garbage bag from 1990, next to a disk drive we named Jared. The 5.25”...

Tag side-projects

The Game I Always Wanted to Make: How AI Let Me Finally Build My Childhood Obsession

I’ve been carrying a game in my head for forty years.

Tag pet-projects

The Game I Always Wanted to Make: How AI Let Me Finally Build My Childhood Obsession

I’ve been carrying a game in my head for forty years.

Tag multi-agent

When AI Multiplies Velocity — and Chaos: Multi-Agent Lessons from a Real Codebase

I’ve been building a game called All Is Vanity in my spare time. This week I tried something ambitious: running eight AI coding agents simultaneously against the codebase.

Tag lessons-learned

When AI Multiplies Velocity — and Chaos: Multi-Agent Lessons from a Real Codebase

I’ve been building a game called All Is Vanity in my spare time. This week I tried something ambitious: running eight AI coding agents simultaneously against the codebase.

Tag process

When AI Multiplies Velocity — and Chaos: Multi-Agent Lessons from a Real Codebase

I’ve been building a game called All Is Vanity in my spare time. This week I tried something ambitious: running eight AI coding agents simultaneously against the codebase.

Tag codex

I Built A Dashboard Because AI Limits Changed How I Work

I pay for the highest consumer-tier AI coding subscriptions I can justify.

My First MCP: No More Manual Bug Tickets

This week I shipped my first MCP, and it solved a problem I was tired of pretending was small.

What Did Not Work: AI Spin Loops, Identity Drift, and My Ben/Hiram Naming Debt

This is the uncomfortable companion to the other two posts from this run:

Should I Build My Own MCP for Trello? Yes, But Keep It Thin

After wiring Trello directly into the game, I kept asking myself the same question:

From Side Scripts to Infrastructure: Making My Game Toolchain Usable by Other Humans

This is the companion to Claude Hit 100%, Codex Kept Going, and it is really about one practical question: can someone else sit down at this repo and get useful...

Claude Hit 100%, Codex Kept Going: The Week My AI Workflow Became a System

Last week I wrote about usage curves and cost in Claude Max vs Codex Max. This week felt different.

Tag openai

Tag anthropic

Tag comparison

Tag cost

Tag usage

Tag gamedev

My First MCP: No More Manual Bug Tickets

This week I shipped my first MCP, and it solved a problem I was tired of pretending was small.

What Did Not Work: AI Spin Loops, Identity Drift, and My Ben/Hiram Naming Debt

This is the uncomfortable companion to the other two posts from this run:

Should I Build My Own MCP for Trello? Yes, But Keep It Thin

After wiring Trello directly into the game, I kept asking myself the same question:

From Side Scripts to Infrastructure: Making My Game Toolchain Usable by Other Humans

This is the companion to Claude Hit 100%, Codex Kept Going, and it is really about one practical question: can someone else sit down at this repo and get useful...

Claude Hit 100%, Codex Kept Going: The Week My AI Workflow Became a System

Last week I wrote about usage curves and cost in Claude Max vs Codex Max. This week felt different.

Tag workflow

Managing AI Agents Like A High-Velocity Team

Running multiple AI sessions is not like having magic.

Internal Tools Are The AI Multiplier

AI does not reduce the value of internal tools.

Token Limits Reveal Organizational Debt

Token limits are usually discussed as a model constraint.

AI Makes Verification The Management Layer

The first wave of AI coding feels like a writing-speed upgrade.

My First MCP: No More Manual Bug Tickets

This week I shipped my first MCP, and it solved a problem I was tired of pretending was small.

What Did Not Work: AI Spin Loops, Identity Drift, and My Ben/Hiram Naming Debt

This is the uncomfortable companion to the other two posts from this run:

Should I Build My Own MCP for Trello? Yes, But Keep It Thin

After wiring Trello directly into the game, I kept asking myself the same question:

From Side Scripts to Infrastructure: Making My Game Toolchain Usable by Other Humans

This is the companion to Claude Hit 100%, Codex Kept Going, and it is really about one practical question: can someone else sit down at this repo and get useful...

Claude Hit 100%, Codex Kept Going: The Week My AI Workflow Became a System

Last week I wrote about usage curves and cost in Claude Max vs Codex Max. This week felt different.

Tag trello

My First MCP: No More Manual Bug Tickets

This week I shipped my first MCP, and it solved a problem I was tired of pretending was small.

Should I Build My Own MCP for Trello? Yes, But Keep It Thin

After wiring Trello directly into the game, I kept asking myself the same question:

Claude Hit 100%, Codex Kept Going: The Week My AI Workflow Became a System

Last week I wrote about usage curves and cost in Claude Max vs Codex Max. This week felt different.

Tag mcp

My First MCP: No More Manual Bug Tickets

This week I shipped my first MCP, and it solved a problem I was tired of pretending was small.

Should I Build My Own MCP for Trello? Yes, But Keep It Thin

After wiring Trello directly into the game, I kept asking myself the same question:

Claude Hit 100%, Codex Kept Going: The Week My AI Workflow Became a System

Last week I wrote about usage curves and cost in Claude Max vs Codex Max. This week felt different.

Tag tooling

Internal Tools Are The AI Multiplier

AI does not reduce the value of internal tools.

My First MCP: No More Manual Bug Tickets

This week I shipped my first MCP, and it solved a problem I was tired of pretending was small.

Should I Build My Own MCP for Trello? Yes, But Keep It Thin

After wiring Trello directly into the game, I kept asking myself the same question:

From Side Scripts to Infrastructure: Making My Game Toolchain Usable by Other Humans

This is the companion to Claude Hit 100%, Codex Kept Going, and it is really about one practical question: can someone else sit down at this repo and get useful...

Tag infrastructure

From Side Scripts to Infrastructure: Making My Game Toolchain Usable by Other Humans

This is the companion to Claude Hit 100%, Codex Kept Going, and it is really about one practical question: can someone else sit down at this repo and get useful...

Tag collaboration

From Side Scripts to Infrastructure: Making My Game Toolchain Usable by Other Humans

This is the companion to Claude Hit 100%, Codex Kept Going, and it is really about one practical question: can someone else sit down at this repo and get useful...

Tag postmortem

What Did Not Work: AI Spin Loops, Identity Drift, and My Ben/Hiram Naming Debt

This is the uncomfortable companion to the other two posts from this run:

Tag automation

My First MCP: No More Manual Bug Tickets

This week I shipped my first MCP, and it solved a problem I was tired of pretending was small.

Tag leadership

Redefining Yourself In The Age Of AI

The biggest AI shift for me has not been technical.

I Built A Dashboard Because AI Limits Changed How I Work

I pay for the highest consumer-tier AI coding subscriptions I can justify.

AI Expands The Option Space. Taste Decides What Ships.

One of the best uses of AI is not doing the known work faster.

Managing AI Agents Like A High-Velocity Team

Running multiple AI sessions is not like having magic.

Internal Tools Are The AI Multiplier

AI does not reduce the value of internal tools.

The Leadership Skill AI Does Not Replace

One of my most productive AI weeks had zero commits.

Token Limits Reveal Organizational Debt

Token limits are usually discussed as a model constraint.

Scaling Output Without Pretending AI Is A Team

AI can make one person look like a small team.

AI Makes Verification The Management Layer

The first wave of AI coding feels like a writing-speed upgrade.

Tag engineering

Redefining Yourself In The Age Of AI

The biggest AI shift for me has not been technical.

I Built A Dashboard Because AI Limits Changed How I Work

I pay for the highest consumer-tier AI coding subscriptions I can justify.

AI Expands The Option Space. Taste Decides What Ships.

One of the best uses of AI is not doing the known work faster.

Managing AI Agents Like A High-Velocity Team

Running multiple AI sessions is not like having magic.

Internal Tools Are The AI Multiplier

AI does not reduce the value of internal tools.

The Leadership Skill AI Does Not Replace

One of my most productive AI weeks had zero commits.

Token Limits Reveal Organizational Debt

Token limits are usually discussed as a model constraint.

Scaling Output Without Pretending AI Is A Team

AI can make one person look like a small team.

AI Makes Verification The Management Layer

The first wave of AI coding feels like a writing-speed upgrade.

Tag productivity

Redefining Yourself In The Age Of AI

The biggest AI shift for me has not been technical.

I Built A Dashboard Because AI Limits Changed How I Work

I pay for the highest consumer-tier AI coding subscriptions I can justify.

Managing AI Agents Like A High-Velocity Team

Running multiple AI sessions is not like having magic.

Internal Tools Are The AI Multiplier

AI does not reduce the value of internal tools.

The Leadership Skill AI Does Not Replace

One of my most productive AI weeks had zero commits.

Scaling Output Without Pretending AI Is A Team

AI can make one person look like a small team.

AI Makes Verification The Management Layer

The first wave of AI coding feels like a writing-speed upgrade.

Tag quality

AI Makes Verification The Management Layer

The first wave of AI coding feels like a writing-speed upgrade.

Tag management

Managing AI Agents Like A High-Velocity Team

Running multiple AI sessions is not like having magic.

Scaling Output Without Pretending AI Is A Team

AI can make one person look like a small team.

Tag strategy

Redefining Yourself In The Age Of AI

The biggest AI shift for me has not been technical.

AI Expands The Option Space. Taste Decides What Ships.

One of the best uses of AI is not doing the known work faster.

The Leadership Skill AI Does Not Replace

One of my most productive AI weeks had zero commits.

Scaling Output Without Pretending AI Is A Team

AI can make one person look like a small team.

Tag systems

Tag tokens

I Built A Dashboard Because AI Limits Changed How I Work

I pay for the highest consumer-tier AI coding subscriptions I can justify.

Token Limits Reveal Organizational Debt

Token limits are usually discussed as a model constraint.

Tag architecture

Token Limits Reveal Organizational Debt

Token limits are usually discussed as a model constraint.

Tag judgment

The Leadership Skill AI Does Not Replace

One of my most productive AI weeks had zero commits.

Tag testing

Tag creativity

AI Expands The Option Space. Taste Decides What Ships.

One of the best uses of AI is not doing the known work faster.

Tag product

AI Expands The Option Space. Taste Decides What Ships.

One of the best uses of AI is not doing the known work faster.

Tag career

Redefining Yourself In The Age Of AI

The biggest AI shift for me has not been technical.