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

Incredible Demos

  • By
    Page Visibility API

    One event that's always been lacking within the document is a signal for when the user is looking at a given tab, or another tab. When does the user switch off our site to look at something else? When do they come back?

  • By
    NSFW Blocker Using MooTools and CSS

    One of my guilty pleasures is scoping out the latest celebrity gossip from PerezHilton.com, DListed.com, and JoBlo.com. Unfortunately, these sites occasionally post NSFW pictures which makes checking these sites on lunch a huge gamble -- a trip to HR's office could be just a click away. Since...

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!