For the penultimate T-SQL Tuesday invite of 2024, Josephine Bush asks for our thoughts on the question: how to handle perfectionism. This is something I’ve struggled with off and on. In some areas I’m good with identifying good enough. With others, I keep coming back again and again…and again (like with this blog post with its multiple revisions).
To read the full invite, click the T-SQL Tuesday logo.
Call a Timeout
Sometimes, the best way to make progress on what you’re trying to perfect is to walk away for a bit. Rather than grinding it out hunched over in your chair and putting yourself in physical pain to go with the mental stress, get up and take a walk. As the weather cools in Ohio, sometimes the bitter cold of a walk outside outweighs the benefits of the break away from the computer. In that case, I take a walk around the house or take some time to get a drink.
If whatever it is you’re working on isn’t too urgent, another option is to sleep on it. That doesn’t mean spending all night brainstorming and jotting down ideas in your favorite notes app for tomorrow. Do your best to forget about it for awhile and return fresh the next day.
There are plenty of times where I’ve come back to something and, being less stressed, realized I was overthinking it and what I had was already good enough.
Consider Quantity Over Quality
For some projects, I would take completing two successful projects over one perfect project. Imagine you start your afternoon with a query that’s taking thirty seconds to run and needs optimized to complete in three seconds. After an hour, you have it at the three-second mark. But wait—you think you can improve it further by optimizing an index and rewriting a stored procedure. After another hour of work, you’ve reduced the logical reads, and the query now completes in…two seconds.
Is anyone else besides you going to care about that extra second? Would it matter more to someone if you got that separate task done today rather than later this week? I’m going to guess “yes.” It’s important to hold your work to a high standard, but keep in mind that your standards may be way higher than what’s necessary to meet the needs of others.
Another example would be blog posts. I may start a post one day, do some more work another day, and go through a few days, which count as a few drafts. If I want to reach my goal of new blog posts, I have to decide that a post is ready to publish and it’s time to move onto the next one. If I tirelessly worked to make every blog post “perfect,” there wouldn’t be many posts.
Perfection is an Illusion
Think of it like code you look back on years later. You look back and find flaws. You wonder what in the world you were thinking. But even if you’re not 100% satisfied and know it was far from perfect, was it a success at the time? Did it still meet a goal? We’ll always find things we wish we had changed, but that doesn’t mean something was bad. It was good enough.
Thanks for reading!

One thought on “T-SQL Tuesday #180: Good Enough is Perfect”