Am I a good programmer?

I came across an article just the other day where this guy Daniel writes about how to recognize a good programmer. In this article he lists some bullet points on how to tell....

 Positive indicators:

  • Passionate about technology
  • Programs as a hobby
  • Will talk your ear off on a technical subject if encouraged
  • Significant (and often numerous) personal side-projects over the years
  • Learns new technologies on his/her own
  • Opinionated about which technologies are better for various usages
  • Very uncomfortable about the idea of working with a technology he doesn’t believe to be “right”
  • Clearly smart, can have great conversations on a variety of topics
  • Started programming long before university/work
  • Has some hidden “icebergs”, large personal projects under the CV radar
  • Knowledge of a large variety of unrelated technologies (may not be on CV)

Negative indicators:

  • Programming is a day job
  • Don’t really want to “talk shop”, even when encouraged to
  • Learns new technologies in company-sponsored courses
  • Happy to work with whatever technology you’ve picked, “all technologies are good”
  • Doesn’t seem too smart
  • Started programming at university
  • All programming experience is on the CV
  • Focused mainly on one or two technology stacks (e.g. everything to do with developing a java application), with no experience outside of it

... so naturally I started to see which ones apply to me.  What in this list would define where I stand? As I started to look at the list it made sense and actually I could see it applied to someone one else I know who always wants to be a better programmer but lacks some of the bullets from the first part.

As I read the bullets, everyone one of the positive bullets matched with me, only one of the negatives I felt matched as well.  The last one about technology stacks.  At first I thought that contradicted learning new technologies from the first one but it doesn't.  Example, I learned AJAX, I'm learning Silverlight, those are new technologies. I am stacking the technology because I'm using everything with VB.NET.  That's what I feel I stack.  I can read C# but slower to code in it then VB and ususaly when I want to get something done I default to VB.NET because I already know it's full sytax.

Anyway, it was an interesting read.

VB.Net Strip Numeric Characters from an Alpha-Numeric String

View Speed Football - Super Speed with non Speed Items