by Rita Ellis and Rachel Poliszuk
This school year, as part of our practicum work during our teacher education program, we decided to start a coding club at our school site. We had learned about coding during our mathematics methods course and this sparked our interest. Like many teachers, whether experienced in teaching or just completing their pre-service training, we began this journey with limited practical knowledge of coding ourselves; this was part of what attracted us to this challenge. Another factor that contributed to our desire to start this club was belief that coding is a valuable 21st century learning skill. It is a skill that our students will likely benefit from since recent research has linked coding to helping children develop improved mathematics outcomes. By sharing our experiences, our intent is to develop teachers’ interest and confidence in creating their own coding clubs for students at their schools.
Our coding club ran during second nutrition break every Tuesday. Students initially learned about the club from us and through our school’s social media. We announced the start of the club to each of our respective practicum classes and posted on the school twitter page that each homeroom reads at the start of the day. We then organized an information session where students asked questions and signed up to participate. We generally started our sessions by having a tutorial in Scratch or Tynker, that introduced a concept through a game. We used a combination of resources from websites such as Tynker.com and Scratch.mit.edu and Code.org for the majority of the sessions.
When our students arrived, they automatically grabbed a Chromebook and wanted to get to work! We are fortunate to be in a school that has so much technology for the students to use. There were enough Chromebooks and iPads for each student to work independently. We plan to introduce the Spheros (programmable robots), recently purchased by our school during future sessions. While one of us was leading, the other was continuously circulating. Circulation is good because it allowed us to have authentic and spontaneous discussions about coding that we can also share with the larger group.
We are most impressed with the engagement and perseverance that the students had, despite their lack of background knowledge. We admire their eagerness to learn by the questions that they’re asking us and the questions that they’re asking each other. What we’re finding the most interesting is how much problem solving and collaboration we saw in our coding club. In this aspect, integrating coding into your classroom or your school helps to support students in their development of both problem solving and collaboration skills.
We have learned some lessons AND we have learned about coding. These are some of the lessons we learned:
Shorter introductory activities. While circulating during the club meet, we noticed that about half of the students preferred to follow along with our tutorials, while others enjoy doing their own coding through activities in Tynker or Scratch. Consequently, our tutorials got shorter in length so that students could be coding on their own devices and collaborating with their peers rather than only listening to or following us!
Make it relevant. Since the beginning of our club, we’ve been intentional about making the abstract concepts of coding more tangible for the students in our coding club. One strategy has been integrating movement to help demonstrate mathematical concepts required for coding activities. This strategy tends to make coding and math more tangible. For example, while doing a mini-tutorial on how to make shapes in scratch, we had students to direct our volunteer at the front of the class to walk in a square. Another method has been to draw out concepts and write out code on the whiteboard.
Build it and they will come. What surprised us the most was the positive response that our club has received from the staff and 20+ students who participate in coding club each week. The students’ enjoyment for coding has caused a continual increase in new members, so our club recently relocated to a more spacious classroom. We have also extended the time of our coding club for the full nutrition break. We are very pleased with the turnout since this idea started out as a humble endeavor, in which we knew we would be learning as we go.
Unplug. Unplugged activities introduce coding concepts without using a computer. More opportunities for unplugged activities early on would have been helpful. They are a great way to reinforce the concepts through vocalization of the learning process and kinesthetic movement. It also removes the “language barrier” of computer language. In one session, we taught the students about conditionals with a deck of cards. We began by writing a simple conditional code on the board, then displayed a card to the class. Using this code, the students clapped if the card was lower than 5, or else they all said “awwww” if the card was 5 or greater. The examples on the board became progressively more complex. We altered these lessons from course 2, stage 12 on www.code.org/curriculum/unplugged. After this interactive activity, the students were given the opportunity to work with a partner to create their own conditionals with cards. This activity proved to be extremely successful for students to grasp the concept of conditionals and apply this knowledge when coding on their devices.
Opportunities to write code and not just use code. Moving forward, we’d also like to include more opportunities for students to write their own codes rather than using existing activities. Students unanimously said that they would like to create something on their own with their coding skills that they can share with their peers in the group. Part of our limitation here was our own limited understanding of coding.
 Calao, L.A., Leon, J.M., Correa, H.E., Robles, G. (2015). Developing Mathematical Thinking with Scratch: An Experiment with 6th Grade Students. EC-TEL 2015, p 17-27.