How to Ship a Simple Feature in Two Months
I started working on a feature to allow users to remove notebooks in Braindump two months ago. What started as adding an additional link and a corresponding flask endpoint to handle the deletion has turned into a horrible long running branch that I have no idea how to get out of. This is a common trap that I fall into, and I have seen other developers struggle with the same issues.
Scope
Add a Feature to allow users to remove notebooks.Implementation
Easy Peasy, here is a link to delete notebooks. Ship it.Side Tracking
Well, while we are here, maybe we should use the new "card" style that is hip now. Hmm, wait, this looks stupid in purple. Let's make it blue. The cards look great, lets make the rest of the site blue as well. Ok it looks awesome in blue. Have not looked at CSS in a while, maybe we should refactor it, switch to SASS and concatenate all of the CSS into a single file. Oh crap, doing this breaks the outer theme compared to the inner theme since they were defining rules for the same elements. No problem, I will just rewrite the whole UI again.30 commits later
What problem was I trying to solve again?Conclusion
This is actually what happened. No matter how many times I tell myself I will never fall into this trap again, I keep on doing it. Next time will be different. In any case, the new notebook view looks good and allows you to delete notebooks. I hope to have this shipped this year.Thank you for reading! Share your thoughts with me on bluesky, mastodon, or via email.
Check out some more stuff to read down below.
Most popular posts this month
- SQLite DB Migrations with PRAGMA user_version
- Lev Lazinskiy
- Edge Detection with Inkscape
- Spring Security, Webjars, and MIME type error
- Terminal RSS Reader With Nom
Recent Favorite Blog Posts
This is a collection of the last 8 posts that I bookmarked.
- Deeper dive: Were Touch Bar’s problems software rather than hardware? from Unsung
- Joining Cursor from Fatih Arslan
- Pluralistic: Digital sewer socialism (08 Aug 2026) from Pluralistic: Daily links from Cory Doctorow
- Pluralistic: Enshittification and Reverse Centaurs go global (29 Jul 2026) from Pluralistic: Daily links from Cory Doctorow
- AI Mania Is Eviscerating Global Decision-Making from Ludicity
- The default person from https://popagandhi.com/
- No-One Escapes the Permanent Underclass from Fernando Borretti
- Is it ethical to use AI? from charity.wtf
Articles from blogs I follow around the net
Recently
I skipped August's Recently because this summer has been relentless, mostly in the positive sense. July and August were filled with bike rides, 5K races, friends in town, life changes and logistics.For a friend's birthday, we rode the rickety Coney Island...
via macwright.com September 1, 2026The Swiss Cheese model, pt. 3
After two more serious posts in this series, I wanted to stop somewhere a bit more lighthearted and inconsequential. “Here’a a fun thing you can try,” begins this 13-minute video from Retro Game Mechanics Explained: The premise of the parlor trick the vide...
via Unsung August 31, 2026My Experience Has Nuance, Yours Is a Data Point
Eric Bailey has a fun little post about how we need more than a few icons to express the nuance of our shared human experience. For example, he suggests Netflix provide some feedback buttons to indicate the kinds of experiences we all share consuming and r...
via Jim Nielsen’s Blog August 31, 2026Generated by openring