How Brian Painter is Teaching Programming with Minecraft

A phrase I hear increasingly often is ‘I’m not a Teacher but I Teach’.  Brian Painter is representative of a group of Trinket users who don’t make their living teaching. He teaches a programming class for kids several times a year that he runs in addition to his day job. We think the way he’s teaching and the fact that he does it in addition to his career is quite remarkable. I hope you enjoy the interview as much as I did!

This is the second of an occasional interview series I’m doing of innovators in the education space.  Check out the other interviews if you haven’t seen them yet!
Brian Painter

Brian Painter

Elliott: Could you describe how you teach, how long you’ve been doing it, and your background for us?
 
Brian: For the past year, I have been teaching kids classes at The Iron Yard’s Spartanburg, SC campus. I have taught classes on Arduino, Scratch, and Minecraft + Python. When I started teaching the classes, I was just coming off of a large project at work that required me to train 150 users across five locations on the computer system that we use for all day-to-day activities. Based on this experience, I felt that my teaching skills were sharpened up, and when the folks at The Iron Yard approached me, I thought: why not?
Elliott: You clearly have a passion for helping others.  Can you elaborate on what exactly it is that excites you about teaching programming to kids?
Brian:  When the idea of teaching classes for kids first came up, I knew right away that this would be something I wanted to be a part of. From my perspective, programming is just breaking a problem down into small pieces, and thinking through a solution logically. This is an important life skill, even for those not interested in programming for a living. In business, I see the demand for people with programming skills steadily rising, and schools not always keeping up especially in the middle/high school arena. Sure, there are awesome Computer Science majors at colleges across the country, but going from little or no computer science foundation in the lower grades to full-scale, college-level classes is a rough transition. I hope that exposing more kids to computer science early will create a positive feedback loop. More students going into computer science majors increases the programming talent pool in the area, attracting more businesses to locate here, creating more programming jobs and enticing more students to go into computer science majors.
Elliott: Could you talk about how you’re teaching programming with Minecraft?  What advantages and challenges have you found?
Brian: Using Minecraft to introduce programming concepts has been amazing! First of all, the name recognition alone has helped us to consistently fill our classes. Minecraft is something that the kids are familiar with, and gives them a comfort level that would not be there otherwise. Talking about a loop is one thing, showing text that prints to the screen from a loop is good, but building a staircase in Minecraft with a loop is a whole other level. It really allows the students to visualize what is happening with the program, and allows their creativity on what to do next to take off.  We use a trimmed down version of Minecraft that runs on the RaspberryPi. The students take the RaspberryPi with them, so this allows them to work on the projects, or just play around outside of class. This has helped to cut down on the amount of review that is needed each week on what was covered the week before.
A Raspberry Pi logo in Minecraft.

A Raspberry Pi logo in Minecraft. (Image credit: user billb from raspberrypi.org)

Elliott:  It’s really quite amazing how kids respond to games when learning to program. That’s one of the most innovative aspects of what you’re doing, I think, and something I see many successful teachers incorporate into their teaching.  
So we’ve heard a little about what you teach.  How are you using Trinket in your teaching?  
Brian: I started using Trinket when I realized that there was more demand for classes than I could possibly teach by myself (and keep my job/family happy!). Finding students is not hard, finding volunteer teachers is another matter all together. One of the biggest hurdles that I ran into was people who were interested in teaching, but weren’t sure what to teach. They needed a curriculum to give them the structure and confidence to stand in front of the class full of kids. I wanted something that would allow me to easily build an outline for the classes, change it over time, and avoid the overhead of sending out new versions whenever I changed something. Trinket fits those requirements perfectly. My courses are basically lessons for the teachers of the class on how to teach the material. Staying organized, and having my material available online instead of stored on my laptop or flash drive in a text document is critical when doing this on a volunteer basis with limited time available.
Elliott:  How did you get started with this?  Do you have a background in teaching?
Brian:  My background is not in teaching. My parents, uncles, aunts, and grandparents were all teachers. They were peach farmers, and teaching, with summers off, fit right into that schedule. I grew up saying that I was going to do anything other than be a teacher. I went to school for Industrial Engineering, and always had a love of computers. For the past ten years I have worked for Tindall, a precast concrete construction firm. While there I’ve done a multitude of jobs, but always found a way to incorporate computers and programming into the mix. On a most basic level, I am lazy. I don’t want to do any more than I have to. If I can pass off some of my work to a computer forever by spending a little bit of time learning to program it, I’m all for it. If I can teach someone else to do what I do, that’s going to free up time for me to be even lazier! In my quest eliminate my job (so far without success, business has a funny way of always finding more for you to do), I realized that I would have to go back on my word to never become a teacher.
Elliott: That’s great to see it coming full circle with your family.  What advice would you offer someone else looking to replicate your success in organizing workshops like these?
 
Brian: If someone reads this interview and thought: “I’d like to do this where I am”, EXCELLENT! The most difficult part of teaching kids’ workshops is taking the first step: deciding to do it. Two resources that have been very valuable for me is the work of Katie Cunningham and Barbara Shaurette and their Young Coders classes at PyCon. They have excellent commentary on the setup and execution of the classes, and although they ran a one-day class and I do hour long classes over several weeks, there were lots of good takeaways.
Some posts by Katie on the classes:
The Github repo:
Video from a talk they gave at PyCon this year:
The other resource that I have leaned heavily on is the blog of Craig Richardson. He wrote a book about teaching Python with Minecraft, and has that along with other Minecraft resources on his blog:
Elliott: Katie, Barbara and Craig are doing some amazing stuff!  Thanks for sharing these links.  Now, final question, bringing us back to your amazing stuff: How can readers get in touch with you if they’re interested in helping or using your curriculum?
Brian: I’m always looking to connect with others who are interested in, or are already doing things with computer science education for kids. You can find my Trinket classes at https://brianpainter.trinket.io/, and find me on twitter @brianpainter. Or, if you are in Spartanburg, SC stop by The Iron Yard one evening and check out one of the classes!