Do you fully design your programs before you start coding? Or do you simply sit down, start coding and then work your way from there?
I know with some large projects it can be a bit hard to simply start coding, because you don't really know where to start, so I have sometimes thought it would be easier if I simply designed it properly first, and then coded from the design, so I know exactly where I am.
What are you thoughts?
If you do fully design your programs before you code them, what methods do you use in designing them? Do you use some form of conceptual design, or do you list possible variables and functions and work your way around that?
Any details would be appreciated,