If you've been around the programming community long enough then no doubt you have heard Impostor Syndrome mentioned at least a few times. I think that with the backgrounds and qualities and many programmers have combined with the almost guaranteed success (crap, is that my impostor syndrome kicking up?) of being a programmer it is clear why it is so rampant in our circles.
What is Impostor Syndrome?
Simply put, impostor syndrome is when a person isn't believing of their competence despite vast amounts of evidence that such competence does exist. It is more prevalent in certain types of people than others but all-in-all nearly 70% of people experience impostor syndrome at one point or another.
Aside from many of the qualities a lot of programmers have in common I think the other leading contributor to impostor syndrome is continuous improvement. I think that continuous improvement is very widespread amongst programmers and it's hard to believe in your accomplishments when you already have your eye on that next area of study.
As a Ruby programmer the number of things I can study are immense. Ruby the language, Rails the framework, design patterns, Test-driven Development, UNIX, vim, web technologies -- the list goes on and on. Any feeling of accomplishment is almost immediately kicked aside with the rolling up of my sleeves as I get ready to dive into the next topic. Not to mention the feeling of finally feeling good about your knowledge of something only to stumble upon some other programmer that much better.
Let's Beat This
I was recently catching up on some Ruby Rogues episodes (which is an excellent podcast that I can't recommend enough) and listened to one called Community Hacks. In the episode Josh Susser gives a quick rant about how important it is that people in the Ruby community blog and to not be ashamed of the information you're sharing regardless of your skill level.
Hearing that from someone like Josh is extremely comforting because I can't count the number of times I talk myself out of blogging due to feeling like someone has already said what I'm going to say and possibly already said it better. He then goes on to say that highly skilled bloggers even enjoy reading these blogs because they find things they forgot or stir up memories of revelations they once had themselves.
The crazy part about all of this is that the best way to overcome impostor syndrome is to do just that: write. To put your competence out there in hard proof for yourself and everyone to see.
This is my first foot forward at doing so and I hope you'll do the same.