"There are only two hard problems in Computer Science: cache invalidation, proper naming and off-by-one errors."