It's clearly secondary to correctness: A program that is well-written but doesn't work right is worthless. Many hairy balls of mud have shipped to great acclaim.
Human readability & comprehension is nice for maintenance, but you don't get to maintain something that never worked right to begin with.
… Of course, Windows is existence proof that you can be successful with neither.
The point the post makes is that one can't write (or ensure that) a piece of code is correct without understanding it in the first place.
It's most important, above these, because you cannot ensure any of these other design goals without understandability. It has to come first
And I agree with that. Correctness is the goal, but making the code readable is the way: it comes first. Cutting corners there is a good way to shoot yourself on the foot.
A program that works right but doesn't solve the problem is also not very useful.
It's clearly secondary to correctness: A program that is well-written but doesn't work right is worthless. Many hairy balls of mud have shipped to great acclaim.
Human readability & comprehension is nice for maintenance, but you don't get to maintain something that never worked right to begin with.
… Of course, Windows is existence proof that you can be successful with neither.
The point the post makes is that one can't write (or ensure that) a piece of code is correct without understanding it in the first place.
And I agree with that. Correctness is the goal, but making the code readable is the way: it comes first. Cutting corners there is a good way to shoot yourself on the foot.
A program that works right but doesn't solve the problem is also not very useful.