A few days after I built my video tool, I opened it again, not as the person who made it, but as someone seeing that wall of controls for the first time. It was overwhelming. So I did something that felt wrong at first and turned out to be the best move of the project. I started deleting.
The biggest cut was a dependency. My first version detected scenes using a separate scene detection library. It worked, but it was heavy in a specific way: it wrote intermediate data to disk as files, then I read those files back and parsed them. That meant extra installs, temporary files to clean up, and slower runs. My startup even had to check for it:
# the old dependency check, before I cut it
if not check_dependency("PySceneDetect", "scenedetect"):
sys.exit(1)
if not check_dependency("FFmpeg", "ffmpeg"):
sys.exit(1)
Here is the thing I realised: FFmpeg, which I already depended on for every other part of the tool, can detect scenes on its own. I did not need a second library to do a job my main tool already could. So I removed the scene detection package entirely and let FFmpeg handle it, which I will show in detail in the next post. After the cut, the dependency check was one line:
# after: FFmpeg is the only dependency now
if not check_dependency("FFmpeg", "ffmpeg"):
sys.exit(1)
Removing that library did more than shorten a list. It let me delete the temporary file writing, the file reading, and the parsing of those files, because the new approach worked in memory instead of on disk. A whole category of bugs, missing files, permission errors, leftover temp files, simply stopped existing, because the code that could fail was gone.
I cut features too. Half-used settings, output options I had added because they sounded professional, toggles I never touched. Every deletion made the tool a little easier to understand and a little harder to break.
A few things people ask me about this
How do you decide what to delete? I look for anything I did not use in real work, and any dependency whose job overlaps with a tool I already have. If FFmpeg can detect scenes, a second scene library is not pulling its weight.
Is it risky to remove a working library? Only if you do not have a replacement. I did not delete scene detection, I moved it to FFmpeg, which I already trusted, so I removed the dependency without losing the feature.
Next
Cutting the library left a hole where scene detection used to be. Filling that hole with FFmpeg directly, and parsing its output myself, is the next post.

