Teaching Tech Together

Hundreds of grassroots groups have sprung up around the world to teach programming, web design, robotics, and other skills to free-range learners outside traditional classrooms. These groups exist so that people don’t have to learn these things on their own, but ironically, their founders and instructors are often teaching themselves how to teach.

There’s a better way. Just as knowing a few basic facts about germs and nutrition can help you stay healthy, knowing a few things about psychology, instructional design, inclusivity, and community organization can help you be a more effective teacher. This book presents evidence-based practices you can use right now, explains why we believe they are true, and points you at other resources that will help you go further. Its four sections cover:

  • how people learn;
  • how to design lessons that work;
  • how to deliver those lessons; and
  • how to grow a community of practice around teaching.

This Book Belongs to Everyone

This book is a community resource. Parts of it were originally created for the Software Carpentry instructor training program, which has been run over several hundred times over the past six years, and all of it can be freely distributed and re-used under the Creative Commons - Attribution 4.0 license (s:license). Please see http://teachtogether.tech/ to download a digital version or purchase a printed copy at cost.

Contributions of all kinds are welcome, from errata and minor improvements to entirely new sections and chapters. All proposed contributions will be managed in the same way as edits to Wikipedia or patches to open source software, and all contributors will be credited for their work each time a new version is released. Please see s:joining for details and our code of conduct.


For my mother, Doris Wilson,
who taught hundreds of children to read and to believe in themselves.

And for my brother Jeff, who did not live to see it finished.
“Remember, you still have a lot of good times in front of you.”

The Rules

  1. Be kind: all else is details.
  2. Remember that you are not your learners…
  3. …that most people would rather fail than change…
  4. …and that ninety percent of magic consists of knowing one extra thing.
  5. Never teach alone.
  6. Never hesitate to sacrifice truth for clarity.
  7. Make every mistake a lesson.
  8. Remember that no lesson survives first contact with learners…
  9. …that every lesson is too short from the teacher’s point of view and too long from the learner’s…
  10. …and that nobody will be more excited about the lesson than you are.