Because NULL is horrible. Really.

If we allow NULL in text fields, we now have *two* empty values, empty string: "", and NULL. It's best practice to not store null values for string fields in the database unless there is some absolutely pressing need for it.