Starting a startup is always daunting. But, as someone who will one day be a the technical co-founder of one, it's hard not to feel daunted by the enormity of the technical task that will be in front of me. Algorithms, database design, version control, deployment environments, design patterns, etc. The list goes on and on. And this isn't even touching on the non-technical aspects of a startup.
Is there any way of knowing if I should spend time shoring up my programming/algorithm skills versus trying to launch right away? How do I know I'm a good enough hacker to start a startup? Are there any good rule-of-thumb metrics for figuring this out, or is this case where you don't know until you actually try?
Algorithms, database design, version control, and deployment are all important things (design patterns much less so), but they don't matter a whit compared to building something that someone will pay money for.
Stop procrastinating and get to work.