Maybe because there are only so many straight answers and we get tired of repeating them so often...
Class A: It's too difficult for the next programmer to understand this
- poor (or horrible) variable naming - poor (or horrible) function naming - repeated repeated repeated repeated code - comments don't match code - comments needed but not there - comments needed by unintelligible - unbalanced structure - poor (or horrible) choices for iterations - poor (or horrible) choices for conditionals - poor (or horrible) choices for data design/storage - poorly maintained by Programmers #2 thru x, who didn't understand it - etc., etc., etc.
Class C: It's broken. Insufficiently tested & broken in production.
Maybe because there are only so many straight answers and we get tired of repeating them so often...
Class A: It's too difficult for the next programmer to understand this
Class B: Poor machine performance, not by 10%, but by 10000%, because of extremely poor design and development choices.Class C: It's broken. Insufficiently tested & broken in production.