I learned the colour codes from a chart on my own - black, brown, rainbow(most of), grey, white - courtesy of my Philips EE20 kit.
After a while, I could 'see' a 47K, quarter watt, 4 band carbon film resistor from its colour codes even if it was far enough away that I had to lean over to reach it. In fact, everything from 10ohms to 1M in the E12 range didn't require any thought at all.
The eyes aren't quite as acute these days and the range tops out at about 2 ft ... for quarter watt carbon film - BUT the blue bodied metal film are quite something else. For starters, the darker blue body really kills the contrast which just makes things harder. Then we have the smaller size of resistor and the bands which, coupled with aging eyesight (though I don't need glasses) makes unassisted viewing more difficult.
I've always had good lighting, so these problems are overcome by using my headband magnifier - but one still remains a challenge: Which direction to read. With 1% and 2% tolerance bands and values outside E12, I find myself reaching for the meter more often these days. With some of the stock I have, the tolerance band is spaced out a bit more - but it's just not consistent and/or obvious.
I used to be able to pick out a value from a fistful of resistors dumped on the bench - but with the smaller blue bodied beasts, those days are gone.