25 ms·
While I agree that those terms are unclear and might mean different things to different people, I think "banning" them is solving a non-problem. I don't know a
by chwahoo 15y ago
While I agree that those terms are unclear and might mean different things to different people, I think "banning" them is solving a non-problem. I don't know anyone who would ask a developer to "rewrite the code to not be ugly" (without providing specifics). I think it's a useful informal term for when specifics aren't needed: "making this change will require us to touch the X module, which is really ugly, so factor that into your time estimate" (if both developers know the X module, this needs no further explanation). In other words, I've not encountered any discussions where "ugly"'s ambiguity has caused problems.
Sometimes "ugly" really seems to hit the nail on the head, like when code fails to communicate what it does or why it works (e.g., due to an implementation that looks like it resulted from brownian-motion trial and error).
- joelthelion 15y agoThe problem can also be in people's heads: for years I've tried to write "clean" code, but since then I've noticed that at times my coworkers who don't have a clue would do their jobs faster than me. In some situations "ugly" is OK. So the conclusion is that "good" and "ugly" aren't precise concepts and depend on the context. As such I think they should better be avoided.