Prototype big and/or complex methods on the natural language, write as you think, write all you think to not forget when you will start writing code. And then start coding. It helps you to avoid forgetting of something - when you started coding having clear enough plan in your mind, but something was going out of your head when you typed the code (there were so many holes, that some though in any case will slip away certainly).
I used this approach for a long time and recently found very similar one in the "Code complete". So, if earlier I thought that few people did it, now i can recommend it to use.