What language do you think in?
eldenbishop: Interesting. I'm surprised to hear people can effectively think about code in a language at all. Code is an abstraction of an essentially physical process (the computer doing things) so it seems rather odd to think about the problem at one level removed. I don't think in language generally unless I am intending to speak to someone. I tend to think in terms of motion through a physical space. Imagine yourself playing tennis and feeling your motion across the court. The algorithms in my head work the same way. All the pieces are sort of thrown on a table and I feel the paths between them, the 'forces' of contention and flow. The closest I've seen to describing it is when really advanced chess players talk about how they see the chess board as lines of force and weight.