Best Practices In Teaching Students To Code


What do you think of when I mention those words?

Some teachers say:

“I have no experience, I could never teach coding/programming!”

“I teach science, not coding.”

“How can I teach something I know nothing about?”

My answers:

“You don’t need the experience to teach coding.”

“Science teachers, along with all core subject area teachers, can easily integrate coding into their curriculum.”

“Again, you don’t need the experience to teach coding.”

About eight years ago I started teaching coding. I was a “Computer Lab” teacher transitioned into “Introduction to Computers” again transitioned into “Computer Literacy” and lastly “Digital Literacy” teacher. Phew!!

It goes without saying that technology is ever-changing. Technology created yesterday will be outdated tomorrow. A new device, application, or website reveals their next best tool for learning this school year, and then next it is something else. My technology director always said to me, “Ask yourself, is it a new fad or is it engaging and purposeful across the board? Will the students learn and grow or will it be purely ‘fun’ with a one and done type scenario?”

When coding and programming became the main topic at a faculty meeting, I began to research.

I asked myself.

“Is it a new fad or is it engaging and purposeful across the board? Will the students learn and grow or will it be purely ‘fun’ with a one and done type scenario?”

I was instantly sold that this was a must-have in my classroom. We all know now the benefits of coding/programming.

  • Logical thinking
  • Problem-solving
  • Creativity
  • Perseverance
  • Resilience

However, how do I teach something I know nothing about? Everyone assumed since I was the “computer” teacher, I knew how to code. ABSOLUTELY, NOT!

I taught students K-5. I started with K-2 doing unplugged activities and for my 4th-5th we started with block coding. The unplugged activities were very easy to understand and I was able to easily create my own material. However, I didn’t know anything about block coding except the fact that you clicked and dragged blocks. What did the blocks mean, how did I order them, what is a ‘sprite’ – soda right?

When I announced to my upper elementary students that I was thinking about doing a unit on coding, the students immediately cheered. However, when the students found out that my idea of coding was block style the cheers turned into groans.

“Mrs. Renda, we do block coding all the time. We want to do more, like, create a video game or a website or an app!”

So we had a discussion based on what the students were interested in and what they already knew or wanted to know. We narrowed it down to HTML, CSS, and Javascript.

My brain:  “What just happened? I was okay with block coding but I didn’t even know what HTML stood for until a student in the class told me. My brain reminded my lungs to breathe. How do I proceed?”

Rule #1:  Learn with your students

I am a teacher, and no I don’t know everything. Say this to yourself in the mirror, and believe it! Yes, we are expected to know our content area but technology might not be your jam. That’s Okay! This is a great opportunity to teach a growth mindset, resilience, and perseverance. Be honest with the students.

“This is new to me, but I thought it would be exciting to learn it together. I am sure that some of you probably know more than me.”

This leads me to the next rule.

Rule #2:  Lean on the experts

When I say ‘experts’, I mean the students. Yup!! Giving students the power to become the ‘teacher’ is a sure way to go. By having your advanced students help with FAQs or your questions that are very frequent, you have your own personal IT department to help you along the way. Give the students ownership of a bulletin board to display how-to demos or those FAQs. This technique works twofold, not only is the student helping others (and you), but they are taking a leadership role and feeling empowered.

So you are learning along with the students, have your experts picked out, but now what?

Rules #3:  Interest drives the learning

Give the student the steering wheel! it’s okay, let go, give up control. Let the students figure out the gas pedal and how to control their speed. Letting them take the wheel sort of speaking will give them autonomy, ownership, empowerment, excitement, and the drive for hard play. You will love it when the students turn on their headlights and start driving on their own.

If you are interested in learning more, tune in to our upcoming webinar (or watch the recorded version) where we will share other practical tips and evidence-based methods for teaching students code. In the webinar, we will discuss the PRIMM method, Pair Programming, and how to use Worked Examples with code comments. All previously-recorded webinars can be found here on our website.

about Allison
Allison has over a decade of experience in the classroom as a teaching assistant, an AIS (Academic Intervention Service) math teacher, a high school business teacher, and most recently a digital literacy teacher.
Like most teachers, Allison wore multiple hats. She was also the district-wide technology coach and trainer. She brings with her multiple certifications such as Google Educator and Trainer. Allison believes that technology is a powerful tool that all students need to be taught how to use safely, respectfully, and responsibly. She feels that when these values are followed, students will be more successful in life.

other posts in

Real-Life Work Experience For High School Students

A high school internship is the best way to gain work experience, develop your professional skills, and fast-track a career.

Fill in this form to learn more about how students will benefit today!