What Makes a Great Programmer?

In my recent blog posting "The Secrets to Becoming a Great Programmer" I discuss a couple of characteristics of great programmers.  You can read about those characteristics at 

The Secrets to Becoming a Great Programmer

What other characteristics make a programmer great?  Do you agree with my assessment?

Parents
  • I agree with you all the way, except from one thing:

    "Do not reinvent the wheel".

    If noone reinvented the wheel, Richard Stallman would not be able to get to his office at Microsoft in time.

    -Besides, Michelin would also disagree.

    I often reinvent the wheel, because the existing wheels are usually shaped like octagons or worse.

    Things that are possible with new wheels would not be possible with the old ones.

    However... I'd like to also state that you might be able to improve on those wheels that are already invented, so they'll become usable; if that's possible, go for it!

    And one more thing for great programmers: Do not continously work on something 24/7, because there is a risk that you will "burn out".

    If that happens, it may take up to 3 or 4 years before you can do just a single line of code again - you do not want that to happen.

    Each time it happens, it'll take less time for you to get in that state where you can't get out, so please take good care of yourself!

    (And frequently visit places that do not even have a computer close by!)

  • One of the good trade-marks of good programmers from an efficiency point of view is knowing when not to re-invent the wheel.  Check out my blog “Buy” versus “Make”: It’s about risk management!.   Often times, engineers at the technical level are wanting to create everything when pieces are already available.  Sometimes, technical folks can also get in a rut and even if there is ultimately a better way of doing things that would improve their efficiency by 5x, they still hesitate to change their work flow. 

Reply Children
More questions in this forum