George Lucas Educational Foundation
Subscribe to RSS

3 Steps to Becoming a Coding Teacher

Grant Smith

Former educator turned teacher trainer and CS education consultant helping districts bring coding to all students.
  • Facebook
  • Twitter
  • Pinterest
  • Share
A red-headed woman in a purple sweatshirt with glasses is hunched over, sitting cross-legged, typing on her laptop.

Becoming a coding teacher doesn't need to be intimidating. I've tried to convert real programmers into after-school coding teachers and it completely bombed. Trust me -- as a well-trained teacher, you have all of the skills you need to be successful. Plus, it's not like you have to know enough to make the next Facebook, just enough to teach the basics! So let's get started.

1. Curate Your Curriculum

We are fortunate to teach in a time when there are hundreds of coding resources and curricula available to use -- and most of them are free! To get started, you really don't have to make your own year plan, units, or even lessons. You can worry about creating your own stuff when you get the hang of things. For now, check out these recommended resources for each grade level (or check out my rated list of resources):

Note: grade levels are generalized suggestions.

2. Prepare Yourself and Your Classroom

Notice how I included resources above for adults to learn coding. That means you! I recommend that you first review your selected curriculum and then move on to the more complicated stuff. I highly recommend the Intro to CS and Intro to Programming courses on Udacity. You should also prepare for your class by answering the following questions:

  • What are your learning expectations for the students? (Check out these learning outcomes for the Khan Academy course as an example.)
  • Are your students learning computational thinking, computer science, or computer programming? (There is a difference. Check out Harvard research on computational thinking.)
  • What's your classroom layout? (See my post for ideas.)
  • Will your students work at their own pace or at your pace?
  • Will students work through a curriculum, or will it be project based?
  • How will students collaborate?
  • How will students share their work with you, their peers, and the world?
  • How will student accounts be managed? Will you create them? Do you need parent or administrator permission?
  • Why should your students learn to code? (Students are more excited to learn when you are excited to teach. Check out the Top Ten Reasons to Code.)
  • How will you assess your students? (This PDF details some research on assessing computational thinking.)

3. Get Support

Just because anyone can learn to code online doesn't mean that's the best way to do it.'s research found that "students who are learning with the support of their teacher in a classroom setting complete courses more than those learning on their own" (Teachers Matter). We all know that for teachers to be successful, we need support. So rally the troops!

  1. Find a champion for your coding crusade. The higher level the champion is, the easier it will be for you to gain access to resources and spread the word about your 21st-century class.
  2. Get the community involved. Host an Hour of Code community event. Last year, the Avondale Elementary School District held an Hour of Code event where the students taught their parents how to program.
  3. Build your PLN. Follow people on your favorite social network and ask for help. Some great hashtags are #CSK8, #KidsCanCode, and #AllKidsCode.
  4. Present to your governing board. Show them how your curriculum aligns to CCSS and builds 21st-century skills.

Jump Into 21st-Century Learning!

If you've already had successful experiences coding in your class, share them in the comments section of this post or on your PLN. If not, you may be asking the following questions:

  1. Will you know the answer to every question that your students will have?
  2. Will you feel well rested, prepared, and in control at all times?
  3. Will every class run without a hitch?

Answers: 1) No. 2) You wish. 3) In your dreams!

Will it be worth it? You better believe it! Now go make it happen!

Was this useful? (6)

Grant Smith

Former educator turned teacher trainer and CS education consultant helping districts bring coding to all students.

Comments (17) Follow Subscribe to comments via RSS

Conversations on Edutopia (17) Sign in or register to comment

Martin Diaz Alvarez's picture
Martin Diaz Alvarez
Business Consultant

Great ideas. Programming is one of the most valuable skills you can pick up in these modern times, whether for career prospects or to stretch your brain and create something awesome.

Dina's picture
Math and Computer Science Teacher

I like your ideas on using a donut for class room setup. I teach coding to high school student in a lab that is used by many teachers, our credit recovery classes, and by adult education in the evening. The lab is set up in the traditional, direct instruction format with a screen in the front and the teacher desk in the back. I always assumed it was arranged in this manner so that the teacher could see all the student monitors - but after reading your article on setup, I realized that the donut layout is equally effective and I bet I would walk around the room helping students much more often than I do now. I have to find out if it's possible for me to rearrange the room - where the internet drops are is another factor to consider - but this layout definitely has me convinced!

Grant Smith's picture
Grant Smith
Former educator turned teacher trainer and CS education consultant helping districts bring coding to all students.

Hi Dina,
Thanks for sharing! It's true that converting to the donut layout is a lot of work with a lot of considerations to make. Sometimes it has been an arduous battle with admins, other teachers, and even custodians to make the switch. Other times, because of space or some other reason like the desks and chairs are bolted to the floor, it's not even an option. Even if you aren't able to change your layout, at least your thinking about ways to improve your learning environment, way to go!

Diane Toohey's picture

The link to your "rated list of resources" is not working anymore. Would you share the new link to it?

Thanks a lot!


Grant Smith's picture
Grant Smith
Former educator turned teacher trainer and CS education consultant helping districts bring coding to all students.

Hi Diane, sorry about the link, I switched over to a new site a few months ago. The list of rated resources is here:
The list is a bit easier to use now. Thanks!

Laura Bradley, MA, NBCT's picture
Laura Bradley, MA, NBCT
Middle school English/Digital Design/Broadcast Media teacher

I love the Hour of Code because it provides so many resources for students to learn coding on their own. But this year I wanted my students to go farther than an hour, and even though I still don't code myself, I was able to launch them into a coding project using Scratch. They spent the final three weeks of the semester coding computer games based on the novels they had written during NaNoWriMo. It was a huge success! I was so impressed with the resources on Scratch, and with my students' excitement and willingness to keep learning from each other and from the website. They came in every day with new ideas for their games and then on the day of finals, they played each others' games and gave each other feedback to improve them. Huge fun all around! I think one of the most important things we can learn from the Hour of Code is that it absolutely is OK for us to have our students learn something that we are not experts in.

Jsimons's picture

Your rates list is blocked at my school because it is a blog site. Is there another way you can share? Thanks.

Sign in to comment. Not a member? Register.