When I first started learning to code I’d hang out in the PHP freenode room, look out for questions I didn’t know the answer to, then try to figure out how to answer them. People who knew way more than me were already generously helping people, so I turned it into a sort of personal game—could I get the answer before anyone else? But it was a low stakes game: even when I ‘lost’, I still won, 'cause I’d get to learn the answer anyway.
I’ve had the opportunity over the years to keep doing this, and the fringe benefits are plentiful. Back in that PHP room, I got my first paid programming gig just because I was helping so much1. Hanging out in the Stripe Campfire room many years later, I learned ColdFusion on-the-fly to help get someone’s site up and running2. And now internally at Stripe, where I like to spend my downtime paging through Slack rooms and looking for questions, answering questions helps me meet people I otherwise wouldn’t work with much, and get a glimpse into how they work.
All told, I usually learn at least as much as the person whose question I’m answering. Every question teaches me how to become a better researcher, shows me the different types of questions I could be asking, and lets me to take on a wider variety of projects than I’d otherwise know how.
Next time you find yourself with some downtime, consider giving hobbyist helping a whirl! (I’ve found it to be an especially good substitute for triaging my inbox a third time :-) And if you want to chat more about any of this, I’d love to hear from you! Drop me a line @sch or email@example.com.
Incidentally, and at the time very embarrassingly, the client figured out a couple weeks in that I was 13—turns out it was pretty obvious over the phone 😳 But hey, they still paid me! I owe them a ton for giving me the confidence to pursue engineering as a career.
Aaand am now listed in our internal dev support documents as a ColdFusion expert >.<