Over the past couple months, I've been holding programming classes after work here at Wistia HQ. Why would I do such a thing? Why should you, as a programmer, teach people how to code?
Everyone's job involves coding in some way
In a tech startup, whatever you're working on, you're probably changing code in some way. Working on a blog, transcoding videos, integrating with other systems, and countless other tasks across the entire board somehow involve programming. Coding is like reading and writing in a lot of ways -- even if people aren't actively doing it as a part of their job, it helps a lot if they know how to do it.
It's a good way to scale yourself
As one of about five people at Wistia who'd be considered "developers," it's important to be able to scale yourself. It's more efficient, in many cases, to teach people a skill than to be a part of a bottleneck for the whole company that everyone has to reach out to whenever they reach a roadblock.
It's great to see people get involved and feel driven
It's not all about efficiency -- it's also about everyone (teacher included) feeling good.
A traditional classroom format is inefficient
If I were doing this again, I'd eliminate all but the first PowerPoint presentation that I used and focus on teaching 1 to 2 people at a time.
An "apprenticeship" format works better
Learning programming has to be tailored to individual needs -- everyone is starting with different skills, different knowledge, different learning styles, and, on an even more basic level, different computers. In the world of software, it's easy to get overwhelmed and zone out, so a low-pressure, one-on-one (or as close as possible) format is more effective.
Project-based learning is ideal
Even though everyone learns differently, programming is one thing where it's pretty clear that learning by doing is the best way to make real progress. By letting everyone work on an individual project of their choosing, they should be able to pick up lots of new skills along the way while staying as engaged as possible.