BUT: it just has about 20kOhm, which causes an "on current" of 250uA (0.00025A), which is unnecessary high...
Just to clear things up there are two wrong things in this statement:-
- Internal pull ups are 50K (it says so in the data sheet)
- 250uA is not unnecessarily high for a pull up resistor. The higher the current the more resistant to noise pick up you have. Noise pickup will cause false readings from a digital pin. Typically I would use a 3K pull up and in noisy environments I would use 1K or below.
Talking about 10M resistors in this context is just plane silly.