The following is a guest blog written by a CodeMonkey Teacher Ambassador
I teach computer science at my middle school. The class isn’t an elective; I teach a somewhat diverse group of 7th-grade students: some love school, others struggle, some are very excited to learn coding, some have little interest in anything to do with computers; some view themselves as creative while others do not. I gather this information about my new students as they fill out an online questionnaire on the first day of class. The questionnaire helps me to understand the challenge ahead of me. I want all of these students to have a positive experience in my class. I want to surprise and spark interest in those who entered apathetic or fearful of the class, and I want to nourish and deepen the excitement of those who entered eager to learn how to code. In other words, I have my work cut out for me.
I have been teaching computer science in some form for about 8 years. I have explored many different tools, courses, and languages, and I have carefully observed how different tools and projects affect the students’ interests. Some of the project and/or tool features I think middle schoolers thrive on are:
- The ability to create their own finished product. For example, mobile apps, art scenes, games
- Completing a program that includes graphic design and/or artistic ability
- Fun game-oriented, self-paced courses that level up to challenge all skill levels
- Activities that can be worked on with partners and/or teams
- Projects that can be shared with a wider audience at an exhibition or open house
Currently, I am teaching a few different groups of students using three different programming tools. I use CodeMonkey’s Banana Tales course to teach my zero-period Puzzle Math and Coding Class as well as a group in my school’s makerspace club. The kids love the immersive environment of Banana Tales: the impressive graphics, music, and humor built into the challenges. Although the students have their individual accounts and exercises, it becomes a group effort for some challenges. Kids are laughing, sharing, problem-solving, and showing persistence as they advance through the course, all while learning increasingly challenging features of the popular Python language.
Students Learning Python by Playing CodeMonkey’s Banana Tales
In my general computer science course, I teach students to design and code apps, and I teach them Python Turtle. I enjoy teaching these two topics for a couple of reasons. One is that we use block coding for app development (MIT App Inventor) and we use textual coding for Python Turtle. I want to give my students experience in both types of environments. Secondly, both modalities offer the opportunity for a creative, individualized final project. Students create both a final app that they can optionally work on with a partner and a final individual Python art project. Both projects have rubrics, and in addition to assessing process and coding style, the rubrics reward creativity and originality.
Student Art Projects Coded in Python
As time goes on, I am finding that some students are coming to my class with more experience from their elementary years. This is another reason why it is important to have open-ended projects as well as coding courses/tools that have a high ceiling. I want to keep fueling their interest with new experiences and challenges.
Students of all levels revel in the chance to display and explain their projects to an audience. On our exhibition day, we organize the class to look like a trade show. I invite parents, administration, teachers, and their peers to come through the class. The coding students demonstrate their apps and show off their Python art projects. It is rewarding to overhear the animated, young computer scientists explain their design processes, and to hear their comfort with vocabulary such as flowchart, algorithm, syntax, and user interface during their presentations.
Students Demonstrating Apps at Exhibition
On the very last day of class, I had my students complete another online questionnaire. The completed questionnaire included student comments like: “I really enjoyed making the apps, because we had a lot of freedom with what we wanted the app to look like, and the way it worked,” “The teamwork was fun because before coming into this class I wasn’t very familiar with coding and me and my friends had a fun learning experience,” “I really enjoyed creating my art project and having creative freedom with it,” and “This class was pretty fun and I liked how we got to make apps and show them to a bunch of people.” For me, this feedback reinforced the need to continue to offer and extend open-ended projects that allow freedom of expression and ownership, paired programming, and the opportunity to showcase student work to others.
ABOUT THE AUTHOR:
Pam Rissman is a Middle School STEM teacher from San Jose, CA. She is a CodeMonkey Ambassador. You can follow her at @pperfectsquares.