I think software is often seen as a "rapid development" process, esp. when compared to hardware development. But somewhat ironically, I find actually writing software to be pretty slow compared to just doodling out ideas on paper, so I tend to do a lot of that first, especially when treading new territory.
On occasion, in a REPL-style environment, I can get some amount of that same freedom of exploration and experimentation at a keyboard, but it's still hard to come close to pencil and paper, for me.
Sometimes I wonder what it would be to have the mind of someone like Tesla, who could reportedly design complex objects in his head, down to the details. The freedom of experimentation in one's own mind is even better than pencil-and-paper, but I have trouble holding on to the details in that mode.
Does anyone write programs using the same workflow?