Last weekend I did something I'd never done before: helped out at a programming workshop. My wife can say the same, cuz she came along and not only helped out, but was an excellent programming "student". I was really jazzed that she was interested and actually had fun.
Railsbridge is "an organization that works to increase diversity in tech by putting on a variety of awesome free events." Basically, it's a collective started by a group of women from San Francisco who want to increase the number of women in tech. By their statistics, the percentage of people in the SF Ruby community is 98% male. Whoa. One way to get more females exposed to and interested in programming is by holding free workshops where they can come and learn in an inviting environment, no matter the skill level.
I know the organizer of the recent SD workshop and before it occurred he asked if I knew any Ruby on Rails and if I would be interested in volunteering. I've dabbled with both Ruby and Rails in the past (doing many tutorials and even getting through the koans), but neither feel very knowledgeable or experienced. However, a great way to learn is to try to teach, so I reluctantly accepted his offer. In the weeks leading up to the event, I went over all the "decks" and installed the whole dev stack on both a Mac and Windows system (and even a Linux VM I made during Installfest :P). Going over the basics of getting your development environment squared away with Robyn before the event was a great help. I even got another TotalTerminal convert out of it.
Once the weekend was upon me, I made my way to Co-Merge's shared workspace where the event was taking place, and I actually did teach! Between general tech support on a Friday Installfest day (where everyone gets together informally to get Ruby, Rails, Git, and SQLite installed on their machine) and actually instructing half of a class on the actual workshop day, it was a really good experience. I rode the line of competence the whole time, sort of knowing what I was talking about, but not being the expert I know I probably could be if I ever got past the "needs a tutorial/reference" stage.
"Those who can't do, teach" is too extreme a philosophy to be true (they are not mutually exclusive), but sometimes I wonder if I'd be better off just teaching the basics of programming to people instead of actually trying to become an intermediate/advanced coder in any language. I can be fairly extroverted and affable, even in front of strangers, if I really want to be. Fighting the anxiety and self-judgment is always going to be tough, but it can be managed.
Hopefully, the aim to have this workshop every 3-6 months comes true, and I can help out again. It went well, I didn't embarrass myself, and I met several people in the Ruby community that, if I ever seriously get back into personal development, could be good networking contacts. To that end, both Robyn and I are going to try working on a web application together soon, using all the tools and knowledge gleaned from the workshop.
I'd call this all a success.