Earlier quoted context omitted.
>you have to go back and find the body of the loop If the loop is long enough that you don't naturally remember how it was introduced, that's the problem. In the given example, the use of `p.Age` is literally on the next line of code after ` for _, p := range people`. > I've never understood what is gained by using `p` instead of spelling it out as `person`. Wisdom I received from, IIRC, the Perl documentation decade…
> remember how it was introduced The problem is that many times I have not read the definition to remember. Debugger puts me into a context where I have to figure out what `p` stands for. I go up the call stack and now there's `s` to be deciphered. Worse is the reuse of `p` for person, product, part, etc. in different contexts. Debugging is not the only problem. Code is read rarely linearly. Many times I browse diffe…
Which, now that I think of it, kinda applies to your argument as well. Yeah, the debugger dropped you into the middle of a function you see for the first time in your life. No matter how you dice it or slice it, this means you'll have to study this function; I personally find that going to the function's beginning and skimming it until the breakpoint is the most reliable (and therefore, on average, fastest) method.