What I shipped in 2025
11 November 2025/1 min read
A year-end inventory, written early because December is a bad month for reflection and a good month for invoicing.
A network of local lead-generation sites. Five trades across the Jacksonville metro. Service pages, service-area pages, static delivery, and a voice agent behind each phone number that answers around the clock. The build is repeatable now. The first one took weeks, the fifth took days.
A county directory. Every business in Putnam County, cleaned and geocoded from public records, published as a searchable site with a map. Two hundred and sixty seven pages generated from data I had to assemble myself because nobody had.
A credit-repair product. Letter generators, round tracking, checkout, and the content layer feeding it. Also the canonical bug that had been hiding it, which I wrote about last month.
Client sites. A tutoring practice, a coatings business moved off a rented page builder, a travel writer.
What did not work.
I spent real time on a daily social posting automation that I have since turned off. It produced volume. Volume was not the constraint. Nobody was reading it because there was no reason to, and automating the publishing of things nobody wanted to read simply produced more of them faster.
I underquoted two projects by treating "add a blog" as a small line item. A blog is not a feature. It is a content model, an index, a feed, pagination, and a publishing workflow somebody has to actually use.
What I learned. The technical work is rarely the bottleneck. Three of the five most valuable things I did this year were finding a fault somebody else had shipped, or removing something that should never have been built. Nobody puts that on a portfolio, and it is most of the job.