I agree with you: `i` as a loop variable name is an age-old idiom which should not confuse anyone. Same as `e` for an exception variable in a catch block. The latter should be short and simple so the scope of the exception variable should be small, therefore it can't confuse anyone. And if someone wants to search for exceptions, better search for exception types or catch blocks anyway.

This said, I personally prefer using longer loop variable names such as `index` or `idx`. My reason is that `i` is so short, it is difficult to locate with the cursor.