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
    CSS Selection Styling

    The goal of CSS is to allow styling of content and structure within a web page.  We all know that, right?  As CSS revisions arrive, we're provided more opportunity to control.  One of the little known styling option available within the browser is text selection styling.

  • By
    Use Elements as Background Images with -moz-element

    We all know that each browser vendor takes the liberty of implementing their own CSS and JavaScript features, and I'm thankful for that. Mozilla and WebKit have come out with some interesting proprietary CSS properties, and since we all know that cementing standards...

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!