I Built a Tool to Predict If My Next Side Project Will Ruin My Weekend

The Lie We All Tell About Time
When I worked at a digital agency, every new client came with a new team, a new mess of requirements, and the same damn question from the suits:
“How long will this take?”
I’d give an answer.
A good-sounding one. One that bought us time and gave them hope.
It never held up. We were always late.
I Don’t Have Time to Be Wrong Anymore
These days, it’s not project managers breathing down my neck.
- It’s my daughter asking for park time.
- It’s dinner with the people I love.
- It’s me - trying to cram another stupid project into an already overloaded schedule.
I still lie to myself. “Yeah, I can probably build this in an hour.”
Nope. I’m wrong. Again. I overpromise. Again. And I pay for it. Again.
I Want an Agent That Works for Me
I want local agents. Agents that work for me, not for some SaaS startup with a roadmap and an upsell.
But for agents to help me, they need data. They need my history. They need context about how I actually work - not how I think I work.
I did this with my expenses first. (See: AI-powered expense tracker)
Now I’m doing it with my time.
My projects. My pace
CodeChrono: Track. Learn. Estimate. Repeat.
It’s called CodeChrono.
-
start
begins a session -
stop
ends it and summarizes what I built using a local LLM -
estimate
lets me ask: “How long will this feature take?” -
A dashboard shows what I’ve built, how long it took, and whether I’m speeding up or slowing down
I run it all from the terminal.
“Faster, faster, until the thrill of speed overcomes the fear of death.”
— Hunter S. Thompson
I have a bias for speed. Speed isn’t recklessness - or at least, not always.
- It’s compressed feedback.
- It’s rapid iteration.
- It’s momentum.
But speed needs a mirror — something to reflect back whether you’re actually moving, or just spinning your wheels.
That’s what this tool is for.
My New Rules for Building Fast (and Staying Sane)
-
If a feature took 4 hours last time, it probably will again.
-
If a project took 2 weekends, I won’t squeeze it into one.
-
If my estimation pattern is trash, I’ll see it on the chart.
-
And if I’m getting faster, I want to know that too.
Run It Like You Mean It
python run.py start -m "build settings page"
# ...do your work...
python run.py stop
python run.py estimate -m "add payment flow"
python run.py query -m "What took the longest last week?"
streamlit run dashboard.py
Speed Needs a Mirror
I’m not trying to optimize every second of my life.
I just want to build the things I care about — as fast as I possibly can.
And now, I’ve got the data to back it up.