Settings

Theme

How do you know if you're an Over-Engineer?

t.suriyathep.com

1 points by tsuriyathep 14 years ago · 3 comments

Reader

kls 14 years ago

You want to use multi-core PureMVC on Hello World or Pong.

While I agree with this one, I strongly disagree with the elegant code item, the quote above is the exact opposite of elegance. The best developers, that I have ever met wrote elegant code, and by elegant code we all generally accepted that to mean so simple it seemed to be a work of art, so simple that the simplicity of the problem is hidden until you see the code and you think wow, that simplifies that problem so succinctly that it is beautiful. It is the opposite of gold plating which I believe is the root of over engineering. People that over engineer love complexity for complexity's sake. They like to utilize a deep technology stack where people that write elegant solutions look to simplify the technology stack, they look for redundancies and try to eliminate them. I think elegant solutions that views simplicity as a prerequisite for elegance is the antithesis of over engineering.

  • tsuriyathepOP 14 years ago

    I'm not saying the words "elegant" or "beautiful" is wrong. I'm just saying from my experience, non-programmers think I'm a fanatic and give me funny looks when I say that. Could be the way I'm saying it :)

    • kls 14 years ago

      Sure I understand the problem with that word is it means so many things to so many people, it has an emotional element to it as such it is subjective to the group of people that use it. But I generally see it used in the context of code as being of simple form, so simple that it begets a beauty of it's own. A secondary definition I see from time to time is clever, which can be a albatross, clever code can be bad code and some people do use the term elegant for clever code but to me it is misapplied, clever code goes against elegance because it makes things more complex, so I tend to call clever code clever and simple code that is cleverly simple elegant.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection