One minor nit:
CPUs double in speed every 18 months while the cost drops by half (Moore's Law).
Moore's Law actually states that the number of transistors on a chip doubles every 18 months, not the execution speed.
I agree that most micro optimizations are moot, but when it comes to choose an efficient algorithm you can really shoot yourself in the foot by choosing a slow one. You might not notice that when you test it with only 1k test data, but you will when that big database rolls over your script ;-)