The problem with just throwing hardware at the problem is that it identifies that the application doesn't scale very well. What happens when your usage requirements double or triple? Now you have to go out and get three racks instead of just one? Wouldn't it have been better making the software itself more efficient?
The other fallacy that this exposes is that hardware maintains itself. It doesn't. Proper operation of hardware requires IT staff, which are similarly expensive.
I agree with the premise that if a company is operating in bootstrap mode, just keep pushing and throw as much hardware as is required. However, once you get beyond a certain level of success it makes sense to pause for a bit and optimize what you have. That way, you can continue to grow and get more scalability out of the hardware that you already have.