Skip to content
DevMeme
4884 of 7590
DesignPatterns Architecture Post #5346 · source on Telegram

The Bell Curve of Engineering Wisdom

Description

This image uses the IQ Bell Curve meme format to illustrate the evolution of a software developer's mindset. On the far left, representing a novice, a simply drawn character says, 'I'M JUST GONNA USE A SIMPLE SOLUTION.' At the peak of the curve, representing an average or mid-level developer, a crying, bespectacled 'Soyjak' character frantically insists, 'NOO! THE CODE MUST FOLLOW THE SOLID PRINCIPLES!!' On the far right, representing an expert, a serene, hooded character calmly states, 'I'M JUST GONNA USE A SIMPLE SOLUTION.' The meme satirizes the journey from naive simplicity to dogmatic adherence to rules, and finally to an experienced pragmatism where simplicity is chosen intentionally. It humorously critiques the tendency of intermediate developers to over-engineer solutions by rigidly applying design principles, whereas seasoned engineers have the wisdom to know when a simple approach is the most effective

Comments

26
Anonymous ★ Top Pick The difference between the simple solution on the left and the simple solution on the right is about ten years of implementing the complex solutions in the middle
  1. Anonymous ★ Top Pick

    The difference between the simple solution on the left and the simple solution on the right is about ten years of implementing the complex solutions in the middle

  2. Anonymous

    Architectural bell curve: junior writes a 25-line function, mid refactors it into six SOLID-approved interfaces and a DI container, senior deletes the lot and leaves one function with a comment - “KISS; the 3 AM pager can’t deserialize abstractions.”

  3. Anonymous

    The senior engineer who spent three sprints building a perfectly abstracted, dependency-injected, event-sourced solution just watched the intern solve it with a HashMap and a for loop in production

  4. Anonymous

    The most dangerous developer isn't the junior who doesn't know SOLID - it's the mid-level who just discovered it. After 15 years, you realize that sometimes a 50-line function that actually works is worth more than a perfectly abstracted, dependency-injected, interface-segregated architecture that takes three days to modify. The real senior move? Knowing when 'good enough' is actually better than 'architecturally pure,' because you've seen enough over-engineered systems collapse under their own abstraction weight

  5. Anonymous

    Architecture bell curve: junior ships a for-loop, principal ships a for-loop; middle adds six interfaces and an AbstractFactory so the for-loop can swap between its one implementation in the name of SOLID

  6. Anonymous

    SOLID peak: Where YAGNI goes to die, tripling LOC for that one edge case the auditor dreamed up

  7. Anonymous

    After a decade you learn MTTR beats SOLID bingo - the most maintainable class is the one you delete before the AbstractFactoryFactory PR even opens

  8. @Araalith 3y

    SOLID is a simple solution.

  9. @karim_mahyari 3y

    A solid brick. Also simple.

  10. Deleted Account 3y

    u need to choose right simple solution

  11. @LennyLizowzskiy 3y

    the code also can follow KISS and/or DRY principles

  12. @qtsmolcat 3y

    I prefer my code in a gaseous form tyvm

  13. @mchlorine 3y

    KISS!!!

  14. @viktorrozenko 3y

    You have to have enough experience to be able to foresee that your simple solution will not become a problem in the future

    1. Deleted Account 3y

      If it becomes a problem in the present, just fix it, future is just speculation. There're almost 50 year codebases in Fortran

  15. @Dark_Embrace 3y

    When you need to test private methods you just write #define private public #include "testmedaddy.hpp" and test as usual 👌

  16. @LennyLizowzskiy 3y

    KISS and YAGNI literally mean "write only the code needed"

    1. @negezor 3y

      This is the reason why I posted this 😦

      1. @LennyLizowzskiy 3y

        but then it fully negates the meaning of the meme because it puts the small-minded guy, average guy and top-IQ guy in the completely same position

        1. @negezor 3y

          Welcome to the internet

          1. @LennyLizowzskiy 3y

            я ненавижу постиронию

            1. @RiedleroD 3y

              english please

            2. dev_meme 3y

              Translation: I hate postirony

            3. dev_meme 3y

              Btw, is usage of Russian in this comment also an instance of postirony? 🤔

              1. @LennyLizowzskiy 3y

                i guess so

              2. @q_rsqrt 3y

                да

Use J and K for navigation