Which do you prefer over-engineered or under-engineered codes?

  • 4
    Over-engineered because I like to produce that stuff. Under-engineered tends to need more work in the future for unexpected changes.
  • 2
    underengineered. Less complicated to make things right afterwards. Also, KISS.
  • 3
    Over-engineered because it's usually extensible. Under-engineered code requires rewriting in some time.
  • 1
    Under, it's less to pick apart and decipher later.
  • 1
    Doesn’t matter to me personally, but usually under-engineered because it’s usually faster to do stuff than over-engineered things.

    And time is always running out!
  • 0
    Both. Someone else did it
  • 0
    It's way easier to make code more complex if the need appears than to simplifying it imo
  • 1
    Over-engineered code indicates modularity/api-like functions. Which makes it easier for me personally to implement and adapt. And I prefer modularity over anything else! Under-engineered is okay until it gets too much responsibility. I would only use that if I need to learn to write that/similar code myself.
  • 0
    Over engineered code coz there is nothing worse than lazy under engineered code. I hate laziness.
  • 0
    It depends on how opinionated your stack is. Add some damn comments so I know what your bullshit code is trying to do regardless of how over or under-engineered it is.

    Code used once is an anomaly.
    Code used twice is a coincidence. Code used thrice is a code pattern.

    Don’t invent a code reuse pattern unless something repeats at least three times and you know it is unlikely to change. Even three times you can wait for the fourth time to build and use the pattern for the first three.
  • 1
    Overengineered code. Just to cover all bases for potential issues and possible enhancements.
  • 0
    I think most people in the "over" camp are confusing over-engineered with perfectly engineered.
Add Comment