The Public Ledger

How federal money actually moves — appropriation to outlay — explained in plain English by a working federal budget analyst. Public data only, every figure cited.

Filter:

Teaching the Federal Budget in 48 Steps

Eleven modules, 48 narrated steps, one data spine: the training program that ties the whole portfolio together — what each module teaches, how every number is frozen and self-tested, and how to work through it.

September 12, 2026 · 3 min · 592 words · Joanna Broderick

The Same Data, Three Tools: Power BI, dbt, and DuckDB

One frozen snapshot of federal budget data through three modern stacks: a diffable Power BI model in TMDL, a dbt + DuckDB warehouse with 82 tests — and the five things the tests caught in real data.

September 12, 2026 · 3 min · 594 words · Joanna Broderick

A Copilot That Says No

A natural-language-to-SQL copilot with no LLM in it: a deterministic router, 40 pre-approved SELECTs, results frozen at build time, and a refusal taxonomy — out-of-scope, untracked-agency, injection, and more, each with a named reason.

September 12, 2026 · 3 min · 601 words · Joanna Broderick

Did CBO's Baseline Age Well?

Three published vintages of CBO’s 10-Year Budget Projections checked against the actuals CBO later reported: receipts +$197bn above baseline, the deficit $162bn smaller — if you know which rows are forecasts and which are restatements.

September 12, 2026 · 3 min · 476 words · Joanna Broderick

An Honest Backtest: Projecting a Fiscal Year-End Two Ways

Linear continuation vs. damped Holt-Winters, walked forward over 36 held-out periods. The winner’s margin is thin enough that a library convention flips it — so the page shows both methods and says so out loud.

September 12, 2026 · 3 min · 457 words · Joanna Broderick

What a Sequester, a CR, and a Lapse Do to the Money

The flow simulator follows a real appropriation — budget authority to obligations to outlays, month by month — and lets you pull the levers. Real data, frozen, with a scenario engine that applies each lever in a fixed, documented order.

September 12, 2026 · 3 min · 550 words · Joanna Broderick

Six Macros for the Monthly Close

A budget workbench in Excel: four template workbooks, six VBA macros for reconciliation, variance, and the close checklist — plus Python twins of the two computational macros so every number reproduces headlessly.

September 12, 2026 · 3 min · 612 words · Joanna Broderick

Putting the Federal Budget in a Database

USAspending, Treasury, and FRED — no API keys, one SQLite file, 46,042 rows, and an audit trail for every call. The spine the rest of my portfolio runs on, and the three things the public data got wrong along the way.

September 12, 2026 · 4 min · 693 words · Joanna Broderick

Why This Blog Exists

I’m a federal budget analyst. This is where I explain how federal money actually moves — from public sources only, every figure cited — and where I document building that analysis with the modern data stack.

September 11, 2026 · 3 min · 467 words · Joanna Broderick