What teaching coding to 300 middle schoolers taught me.

Subscribe to my newsletter and never miss my upcoming articles

For the past 3 months, I've worked with a team of 4 people to design a curriculum to help 300 middle schoolers start their coding journey. Most of them had little to no experience with programming.

We knew this was going to be a challenging task, but we were certain we could do it.

That is why we decided to teach them in a way which most programmers learn:

  1. The students would daily watch a video tutorial and follow instructions in it
  2. They would then solve challenges curated by our team
  3. Every weekend a doubt solving session was held wherein the concepts were quickly brushed upon and you guessed it, doubts were cleared

Now here are my main takeaways:

1. Teaching takes patience, A LOT OF PATIENCE!

Especially younger students require spoon-feeding at times. Resources which were given to them had to be boiled down enough for them to grasp it.

2. Having clear fundamentals is very important.

Basic things like knowing what is an integer, string, variable etc. are very important, otherwise programming at a later stage becomes very difficult.

3. You must keep your expectations low: Don't expect to make AAA games after just a month of programming.

To put it bluntly, programming is very very tough. Takes months of learning to get good at it and there is always something new to learn.

4. Having smaller more achievable goals helps in learning things faster.

This also makes you more confident.

5. Teach your students how to ask doubts and google things

Before asking doubts one must give a detailed explanation as to what they have tried and have they tried searching it up on the web?Bugs are inevitable and a coder must learn to google stuff when things don't work out


All went well and in the end we were able to help all the students to get a feel for what programming feels, our goal was not make full-stack 12-year-old prodigies who work at Facebook but to get them excited about programming and I feel we achieved our goal very well.

Hope you found this post insightful. Have an awesome day, Cheers.

Pictures from: Unsplash

Interested in reading more such articles from Pratham Prasoon?

Support the author by donating an amount of your choice.

Recent sponsors
Prateek Aher's photo

You did good work Pratham. A year ago I was teaching programming to a junior in my college too. He was showing all signs of the middle schoolers you worked with. image.png

Omotola Shogunle's photo

Definitely can relate to this, did some teaching over the summer as well and it definitely took a lot of patience, but in the end it was a very humbling experience because of how eager the kids were to learn and how much growth I noticed from my own end

Ameen's photo

cool 👍👍

Chris Bongers's photo

That's amazing! thank you for doing this and writing it down! 🤟

Pratham Prasoon's photo

Glad you enjoyed it :)

Sai Laasya Vabilisetty's photo

Amazing pratham!🤩🤩

Ritvij Kumar Sharma's photo

Amazing post Pratham Prasoon! This is a great post for people who are gonna be teaching to code for the first time. I also learned all of this while mentoring students (special appreciation for the 5th point :D).

Tapas Adhikary's photo

Teaching is an awesome thing.. I enjoy doing it whenever gets an opportunity to do. Your points are just bang on.. Pratham Prasoon! Thanks for sharing.

Victoria Lo's photo

Thanks for sharing your learnings. It sounds like an amazing experience!

Apoorv Tyagi's photo

A great Post Pratham. Loved it !!

Peter Thaleikis's photo

I've attempted to teach people (adults) coding and noticed I move waaaaay too fast for people without prior knowledge. I had to slow it down massively to make it work.

Dinys Monvoisin's photo

Was building game part of your curriculum? Because this how I got hook to programming, I wish I knew that early.

One last thing did you give the students the next steps to undertake from your initiation?

Pratham Prasoon's photo

They had some experience with scratch to the thing I would teach them next would be Pygame - Zero.

Our team had given them a YouTube series for the same and we're still solving their doubts, you can try the same.

Some students have also tried to make apps using QT and Kivy.

Dinys Monvoisin's photo

The best thing that you can teach someone learning programming is that everything that you see is likely to be a line of code. However, there could be layer of complexity behind.

Pygame -Zero is not bad, frankly speaking I just heard of it.

Pratham Prasoon

Anonymous's photo

Pratham ne dislike Krne bola tha😂😂