I'm going to tell you exactly what happened today. Not a hypothetical. Not a "what if AI could do this" thought experiment. This is what my AI assistant Norm and I actually built, broke, fixed, and shipped โ in one day.
I was a database engineer for over 24 years. I've written more SQL than most people have written emails. I've migrated databases at 2 AM with a coffee in one hand and a prayer in the other. I know what this work costs โ in time, in money, and in sanity.
What Norm does as my assistant has saved me hundreds of hours and thousands of dollars. Today was a perfect example.
The Migration That Paid For Itself
I run a recipe app called SnipDish. It was hosted on Supabase โ authentication, database, the full stack. Supabase is great, but the Pro plan costs $34/month. For a side project trying to find its legs, that's real money bleeding out every month.
I told Norm: migrate everything to Railway.
Here's what that actually involved:
- Writing a complete Prisma schema from scratch, mapping every table โ users, recipes, usage counters, auth sessions
- Ripping out Supabase Auth entirely and replacing it with Auth.js v5 โ Google OAuth, email/password, the works
- Discovering that Prisma can't run on Next.js Edge runtime (the middleware layer), diagnosing the error, and switching to JWT session strategy instead of database sessions
- Rewriting 27 files โ middleware, API routes, React hooks, page components, the signup flow, the login flow, Stripe webhook handlers
- Exporting every recipe from the old Supabase database and importing them into Railway Postgres
- Pushing to GitHub, letting Railway auto-deploy, and testing every flow end-to-end
That JWT edge runtime bug alone? That's a 3-hour Stack Overflow rabbit hole for most developers. Norm caught it, diagnosed it, and fixed it in the same commit.
Total time: about 2 hours.
If I hired a freelance developer to do this migration โ someone who actually knows Next.js, Auth.js, Prisma, and Railway โ I'm looking at $2,000-$3,000 minimum. And that's if they get it right the first time, which they wouldn't, because that Edge runtime bug isn't in any tutorial.
I canceled Supabase tonight. Railway costs about $5-8/month. That's $26-29/month saved, or roughly $312-348/year back in my pocket. The migration paid for itself before the month is over.
The Website Overhaul (While the Migration Was Running)
While SnipDish was being migrated, Norm was simultaneously rebuilding our web design studio site, On Point. Not a tweak. A real overhaul.
What got done today:
- Rebranded the entire site โ every reference to our old location updated across every HTML file, every JS file, every blog post
- Renamed every CSS class still carrying the old brand name โ hundreds of lines across stylesheets and templates
- Stripped 6 unused font families that were killing performance. The site was loading Silkscreen, Press Start 2P, Archivo Black, Clash Display, Cabinet Grotesk, and General Sans โ fonts from old designs that nobody deleted. First Contentful Paint dropped from 3.1 seconds to under 1.5
- Built a dynamic audit CTA โ when a potential client runs our free website audit, the results page now generates a personalized paragraph based on their actual Lighthouse scores. Slow site? It tells them "53% of mobile visitors leave after 3 seconds" and explains exactly what's wrong. Good scores? Different message. Their name auto-fills from the audit form into the contact form. Zero friction from "your site has problems" to "let's fix this."
- Populated the blog index โ 10 blog posts existed in the folder but only 1 was showing on the blog page. The JSON index just hadn't been updated.
A web agency would charge $1,500-$2,500 for a performance audit + content migration + CTA optimization like this. We did it between other tasks.
The Trading Bot That Stopped Losing Money
I run a bot that trades weather prediction markets on Polymarket. It was losing every single trade โ 0% win rate across 16 resolved positions. It was buying penny contracts on longshot weather outcomes, betting 2 cents that tomorrow's high would be exactly 87ยฐF when every forecast said 72ยฐF.
Norm rewrote the entire strategy:
- New "Peak Bucket" approach โ only buy contracts near the forecast consensus
- Minimum entry price of $0.20 (no more penny lottery tickets)
- Added NO trade support โ fade overpriced tails instead of just buying YES
- Requires model consensus across multiple weather sources
After the rewrite: 11 new trades placed, entry prices between $0.54-$0.82, all with calculated edges of 15-41%. We went from gambling to actual probability-weighted trading.
The Tools We Built Along the Way
When I said I wanted a daily planner I could pin to my sidebar, Norm built one. Dark theme, project dashboard, calendar view, desktop notifications, scheduled reminders. Took about 5 minutes. It auto-syncs with our project data every morning via a cron job.
When Cody (my business partner) noticed our website audit tool wasn't sending emails, Norm diagnosed it instantly โ the lead capture was just a console.log with a TODO comment. We added the personalized CTA system instead, which is worth more than a simple email receipt anyway.
When I said the blog post header text on SnipDish had bad contrast on coral backgrounds, Norm fixed it, pushed it, and Railway auto-deployed it. Under 2 minutes from complaint to production.
The Real Numbers
Here's what today actually cost and saved:
- Supabase Pro canceled: -$34/month ($408/year)
- Railway Hobby plan: ~$5-8/month
- Net infrastructure savings: ~$312-348/year
- Equivalent freelancer cost for today's work: $4,000-6,000
- Hours of work compressed: 20-30 hours into one afternoon
- My actual effort: Describing what I wanted, reviewing results, and saying "push it"
Why This Is Different
I'm not talking about asking ChatGPT to write an email. I'm talking about an AI that:
- Knows my entire codebase โ every file, every function, every config
- Remembers decisions from weeks ago and why we made them
- Writes production code that actually deploys and works
- Manages git, pushes to GitHub, and triggers auto-deploys
- Runs cron jobs to keep blogs updated, data synced, and bots monitored
- Documents everything so future-me (or future-Norm) isn't lost
I spent 24 years doing this work the hard way. Writing migrations by hand at 2 AM. Debugging auth flows for days. Manually updating content across 15 HTML files when a brand name changed.
Norm does all of it. Not perfectly every time โ sometimes I have to say "that's wrong, fix it" or "make the text bigger, I'm practically blind." But the iteration cycle is minutes, not days.
My monthly tech bill went from $289 to $260 today. I shipped more than most dev teams ship in a sprint. And I didn't mass produce by copy and pasting slop โ everything we built today was custom, tested, and live in production before dinner.
That's not a toy. That's a business partner.
Norm and I build in public. Follow along at jakemakesai.com or @jakemakesai on TikTok.