Function/Method names, on the other hand, should be written so as to make the most sense to the humans reading and writing the code
Of course—that’s why we have such classics as stristr()
, strpbrk()
, and stripos()
. Pretty obvious what the differences are there.
But to your point, the ‘intuitive’ counterpart to ‘zeroth’ is the item with index zero. What we have is a mishmash of accurate and colloquial terms for the same thing.
So I’m normally a command line fan and have used git there. But I’m also using sublimerge and honestly I find it fantastic for untangling a bunch of changes that need to be in several commits; being able to quickly scroll through all the changed files, expand & collapse the diffs, select files, hunks, and lines directly in the gui for staging, etc. I can’t see that being any faster / easier on the command line.