Shipping My First Real Software
Two months ago I started building PunchVault. It's the first time in my life I've written real code — not a landing page, not a tool stitched together with no-code, not a chatbot running off somebody else's API. An actual product that has to work for people who aren't me.
Before PunchVault, I had built websites and messed with AI — small, low-stakes stuff. Nothing that would survive a real user. Nothing that would care if it broke at 2am. I knew there was a wall between building with tools and building the tools, and I hadn't crossed it.
The first three weeks were spent building the wrong thing. I started with a mobile app because that's how I pictured users would actually use it. Three weeks in I realized I'd been working on the tail end of the problem. The software has to exist first. The app is the window, but there's no point in a window with nothing behind it. I ripped it out and started over. Expensive, but non-negotiable.
The first moment it felt real was when I got QuickBooks integration working. Not because it's a flashy feature — because it was the first time I'd built something I couldn't bluff my way through. API keys, webhooks, schemas that had to match on both sides. Either it worked end-to-end or it didn't. When it did, I realized I was actually doing this.
The hardest part hasn't been the code. It's been designing for people who aren't me. A platform that only makes sense to a GC is a failure — it has to hold up for the foreman opening his phone on site, for the estimator doing bids after dinner, for the electrician who uses it once a month and needs to find an invoice fast. Empathy is the real skill. Code just has to obey you. People don't.
I learned something about myself in the process. When I care about what I'm building, 12-hour days aren't a grind — they're the default. I don't need accountability. I don't drift. I just work. That kind of focus only shows up when the work is actually mine, which makes me trust even more that this is the path.
PunchVault is in closed beta now. Real users, real feedback, going live at the end of the month. It's the first time I've had people waiting on something I built. That weight is different from anything else I've ever carried.
This will be the first of many. I know that now.