We get hung up on how we make something when we could just be making it.
What's really important is what you shipped. How you accomplished this feat is influential in getting the thing shipped, sure. But the "how" can also get in the way.
When taught silver-smithing by his mom, Richard Garriott wasn't phased that he didn't know how to make a clasp to complete a necklace. He finished the silver snake pendant anyway, and he's worn it since age 11. He said:
It is permanently attached because, since it was the first thing I ever made, I didn't know how to make a clasp. A clasp is actually a fairly advanced item. I've still never made one.
He's now 56, and the silver snake is a prized possession. It's worked well so far, right?
New developers get stuck doing nothing. We want someone to show us the "right" way to do it. We fret that until this is revealed, the code we ship will not be worthy.
Old developers get stuck doing nothing. We wax poetic about patterns. We discuss at length the best or most appropriate methods, endlessly weighing pros and cons.
This is meta work. It's easy to get stuck here. It's easy to procrastinate here. I deal with this every morning.
Just start! Through moving, you'll find -- you'll make! -- a way to enjoy the journey.
Don't be a Bilbo. If you too stay home, stewing with your ring, you too may soon be scraped over too much bread.
We Have Preferences
It's no surprise that developers are fraught with opinions. These opinions are useful to us at times. We should allow them and follow them inasmuch as they enable our productivity. We should distance ourselves from them inasmuch as they prevent us from acting.
When using our opinions to categorize languages, conventions, frameworks patterns and other preferences to our liking and supposed betterment, we need not impose them on others, thus slowing their momentum.
Sharing? Yes, when appropriate. Imposing? Who would actually do that? But shared opinions can start to feel like impositions given the degree of force, length, or type of attitude used in the sharing.
Making and Doing
We could spend more time making things. We can stop bikeshedding with ourselves or others and get to work.
What do you do to get out of analysis paralysis and make the thing you want?