A Roth vs Traditional 401k Calculator for Your Whole Career

I built a Roth conversion optimizer because retirement is the phase I’m in. That sounds reasonable until you notice what it leaves out: by the time anyone needs a conversion plan, the big decision (traditional or Roth, every paycheck, for decades) has already been made. So I built the piece I was missing: a Roth vs traditional 401k calculator that optimizes the working years and the retirement years together, as one plan.

It’s free and needs no signup. You enter your salary, when you plan to stop working, what you spend, which accounts you have, and how your employer matches. It tells you how much to put in each account this year, and every year after that.

Roth vs traditional 401k calculator results: this year's split between Roth 401(k) and Roth IRA, and the optimal mix compared with always-traditional and always-Roth
The sample plan: this year’s split, and what the optimal mix is worth against the two defaults.
Continue reading “A Roth vs Traditional 401k Calculator for Your Whole Career”

How to Make an Employee Schedule in Google Sheets

If you search how to make an employee schedule in Google Sheets, you’ll find a hundred templates: names down the side, dates across the top, colored cells. That works fine for a small team on weekdays. It falls apart the moment you run 24/7, with nights, rest rules and people who can’t work certain days. Now you’re counting cells by hand at 11 PM. So I built a free Google Sheets add-on, Shift Optimizer, that fills the schedule for you with a real optimization solver, right inside your sheet.

Below: the manual way first (it’s worth knowing, and for some teams it’s all you need), then the add-on, how I built it, how it’s going so far, and what’s next.

Continue reading “How to Make an Employee Schedule in Google Sheets”

AI Staff Scheduling in Claude: A Free Solver Connector

Most “AI staff scheduling” tools I tried do one of two things: they let a chatbot write a schedule that looks right and quietly breaks your rules, or they put a little AI button on top of a calendar you still fill in by hand. I wanted the opposite: you describe your team to an AI assistant in plain words, and a real optimization solver builds the roster, with the rules treated as rules. So I built a free connector for Claude that does exactly that. It’s called Shift Scheduler, there’s no signup, and it has been in the Claude directory since late September.

This post covers how to use it, how I built it (and what I broke along the way), what the first month of use looks like, and what I’m changing next.

Continue reading “AI Staff Scheduling in Claude: A Free Solver Connector”

AI Route Optimization in Claude, Free: My MCP Server

AI route optimization usually means a paid app with a sales call and a “per driver per month” price. What I built is smaller and weirder: a free connector that lets Claude plan multi-stop delivery routes for you, with a real solver behind it, no account and no signup. You type “plan tomorrow’s deliveries for my 3 vans” in a chat, paste your addresses, and get back routes, arrival times and Google Maps links. It’s called the Fleet Route Optimizer, and it has been live in the Claude directory for about a month.

This post does a few things at once (I tried to split it and it kept coming back together): how to use it, how I built it, what the usage log says after the first month, and what I’m changing because of it.

Continue reading “AI Route Optimization in Claude, Free: My MCP Server”

One Scratched Winger Was in 29% of My NHL DFS Lineups

On October 16 a single DFS late scratch sat in 29.1% of the NHL lineups I had built for a two-game slate. Egor Chinakhov, a $4,100 Penguins winger, was ruled out about 25 minutes before puck drop, and my Frozen Tools set had him in 134 of its 461 lineups. In the real DraftKings contests, 1.6% of entries had him. I have since rebuilt the night without him, checked four other nights, and added a “Check late news” button to my NHL lineup optimizer and the other three sports. The surprise is how little removing him changed.

Continue reading “One Scratched Winger Was in 29% of My NHL DFS Lineups”