Life TODO List: Teaching a Class
I’ve always wanted to teach a class. A few weeks ago, following conversations with people in the Awesome Inc community, I decided to create a class called “Programming For Absolute Beginners”. This class offers an introduction to software development based on an excellent (and free) resource called Learn Python The Hard Way. We only announced the class internally (to our Tenants, Team Alpha, and the Experience teams at Awesome Inc) but still had 12 people sign up within 3 days. I was pretty surprised with the response; I thought it would be a struggle to find half that many people. And, following the first and second sessions of the 5.5 week course, both the students (and I) seem to be enjoying the process.
There are two reasons that I’m so excited that this course is able to take place:
I get joy in empowering other people. Education is one great way to empower people. “The more you know,” right? I’ve actually approached the class as more of a facilitator than a teacher. With the varying skill levels of the “students” in the class, and the ability for anyone to move through the material at their own pace, everyone in the group has the ability to serve as a teacher. So, at a meta level, I’m not only teaching a group of people how to be programmers, but also teaching them how to programming teachers. In fact, based on how quickly several of the students took on the role of peer-teacher, I didn’t really have to “teach” them how to do this. I just gave them the opportunity to use their skills. And while this might be bad for my job security as a teacher, it’s great for expanding our ability to help more people. And if that means that more people like Therese, who wrote her first program ever last night, will feel this empowerment, then our time invested is totally worth it.
The world needs more makers. For a generation or so, the title of “skilled workers” has gotten a bad rap. It has become viewed as a subpar status, denoting people who have chosen non-university educational paths, or pursued non-white collar careers. The thing about most white collar jobs, however, is that they operate at a level of abstraction beyond actual productive work. If white collar workers stopped working, we’d lose the ability to account, litigate, and manage. If blue collar workers stopped working, no new stuff would come into existence. There would be no food, no clothes, no cars, and no music on the radio. Herein lies the magic of programming: it’s a white collar job (read: prestigious, well-paid), yet it’s also a blue collar job (programmers actually make things). At this particular point in history, our ability to solve many of the world’s problems is only inhibited by our ability to understand those problems, and our ability to turn the solution into working software. Hunger, energy, peace, communication, drugs, poverty. In solving any of these problems, the lowest-hanging fruit can be addressed through appropriate computer software. So, by helping a few more people become developers, we’re doing a small part to make the world a better place.
A final note on this is how easy it was to go from discussing the idea for a class, to deciding to do it, to starting it. This all happened within 2 weeks. The two major factors that made this so easy:
- Availability of course material. Thanks, Zed! (also, thanks in advance to iTunes U, Udacity, Coursera, and even Wikipedia)
- The power of the Awesome Inc community. I didn’t have to search for a physical space to host the class, or struggle to market to a critical mass of potential attendees.
Based on our initial results, we’ll be offering more of these courses in the future. If there’s anything you’d like to learn (or teach), leave me a note in the comments!