And of course a typo in a constant name would produce an error while a typo in a magic value would cause a sometime hard to debug issue.