Slashdot Mirror


Lies Programmers Tell Themselves

itwbennett writes "Everybody lies to themselves now and again in both their personal lives ('my bathroom scale probably needs to be recalibrated') and professional lives ('this code doesn't need commenting'). ITworld has compiled some of the common lies programmers tell themselves. Here are a few examples: 'This bug won't take long to fix.' 'No one could possibly fail to understand my simple user interface.' 'Code is self documenting.' 'My homebrew framework will be nimble, lightweight, debugged, and easy to use.' 'I know this is dirty code, I will rewrite it later.' 'It's just one line... it won't break anything.' '"It works on my machine.' 'I don't need version control.' 'It's written in ____, so it'll be easy to ____.' What would you add to this list?"

5 of 452 comments (clear)

  1. Hofstadter's Law by Kensai7 · · Score: 5, Insightful

    "It always takes longer than you expect, even when you take into account Hofstadter's law."

    --
    "Sum Ergo Cogito"
  2. The Whopper by American+AC+in+Paris · · Score: 5, Insightful

    "Well if you let the programmers run the show, things would be so much better."

    --

    Obliteracy: Words with explosions

  3. Re:we'll be greeted as liberators by Anrego · · Score: 5, Insightful

    "All our users are complaining bitterly about these changes, but I'm sure once they get used to it they will see we had it right all along."

    See also: gnome

  4. Oh frameworks... by razathorn · · Score: 5, Insightful

    Let us not forget that almost every framework you "should use" started out as a framework that "shouldn't be written." Only after enough people changed their mind, did the original author(s) become visionaries instead of "people who reinvented the wheel." I find that the tendency to "don't write that, it's already been written!" has been greatly blown out of proportion and people are allergic to actual software engineering. In other words, if they do more than extend / implement a predefined interface or glorified configuration on a single class instance... like heaven forbid they define an interface, base class, or object model with multiple things that derive it, then by god, they've gone too far! There is a time and place for frameworks, and realizing that the time and place isn't "every freak'n time" is just as important as not constantly reinventing the wheel.

  5. From Scratch by asylumx · · Score: 5, Insightful

    "If we rewrite this from scratch, it'll be WAY better!"