Programming seems more verbal to me than visual. It feels very akin to writing, I have an idea and I am talking through it. My editing of code tends to be nonlinear for this reason, drilling into areas as I would expound upon them verbally, rather than in the order the compiler will evaluate them.
Perhaps the git diff helps me visualize what's left to do.
On the other hand, if it is a complex algorithm, I draw diagrams representing the edges cases and I try to give them names before coding them.