The Truth About Programming Perception

By  on  

When I tell people that I'm a web programmer, they think I'm a genius.  When I tell them I work for the company that makes Firefox, they think I'm some sort of God.  I'd be willing to bet other developers out there get the same treatment.  And I don't say this to talk myself and people in our profession up, I say it because people outside of our profession don't have any idea how we do what we do.

Even developers look up to other developers in our industry that way.  I feel like every other developer around me at Mozilla is a legend, and in many cases, they are.  It's the reason we have such thing as imposter syndrome, and it's the reason we're intimidated to join OSS projects and approach popular developers at conferences.  The following comic seems apt:

We all make stupid mistakes.  We all stare at our code to find that one line that is somehow bricking our app.  We all swear our browser is broken before finding the one obvious mistake in our code.  Don't sweat it and don't feel like you aren't good enough.  Everyone has these moments and no developer goes a day without struggling on something basic.  Now go out there and kick some ass!

Recent Features

  • By
    Camera and Video Control with HTML5

    Client-side APIs on mobile and desktop devices are quickly providing the same APIs.  Of course our mobile devices got access to some of these APIs first, but those APIs are slowly making their way to the desktop.  One of those APIs is the getUserMedia API...

  • By
    5 HTML5 APIs You Didn’t Know Existed

    When you say or read "HTML5", you half expect exotic dancers and unicorns to walk into the room to the tune of "I'm Sexy and I Know It."  Can you blame us though?  We watched the fundamental APIs stagnate for so long that a basic feature...

Incredible Demos

Discussion

  1. Chris Reed

    the classic “Find the l” programming games series includes:
    :,;
    l,;
    ‘,:

    The best part is they all come free with every language.

  2. Thanks for this post! I think the important thing to take from this is that ALL of your idols have gone through the same problems that you have. Bugs, poorly optimized code, awkward git commits, etc.

    The biggest obstacle in your way from becoming someone that your idol looks up to is being too afraid to try or writing yourself off as not being as good as that person.

  3. Lol…..this just made me laugh inside. Because I have been there so many times. Even not a hard core programmer or anything, I mainly have done work in HTML, CSS, and some PHP. Took a course in C++.

    But yes, it is the tedious aspect that “outsiders” filter out. Maybe because they themselves can’t imagine that anything so awesome would have tedious bits. But all jobs to my knowledge have tedious bits. What makes it awesome is when you work through it and see the result/solution and end product of your work. Constant reiteration and optimization is the key to mastering any field!

  4. Ha! this made me laugh.

    Semicolon always does this programmers! :)

  5. My favorite one is where Mac is case-insensitive and when you push to a production unix serve it’s case-sensitive and nothing works due to one file name P to p.

    • I had this problem on windows when I’ve started programming, just make sure you stick to a naming convention, and you’re safe, didn’t have this problem after that :)

  6. I feel that the TED talk “Myth of the Genius Programmer” is appropriate here ^^

  7. Ture story, bro! ;)

  8. Excellent post, David!

    This type of transparency has between senior and junior developers takes so much pressure off of the latter to always write perfect code the first time around.

    While the Impostor Syndrome can be a serious innovation inhibiter, a small dash of it keeps us humble enough that we don’t become “that guy/girl” that other developers can’t stand to be around.

  9. This was HILARIOUS!! Love it! Thanks for posting!

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!