A Callbook for Everybody
This is the one I'm proudest of, because it's the clearest example of the whole "give it back" idea actually working.
If you're a ham, you look up callsigns constantly. Who's this new voice on the repeater? Who owns that call I just worked? When does my license expire? The data behind all of it is public — the FCC publishes the entire license database, for free, to anyone. It's the people's data. And yet the experience of actually using it online is often slow, ad-choked, or quietly nudging you toward a paid tier.
That bugged me enough to do something about it. The result is two free, no-ads sites: HamCore, a clean world callbook, and CarrierCore, the deeper cut that spans every radio service with real frequency and location data. Behind them sits a mirror of the full FCC database — roughly 79 million rows in PostgreSQL — that I keep synced daily.
"Just load the FCC data" is a trap
The naive version took an afternoon. The correct version took a lot longer, because the raw FCC files are a swamp, and I found out the hard way — by trying to look myself up and coming back empty.
Search for "Phillis" and it returned a handful of commercial operators, but not KD8MST. Not me. The ham with the callsign, the license, the data all sitting right there in the database. Turns out the field I was searching, the "licensee name," is blank for individuals — for a person, your name lives in a completely separate table you have to reach through a chain of ID numbers. My search had never been wired to follow that chain, so it was silently missing the vast majority of hams. Fixing it took coverage from about a fifth of licensees to nearly all of them.
That was just the first gremlin. A few of my favorites:
The renewal that hides everything. When the FCC renews a license, it issues a brand-new file number — but the technical records (frequencies, locations, antennas) stay keyed to the original callsign. Every one of my lookups joined on file number, which meant that for roughly a third of public-safety licenses, the detail page showed nothing licensed and nowhere in use. I checked a county fire frequency that should have had a dozen coordinated users and got zero. One query rewrite — join on callsign, not file number — and the missing third snapped into view.
The date nobody noticed was stale. My daily sync reported "success" every night for a week while grant dates sat a week out of date. The bug: the update statement simply forgot to include the grant-date column. Everything else refreshed; that one field quietly didn't.
My own GMRS call was invisible. Callsigns ending in 9 — like my GMRS license, WRUK599 — returned nothing. A subtle text-sorting quirk in the database index made the "starts with" search skip right past anything ending in a 9. I only found it because, again, I went looking for myself and wasn't there.
And a satisfying one to close on: after tuning the database and rewriting the searches to lean on proper indexes, a lookup that used to take three-and-a-half seconds dropped to about six milliseconds. Same data, same box — just stopped asking the computer to do the dumb thing.
Why give it away
Because the data was always yours. The FCC doesn't charge for it; I just tried to build the front door it deserved. No accounts required, no "upgrade to see this," and there's a free public API so other people can build on it too. If it saves you thirty seconds on a callsign, or helps you find the new ham down the street, that's the entire point.
There's a line in the project's own README that still sums it up best: built by one ham who got tired of the FCC website. That's rent paid, on a hobby I got for free.