Attributes of a Good Program