A Workshop from Scratch

I had always wanted to do something related to teaching. In October of 2015, I was lucky enough to have gotten an opportunity of conducting a workshop. The workshop was for 8th Grade children in RN Podar School, Mumbai, and it was a part of a yearly event called “Makerthon”. I grabbed my work colleague Satej, to do the workshop alongside me.

Planning

We started jotting down several things we could teach, varying from Logo, to creating music with code, to collaboratively building something in Minecraft.

We ended up picking Scratch. Scratch seemed like the best tool to introduce programming concepts to children without boring them to sleep (I’m looking at you, Java). In Scratch, you use blocks (similar to Lego), and combine them to make complex programs. Looking back, I think it was a great choice.

https://cdn-images-1.medium.com/max/1200/1*QdclvwwATaknAy1AYTll2Q.png

Scratch Interface

We wanted the kids to make a game, so we borrowed from a Flappy Bird clone from the Scratch website and modified it. We also extracted the sprites (the art for the bird, background, ground, etc) from the game for the students to use. We also printed some handouts which were reference guides the students could use once they go home.

I had never done a workshop before in my life, Satej had experience with workshops, but that was restricted to technical topics for college students, and we were about to do a workshop for 220 students from the 8th Grade. We were excited and terrified.

https://cdn-images-1.medium.com/max/1200/1*96NqMoQpYpXn59fqx5ITRw.jpeg

Students made these posters for the workshop

Day 1

The workshop was split across two days, with two sessions, each of three hours. Satej and I groggily reached the school at 7 AM. Being programmers, we’re nocturnal beings, and we were out of our natural habitat. We quickly found the computer lab with the help of some of the faculty in the school (who were fantastic), and started setting up the computers there.

Soon enough, it was time to begin. We watched as the students scurried through the door into the lab, there were about sixty of them. We waited for them to settle down, patiently, until everyone was curious enough to be silent.

Session 1

First thing we had to do, was be accepted by the students as the cool teachers. Once you’re a cool teacher, you’re on their side, and you’re not scary. So we started off by asking questions about programming, and we got textbook definitions from the students. It was just another subject, it wasn’t fun. We asked them what language they were learning, to which we received a lukewarm response of “C”.

C is a poor choice for anyone who wants to start programming. We followed up by asking them if they liked it, or they had fun with it. We were met with blank faces, and no one said a word. We knew exactly why, and we had to say what every student was thinking, “It’s really boring, isn’t it?”, the whole class went in an uproar of approval and we knew we were now the cool teachers.

https://cdn-images-1.medium.com/max/1200/1*HZWIc5OppsDjxxgcwqThzw.png

A screenshot of the compiler used in almost all schools for teaching C

We wanted to break the notion of programming being boring. We told them we’re going to be teaching them to make a game, in this scenario, Flappy Bird (which everyone was familiar with) and they were excited. We had broken up the game into parts, and were going to teach the kids how to make the game bit by bit.

The first session, to be honest, was a little bumpy, we started late, and we weren’t completely confident of the format. Also, we told the students to exclusively use our sprites, which we realized was a mistake, because kids always want to be creative in their own way, and restricting them to boundaries was never a good idea. It also got difficult as time went on as the students wouldn’t pay attention when we were teaching. Some of the students weren’t in the main lab, and were in an outside adjoining area, and that made it difficult to communicate with them.

But overall, it was good, the students enjoyed the session and at the end of the session we made everyone make an account on the Scratch website and upload their creation so they can share or improve it after the session.

Once the lab was empty, Satej and I had a sit down. We were tired. We realized some of our mistakes and decided to rectify them in the next session. We decided to show the students the inbuilt collection of sprites, and they could use whatever they wanted to, as long as they would use those to make a Flappy Bird-like game. We improved the format, we would first teach a single part, explain the concepts and steps of how to achieve it, and then let the students do it whilst we’d go around and help them. We also decided to make sure that all the students would be in the main lab, and if there was a lack of computers, share with their friends, which was even better because it’s more fun for them.

https://cdn-images-1.medium.com/max/1200/1*O5aYHHsW3_4hcPXMC1P09w.png

Some of the sprites in the inbuilt collection

Session 2

Letting the students use any sprites they wanted to was an excellent idea, they were more invested in the game they were making. The format was also working well, it gave us time to teach and the students to experiment whilst we helped them out with any of their problems. The second session went swimmingly and we were very satisfied with the end outcome. All the games students made were differently in their own way.

After that session, we had another sit down, and we were exhausted. We decided to make some more improvements. We wanted to give the students even more freedom, so they could make any kind of game they wanted to, as long as they used the concepts we taught them. We made it very clear that the students must pay attention when we’re teaching, but they could make as much noise as they wanted to when they’re working on the game.

Day 2

The second day was much smoother, we knew what we were doing, everything was setup, everything happened on time. Both sessions went smoothly, the students had a lot of fun, a lot of them even came to us and thanked us personally for the workshop and told us how much they enjoyed it.

Giving students freedom allowed them to make games of their own. There were different renditions of the Flappy Bird game. A wizard dodging lightning, a fish maneuvering around sharks, a spaceship flying across asteroids, the combinations were all over the place. There were also games that involved more complexity, (which the students figured out themselves) like having multiple players using the same keyboard and a fighting game between two characters.

There were dragons, cats, bats, sharks, divers, flying hippos and all kinds of crazy things. It was amazing.

After the second session, Satej and I collapsed on the chairs of the lab. The lab wasn’t empty yet because the students were told to wait there. However, very quickly the students started getting fidgety and single student asked his school teacher, “Sir, can we do Scratch?”, and very quickly the entire class started chanting variations of the same. It was total chaos. As much as we felt bad for the school teacher, we felt that we had accomplished something.

Once the lab was empty and we had to wrap up, completely exhausted, I asked one of the teachers, “How do you do this every day? It’s amazing.”, to which he chuckled in response.

In conclusion

We had a great experience teaching the students, they were fantastic. The faculty of RN Podar stayed with us through the workshops, making sure the students didn’t make too much of a racket. Our organizer had a very hands-off approach to the whole thing, that let us be creative with our workshop. If given the chance, I’d absolutely do it again.

I believe that, if I managed to make even one of the 220 students to take up programming as a hobby, I’ve accomplished something.