I have a habit of getting annoyed by something, then spending way too many hours building a tool to fix it. The Classical Music Metadata Tagger started because I had hundreds of FLAC files with garbage metadata and wrong filenames. Instead of fixing them manually, I built an AI-powered tagger that does it automatically.
The approach is always the same: identify the pain point, research if someone already solved it (they usually haven't, at least not the way I want), then build something that handles my specific use case perfectly. The goal isn't to ship something for others, it's to make my own life easier. If it happens to be useful to others, cool.
The Process
Identify the Pain Point
Something annoys me enough that I start thinking about solutions. Usually involves repeating the same manual task more than three times.
Research Existing Solutions
Quick search to see if someone solved this already. Usually they did, but not quite right, or it costs money, or it's abandoned. Time to build my own.
Spike the Hard Part
Before building anything real, test if the core idea is even possible. For the music tagger, this was: can AI actually parse messy classical music filenames correctly?
Build the Core Logic
Get the main functionality working without any UI. Just functions that do the thing. For the tagger: parse filename → call AI → extract metadata → write to file.
Add a Proper Interface
Once it works, make it nice to use. Rich TUI for interactive mode, clear progress bars, colorful output. A good CLI should feel satisfying to run.
Handle Edge Cases
Files that aren't what they claim to be. API errors. Weird filenames with special characters. This is where most of the debugging time goes.
Add Convenience Features
Dry-run mode so you don't destroy your files. Backup original files before converting. Auto-approve mode for when you trust the AI. The little things that make it production-ready.
Tools & Technologies
Explore more