When you write a piece of software you assume a certain type of hardware. If you assume hardware that's too powerful then you can't sell many copies cause very few people have that machine. If you assume hardware that's too simple your product can't do as much.