How to Ship a Simple Feature in Two Months

| programming | python |

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 mastodon or via email.

Check out some more stuff to read down below.

Most popular posts this month

Recent Favorite Blog Posts

This is a collection of the last 8 posts that I bookmarked.

Articles from blogs I follow around the net

Today in heavy-handed metaphors

Sam Altman is the owner of a massive, invasive, parasitical toxic sludge that respects no boundaries and ruins everything it touches, and that he thinks someone else should clean up. Also his new house has mold. OpenAI CEO's $27 million San Francisco ma…

via jwz July 19, 2024

Weeknotes: GPT-4o mini, LLM 0.15, sqlite-utils 3.37 and building a staging environment

Upgrades to LLM to support the latest models, and a whole bunch of invisible work building out a staging environment for Datasette Cloud. GPT-4o mini and LLM 0.15 Today's big news was the release of GPT-4o mini, which I wrote about here. If you build ap…

via Simon Willison's Weblog: Entries July 19, 2024

ESM3: A simplified primer to the model's architecture

A short primer explaining the architecture of the ESM3 model

via Emmanuel Blogs July 18, 2024

Generated by openring