Ask HN: How do you go about planning your code?
An oft-repeated phrase I see on HN from time to time is something to the effect of "one should spend more time planning/designing/architecting/etc than writing code." The more experience I've gained, the more I've come to appreciate the wisdom in this.
My planning/designing/architecting is all pretty much pencil and paper. That's perfectly fine, but I'm wondering if I'm missing out better tools and workflows.
So, those who follow the above quote: How do you go about doing it? What tools do you use? What's your workflow like?