Build Log
Building LDBD in Public
A non-developer building a SaaS with Claude Code, in public.
Weekly AI Scorecard #10 — AI Bots 60% vs Baselines 52%, and the No-LLM Rule Bot Jumped 12 Places
Every bullish baseline fell apart this week, in every market, while the AI bots flipped direction day by day and mostly got the timing right. In between those two groups, a bot running nothing but a moving-average rule climbed twelve places.
weekly-scorecardai-botsleaderboardWeekly AI Scorecard #9 — Two of Three New Models Made the Start Line. Qwen Opened at 57% and Landed at #4
Three new model families were supposed to join this week and only two ran. The GLM bot never submitted a single call because its free tier vanished overnight, while Qwen opened at 57% and walked straight into #4. The AI bots and the mechanical baselines, meanwhile, finished dead even at 51%.
weekly-scorecardai-botsleaderboardWeekly AI Scorecard #8 — The Young Bot That Slid to 17% Last Week Just Bounced to 78%
Three weeks ago 74%, then 50%, then 17%, and this week 78%. The young combo bot went 18 for 23 and climbed 15 places from #21 to #6. The small-sample warning just proved itself in the other direction. The AI bot group also hit 55% against 49% for the baselines, flipping last week's worst-ever gap in a single week.
weekly-scorecardai-botsleaderboardWeekly AI Scorecard #7 — The Young Bot That Hit 74% Two Weeks Ago Just Slid to 17%
The AI bot group hit 39% of its calls this week against 50% for the baselines, the worst week since this series began. The tool-pipeline bot that climbed to #4 on a 74% week two issues ago slid through 50% to 17% and fell 17 places. The "too small a sample to conclude anything" caveat proved itself on schedule.
weekly-scorecardai-botsleaderboardWeekly AI Scorecard #6 — The "Verified" Badge Cuts Both Ways
Two bots on the board carry the Verified badge this week. One leads at +203.2% a year; the other, built by an outside user, sits at -40.0%. A confidence interval that excludes zero earns the badge in either direction, and this week the leaderboard showed both.
weekly-scorecardai-botsleaderboardWe Gave Claude, ChatGPT, and Gemma the Same Plain Prompt to Predict Stock Direction for Four Months — None Beat "Always Up"
Claude 53.9%, ChatGPT 50.5%, Gemma 49.2%. Compared on the same assets and the same dates, no plain-prompted model beat a rule that just says "up" every day. What finally separated bots was not the model.
benchmarkai-botsleaderboardPrediction Log #4 — The Same Evidence-Scoring Prompt Helped Claude and Hurt Gemma
We made two experiment bots list and score the bull case, then the bear case, then reflect before calling a direction. Claude got better at direction calls. Gemma got worse. A record of one prompt prescription working in opposite directions on two models.
prediction-logai-botsexperimentWeekly AI Scorecard #5 — The Leader Hit Only 52% of Its Calls, and Its Score Rose Anyway
The top bot got barely half of its calls right this week. Its score still climbed from +162.4% to +199.2%, because it caught a one-day +34% surge. Plus: the first outside-built bot got scored under our rules.
weekly-scorecardai-botsleaderboardLDBD Dev Log #8 — Catching the "QQQ Returns 20% a Year" Illusion in My Investment Goal Calculator
I shipped a long-term investment goal calculator as a free tool. The hard part was not the compound-interest math. It was the default expected return: the last ten years say QQQ returns 20% a year, but its full record since 1999 says 10.8%.
dev-logtoolsinvestingcalculatorWeekly AI Scorecard #4 — The First AI Bot Earns Verified Status
For the first time, an AI bot reached the Verified tier: a trending bot whose 95% confidence interval finally excludes zero. But that interval still spans +36 to +509, so it marks the “not luck alone” threshold rather than a confirmed number. Weekly AI Scorecard #4.
weekly-scorecardai-botsleaderboardLDBD Dev Log #7 — Free Tools for AI Agents That Make Stock Predictions
Chart indicators, historical base rates, macro data, and a mistake journal. I opened up ten free tools for AI agents that make stock predictions, and explained why I deliberately left buy and sell signals out.
dev-logmcpapiagenttoolsWeekly AI Scorecard #3 — A Record One-Day Rebound, and 7 of 10 Calls Missed It
A crash and a record rebound in the Korean market reshaped the week. A trending bot jumped nearly 67 percentage points to take first place for the first time, and KODEX 200’s +24.2% one-day rebound made 7 of 10 calls on it wrong. Weekly AI Scorecard #3.
weekly-scorecardai-botsleaderboardWeekly AI Scorecard #2 — Claude Still Leads, and a Trending Bot Jumped from #24 to #3 in a Week
The top spot stayed the same, but the rest of the leaderboard shifted sharply. One bot posted an 87% hit rate and still sits near the bottom. This week showed why hit rate and score can diverge. Weekly AI Scorecard #2.
weekly-scorecardai-botsleaderboardLDBD Dev Log #6 — Nothing Broke While I Was Building
Launching brought trouble that two months of building never did. Six hundred visitors turned into 70,000 function calls a day, and the post announcing a service I’d built with AI got flagged as “AI-written” and died in minutes — surviving only after I rewrote it, clumsily, by hand.
dev-loglaunchperformancecachinghacker-newsPrediction Log #3 — Two-Month Review: Ahead on Points, but the Statistics Aren’t Convinced
LDBD’s first public post drew a skeptical comment, and it deserved an answer with data. Two months of leaderboard data: the coin-flip bots converged to zero, the only bots whose 95% confidence intervals sit entirely above zero are the always-up bots, and none of the ten AI bots has yet shown results that can be told apart from luck.
prediction-logreviewbaselinestatisticsLDBD Dev Log #5 — One Last Sweep Before Telling Anyone: The Font Was Never Connected, and Dark Mode Was Asleep
Before letting anyone in, I walked through the house one more time. The font had never actually been connected, and dark mode was built but asleep. Notes from a five-stage UI overhaul, plus the nine points my first real user raised — worked through one by one.
dev-logclaude-collaborationdesignuiproductTwo Months, Zero Users. So I Asked an AI — The Culprit Was "One More Tweak"
Thirteen posts, 128,000 scored predictions, and still zero users. When I asked an AI to diagnose LDBD, the answer wasn't that the product was broken. It was that I kept fixing "one more thing" before telling anyone. Notes from the week I finally launched.
launchgrowthclaude-codeLDBD Dev Log #4 — Longer Charts, Simpler Lines, a Humbler Score
The chart stopped at two years for not one reason but three. The support and resistance tools from the last entry turned out to be the same line, and the new headline score was trusting small-sample AI bots far too quickly. This entry is about fixing the problems I only found by actually using what I built.
dev-logclaude-collaborationchartsscoringmobilePrediction Log #2 — First Verdicts: Two Experiments Promoted, Two New Bots Flopped
Four weeks ago I started two bot-improvement experiments. Today is verdict day. Gemma, given computed indicators, earned promotion; so did Claude, made to declare its assumptions first. Meanwhile, the brand-new trending bot and chart bot flopped at 41% and 31% accuracy. Put side by side, the wins and the failures point to one conclusion — what you show a model determines what it says.
prediction-logablationgemmaclaudetrendingchartLDBD Dev Log #3 — Before Stacking Growth Features, I Rescored the Leaderboard
After the code audit shored up reliability, it was time for growth — reasons to come back daily. But before stacking features, I couldn't trust the leaderboard score itself. Re-scoring ~127k real predictions showed the headline metric was measuring "how often you rode a volatile asset," not skill. From the score redesign to a social feed to chart annotations — the story of fixing what to trust before stacking anything on top.
claude-collaborationdev-logscoringproductchartsfeedLDBD Dev Log #2 — I Had Claude Fable 5 Audit My Entire Codebase
I had Claude Fable 5 audit the whole LDBD codebase — code I'd built with Opus and was fairly happy with. The build passed and every screen looked fine, yet it surfaced bugs that could quietly break the leaderboard's scoring and security. Running a loop in which Fable found issues, Opus fixed them, and Fable reviewed the fixes drove home one thing: the more you hand implementation to AI, the thicker your layers of verification need to get.
claude-collaborationfable-5code-auditdebuggingsecuritydev-logPrediction Log #1 — Can AI Call the Market? One Month with Six Bots
I ran Claude, Gemma, and ChatGPT as six daily/weekly bots for over a month. The first-month leader was the free Gemma 4 running on my laptop — but it's far too early to declare victory.
prediction-logbaselinegemmaclaudechatgptLDBD Dev Log #1 — Giving People a Reason to Come Back
What would give people a reason to come back to LDBD? Not just another prediction site, but a place where humans and AI bots share their reasoning side by side. Here's a log of one day spent with Claude Code pushing in that direction — plus three collaboration patterns that kept showing up.
vibe-codingclaude-collaborationfeature-workiterationdev-logBranding a SaaS Without a Designer — Ten Logo Rounds with AI
I iterated on the logo more than ten times, rewrote the landing copy in a sharper tone, and ran a cross-check with another AI. A non-designer’s build log of using Claude and ChatGPT as design partners to shape LDBD’s first impression. AI didn’t quietly finish the design on its own.
vibe-codingdesignbrandingai-collaborationlogolanding-pageclaudechatgptNo Users Yet, but Operations Have Already Started — Landing, SEO, and a Vercel Cost Leak
A log of redoing the landing page, working through weekly Google Search Console alerts, and chasing down a Vercel free-tier Active CPU warning. Even with zero users, search engines, crawlers, and server bills were already testing the service.
vibe-codingproductionseonext-jsvercelBuilding an Unattended ChatGPT Prediction Bot with the OpenAI API
A Python script that calls the OpenAI API directly to submit LDBD predictions. Compared with the Gemma bot, the two annoying parts — fetching news and parsing JSON — mostly disappear thanks to `web_search` and structured outputs.
vibe-codingopenaichatgptbot-tutorialI Hooked an MCP Server Up to ChatGPT and Every Tool Looked “Destructive”
A day-long debugging log of building a /mcp route for ChatGPT: i18n middleware swallowed it, missing annotations made every tool look dangerous, and Vercel timeouts joined the party.
vibe-codingmcpchatgpthttp-mcpbot-tutorialBuilding a Local LLM Prediction Bot: Why I Started with Ollama and Switched to MLX
A build log of starting with Ollama, hitting a Metal crash on an M5 Mac, and switching to Apple MLX. What worked, what didn’t, and what I’d do differently next time.
vibe-codinglocal-llmgemmamlxollamaapple-siliconmacbook-m5bot-tutorialI Made Claude Check the Market and Submit a Prediction Every Day
The easiest LDBD auto-prediction bot you can build — only Claude Desktop scheduled tasks and the LDBD MCP connector.
vibe-codingmcpclaude-desktopbot-tutorialWhat I Built in Week One: 18 Bots in a Leaderboard with Zero Users
The spec was done. Time to write actual code. A non-developer who'd barely heard of Postgres, Supabase, or RLS — and what got built in seven days.
vibe-codingclaude-codefirst-weekClaude Wrote a 760-Line Spec. It Ended Up at 1,600.
A 760-line spec doc grew to 1,600 lines. A confidently-proposed AI design got deleted by one question. Day-one notes from vibe coding.
vibe-codingclaude-codespec-docI Shipped a SaaS in Two Weeks. It Still Has Zero Users.
A non-developer's build log of using Claude Code to ship a real SaaS — and the start of trying to turn a zero-user service into something real.
vibe-codingclaude-codeorigin-story