I Was a Burnt-Out Marine. Python 2.7 Changed My Life.

My first lines of code were terrible. They were also the most important I’ve ever written.
In late 2016, I hit a wall. For eleven straight years, I had been running at full tilt. After receiving my commission in the Marine Corps in 2005, I did two tours in Iraq, served as an Operations Officer for a recruiting station, and then, without taking a breath, jumped directly into the chaos of the Eagle Ford Shale oil boom.
I was burnt out. More importantly, I was a father to two-year-old twins I barely knew. So I did something that felt both terrifying and necessary: I quit. I cashed out my chips, walked away from a lucrative career, and became a stay-at-home dad.
It was the best, and hardest, job I’d ever had. After a few months of family trips and rediscovering what it meant to be present, the familiar itch returned. It wasn’t the itch for a job, but for a mission. I’ve always been driven by the process of taking large, messy amounts of information and distilling them into actionable intelligence. It’s what you do as an officer in a combat zone, and it’s what you do in corporate strategy. I figured it was time to learn how to do it beyond the limits of an Excel spreadsheet.
My search led me to Python. But learning for the sake of learning has never been my style. I needed an objective.
Serendipitously, the 85th Texas Legislature was kicking into session. Being a veteran from a Texas military family, I’ve always been passionate about veteran affairs. The mission crystallized: Could I, with zero programming knowledge, build a system to monitor all legislative activity related to Texas veterans?
That’s how my journey into technology began. Not in a classroom or a bootcamp, but with a clear objective and a clunky, old version of a programming language: Python 2.7.
My First Tech Stack: Brute Force and Ignorance
When you don’t know what you’re doing, you build things that are beautifully, wonderfully inefficient. But you also build what works.
My goal was to get the text of every single bill and daily journal from the Texas Legislature’s website, save them as local files, and then search those files for the keyword “veteran.” The website was a labyrinth of early 2000s HTML — a perfect unstructured data problem.
My tool of choice was BeautifulSoup. My method was pure brute force.
I wrote a script, texbills.py, that was essentially one giant for loop. It painstakingly constructed URLs by hand, padding bill numbers with the correct number of zeros, and appending different suffixes for each version of the bill (I for Introduced, H for House Report, etc.).
It was ugly. It was slow. It broke constantly. But when it worked? It was magic. I watched a folder on my computer slowly fill up with thousands of text files, each one a piece of legislation I had captured. I had created data.
The next step was to search that data. Another simple script, bill_keyword_search.py, looped through every file in the directory, opened it, and checked if the word “veteran” was inside.
I’ll never forget the first time I ran it and saw this in my terminal:
hb0123I.txt=veteran
hb0456I.txt=veteran
I had done it. I had taken the chaos of the public record and filtered it down to a signal that mattered to me. It felt more powerful than any spreadsheet I had ever built.
The Real Lesson Wasn’t About Code
Looking back at that collection of messy Python 2.7 scripts, I realize the most valuable skill I learned had nothing to do with syntax. It was about a mindset.
A Mission is the Best Teacher: I didn’t learn Python; I learned how to solve my problem with Python. The mission was the engine, and the code was just the vehicle.
Embrace the Grind: The process was 90% frustration. HTTP errors, encoding issues, parsing gnarly HTML tables. But that struggle is what builds real competence. You don’t learn from the code that works; you learn from the code that breaks.
Structure from Chaos: The core of that project was taking unstructured, human-readable information and imposing a machine-readable structure on it.
That last point is everything. It’s the throughline from that first passion project to the company I’m building today.
We’ve graduated from Python 2.7 to a modern, asynchronous stack with FastAPI. We’ve replaced BeautifulSoup with Google’s powerful Gemini AI. But the fundamental mission is identical. We’re still taking unstructured, chaotic data — in this case, thousands of different food service invoices — and transforming it into clean, structured, actionable intelligence for the culinary industry.
The battlefield has changed, from legislative halls to restaurant kitchens. But the fight remains the same: find the signal in the noise. And it all started because a burnt-out Marine needed a new mission.