Voltage drop issue - camera intervalometer

IMHO, that is terrible programing practice.

You are welcome to your opinion, but you are being obtuse on this point. There are perfectly valid reasons to write code like this and there are other examples. Could you state that a digitalWrite() to an INPUT pin is a "terrible programming practice?" No you couldn't, because it is the only way to enable or disable the internal Pull-Ups.

Here's another example, setting an OUTPUT to be Tri-Stated. How do you do that? You change an OUTPUT pin to an INPUT pin. Could you state that is a "terrible programming practice?"

The very reason micro-controllers have a register for the I/O ports is so that you can do actions like "read an output." Otherwise you would be forced to use RAM to keep track of the state of your output pins. This is probably a worse programming practice: using extra resources to do a job already provided by the hardware!

Can it lead to confusion when reading code? Sure. Is it a "terrible" practice, no! The micro-controller environment requires some creativity to deal with the limited resources available to you. In a case such as this, a GOOD programming practice would be to comment and say "checking to see what state the OUTPUT pin was left in."

I see absolutely no reason anyone would want to read an output pin, unless the pin was some sort of shared input/output function (which this does not appear to be)

You say "absolutely no reason" and then "unless." You can't be absolute with exceptions.