Code Combat – a Programming Game for Intermediate and Secondary Students

A programmer’s wife approaches him on a Saturday morning and says, Honey, I need you to go to the store and buy a jug of milk… And if they have eggs, buy a dozen.” The programmer returned home with thirteen jugs of milk.

While humorous, this joke displays one of the hardest aspects of programming to learn: computational logic. As computer science and programming begin to encompass more and more of the new curriculum in the coming years, the need for beginning and entry level teaching tools will become more and more prevalent. I think I may have found one that can effectively be used alongside traditional education methods called Code Combat. Code Combat is an online educational game that uses elements of RPG’s and dungeon crawlers to teach students about computational thinking. The seemingly strange logic and syntax rules of basic coding appears to be the most difficult concept for students to grasp, and this is a great tool to build that knowledge and provide fun context to dry and abstract subject material.

My personal experience of programming courses have been incomprehensible walls of jargon, inexperienced teachers, bare minimum understanding, and final project program that can sort numbers from smallest to largest. Code Combat gives students a chance to learn computational thinking, basic logic, and a small amount of programming skill through traditional video game elements. Video games have become an important aspect of modern Canadian society, with roughly 54% of Canadians defining themselves as “gamers”, playing roughly 2 hours and 44 minutes per day on average between the ages of 15 and 24 (Statistics Canada, 2010). Video games are different compared to other forms of media since the element of interactivity allows for many instances of learning experiences to arise. Students can see their character interact with objects on the screen and immediately adjust and iterate on their codes in real time. While many consider video games to be “play”, there is a growing body of evidence to suggest that play gives students the chance to apply knowledge that they have learned in an unintimidating  setting.

Code Combat can be written in Python or Javascript. Python is easier to learn and can be used on most operating systems, while javascript is a little more difficult but used frequently on devices and web pages. Additionally, higher level courses are available which teach students about website building in HTML 5, but I wouldn’t use it with a class much younger than grade 10 due to the complexity later in the level set. Let’s go over what Code Combat looks like.

Level 1. Notice the intuitive and easy interface.


To the right is the code window where students type their code. Notice how it is set up exactly like any script-writing program such as Jcreator or Notepad++. The lines of code are numbered and all commands are processed in numerical order. The methods used are outlined in the middle so students know exactly how to type them out. They can also be highlighted and copy+pasted as well. To the left side is the game screen. Since we only have hero.moveRight(); in our code, it shows the path the character will take. There are spikes on the walls, so an incorrect movement will damage the character and fail the level (though “failing” just means you hit the reset button). At any time, students can click the “hints” section if they get stuck, meaning that every student has the capacity to succeed regardless of academic level (these can be disabled in the “class settings” if you want to challenge them).

I feel like the most appropriate use of this program is to do a brief lesson on the vocabulary and computational logic involved, then assigning a couple levels relevant to the lesson. The scaffolding of Code Combat works quite well, introducing basic methods first before moving on to loops, like the level where you have to remember where the fireballs are going to come out and put a series of movements into a loop to dodge them. Later, students will have to program their character to attack if confronted by an enemy or else continue as normal, before ending with a boss that attacks in a predictable pattern.

Using a “while” loop to dodge fireballs in level 8.

Additionally Code Combat has level sets revolving around creating a game (eg. Spawning obstacles and scenery, spawning enemies, setting win conditions, etc – pictured below) and creating a website (similar challenges but with HTML).

Spawning obstacles at specific x-y coordinates to block incoming enemies. Students should be taught how to use cartesian coordinates before attempting this, but it shows how computers actually view the “levels” presented to them; as a collection of squares, sprites, and data points.

The strength of Code Combat is its ability to teach fundamental concepts of programming in a setting in which most students are familiar and unthreatening. I don’t expect students to become star programmers, but I do expect that they learn basic fundamentals like: the importance of syntax, the importance of order, loop logic, problem solving, and the trial-and-error method that often accompanies problem solving within a computer science setting. Another strength is that you can create a “class” to track your student’s progress and assign specific levels or challenges, including some co-operative ones where two students must work with each other to complete the level. This is as simple as making a free account and adding student emails to it, though you may want to use throw-away emails since the program is based in the United States and is probably not FOIPPA compliant. This is what I think separates this game from others similar to it – the polish, ease of use, pace of scaffolding, level design, and the crucial collaboration component.

Some weaknesses of the program include the lack of FOIPPA compliance which may make using the classroom feature difficult, the lack of supporting course material or vocabulary to set up the concepts in each level (though this is why I recommend its use alongside a traditional lesson format), the initial learning curve involved, the limited number of programming languages to choose from, and the problem of motivation – not every student enjoys games like this.

Overall, Code Combat is a great tool for structured play involving programming and computer science concepts and provides context to very abstract subject matter, though it would need to be used to supplement and reinforce what is learned in class and should not be used by itself.

Using a DnD style Character Sheet to Teach Students About Character Traits

Using a DnD style Character Sheet to Teach Students About Character Traits

I’m always looking for ways to incorporate my personal nerdy interests into my lessons. The reason for this is twofold – I enjoy talking about it, and if I enjoy talking about it students enjoy hearing about it. Do you remember any classes where the teacher seemed utterly uninterested in the course material? Did that make you interested in the course material? Probably not. Now how about the biology teacher that talked breathlessly about their favorite aspects of amphibian evolution? Still probably not, but you have to admit you were a lot more engaged than in the previous example.

I wanted to introduce a class of Grade 7’s on my practicum to aspects of character, specifically character traits. Dungeons and Dragons is much more than just a nerdy activity. In essence, you use dice to roll a character, then play out a sort of fantasy or video game plot role playing as that character with your friends (who are also role-playing their characters) while the most responsible friend sets up the story and challenges you face. One of the great things about Dungeons and Dragons is the randomness – because of the element of dice rolling, neither the players nor the dungeon master know how the story is going to play out. Many DnD players will tell you that rolling a character, creating a backstory, and role-playing the hodge-podge of random attributes is what makes DnD the greatest game ever made (*citation needed).

I created a simplified template of a character sheet, using the emotions from Pixar’s Inside Out (Anger, Joy, Fear, Sadness) as the emotional dimension of a character (scored from 1-6), and the classic DnD attributes (Strength, Dexterity, Fortitude, Charisma, Intelligence, and Wisdom, scored from 1-6) for the physical dimension of the character. I explained each of these attributes in detail and then told students they were to roll a 6-sided dice for each of these. Interestingly, students were easily able to grasp that a character who scored 1,1,6,5 in the emotional aspect was really a depressed and anxious person whereas a character who rolled 6, 6, 1, 1 was a fearless, brash, and bold person. Likewise a character who rolled 1, 1, 2, 6, 6 was more of a nerd who would use brains over brawn to solve problems, and a character who rolled 6, 6, 6, 1, 1 was a brawny meathead who would use their superior strength to solve problems. I also wrote up 20 random backstory attributes to be rolled with a 20-sided die (they love rolling the D20). I included alignment as well, whether or not the character was good or evil. I explained it fairly simply using comic book heroes and villains.

Hero Alignment.png
The first half of the lesson was devoted to rolling and generating the character while the secodn half of the lesson involved me providing three writing prompts on the board. The students would then choose a writing prompt and explore their character. I used the character’s birthday, daily routine, or how they would deal with someone cutting in line at the supermarket, but you can pick one that tickles your fancy. I found that students needed to be told how to “roll” an attribute, but they had no problem connecting numerical stats to qualitative personality traits. The stories were pretty fantastic. Keep in mind this is a creative writing activity, not a mechanics writing, so don’t assess too heavily on their spelling and grammar. It’s more about the story and how they can explore a character they generated randomly.

While optional, I included a space for the students to draw a crude version of their character. I let them have as much space as they wanted to try to visually represent their character’s attributes.

Link to Googledoc with  worksheet:

Links to Junior High Resources

Here are some links to resources related to the foundational lenses and teaching pedagogy for Junior High Students. List compiled by Myself, Emily Cantin, Emily Chretien, Madison Martin, and Karin Solde.
A great resource aimed at teaching middle to junior high school students about
genocide in a way that contextualizes the atrocities. I like it because it presents
historical context and talks about genocide as a global and historical human tragedy.
Also provides a number of lesson ideas.
Educational site with lesson plans meant to teach global interconnection, privilege,
philanthropy, and charity to junior and high school classes. Doesn’t teach from a
place of apology or pain but from a duty to help those less fortunate.
TeachUnicef provides topic materials on the subject of global citizenship for grades K-12 allowing teachers to browse unit and lesson plans in either Spanish or English. Unicef states that lesson in global citizenship provide foundational concepts that ‘springboard’ investigation into further themes of global/social activism.
This lesson plan focuses on grades 6 to 8 and takes a social studies approach, particularly geography, to investigating the questions: “What does it mean to be a global citizen?”. The class content focuses on research of major countries, regional development in Canada/World, and building map skills.
A cross-curricular approach allows citizenship to be incorporated into other lessons as and when it arises. This site offers articles such as “We are failing poorer students”…These articles can be a starting point or hook for starting a project or inquiry based learning.

This is a PDF with some ideas from the Education Council of the Netherlands. I have included some quick reference pages.
This website has a huge amount of resources for teachers in regards to social justice and
global citizenship, including setting up a global cohort for teacher candidates, and covers
topics such as environmental education, human rights, international development, and peace and justice. Teachers can develop lesson plans and resource kits around these issues, and submit them to share with others.
This a great lesson plan on which to use as a foundation and build upon. Students start by reading through an issue of Canada’s History (but it could be by discussing current events on the news, etc.), then brainstorm issues experienced in developing countries. Students then learn about Canada’s current role in International development by exploring Canada’s International Development Agency. Students then write a letter to the Minister of International Cooperation, expressing their support of a program that appealed to them. Students then determine if issues explored occur in their own communities (poverty, hunger, etc.), then research local charities or organizations dedicated to addressing the issue(s). Finally students choose an organization to support, and organize a social
justice activity (fundraising, etc.). This would be a great lesson plan for grade 7-12 as students have the foundational knowledge of research, and should be being encouraged to participate in actions that address social justice and global citizenship education before graduation.
This website is useful for teaching world statistics by reducing the population of the world to 100 people. This resource can be used for highlighting issues of gender, race, sexuality, ethnicity, religion, social class, and location through simplified statistics that are tangible for middle school aged students. I would suggest using this at the beginning of a unit on global citizenship or to introduce subjects like poverty, water quality, literacy, etc. If you explore the website a little further, there are also lesson plans available to download under the tab labelled “schools.”
This link connects to a teacher’s blog with resources that are also useful for teaching world statistics by reducing the world to 100 people. This blog has links to other websites, as well as infographics and videos that are not available on the website. The videos and infographics are particularly helpful for visual learners in your classroom, and may inspire creative projects. The content on both websites connect to social studies as well as mathematics.
Almalgamation of Canadian aboriginal resources spanning all curricular areas. Moreseo
geared towards middle-high school but includes resources for all grades.

Educational Philosophy Essay

My Philosophy:

There are many factors to consider when articulating a teaching philosophy. For starters, you rarely find you fit neatly into one category, but rather share traits from many different categories. I take the “Jeet Kune Do” approach to my ideologies, in that I don’t consider myself a subsection of a particular philosophy but a collection of all the ideas I consider to be the most sensible. With that in mind, I consider myself to share roughly equal portions of perennialism, progressivism, and social reconstructivism, with less emphasis on essentialism. I base my educational philosophy on constructivist principles, in that all students build their knowledge and world view from their previous experience, both in terms of academic knowledge and social and global environment (Powell & Kalina, 2009). I feel that no one worldview is inherently correct and that we should be emphasizing the role of multiple perspectives and evidence when evaluating our beliefs. What does this all mean?


Perrenialism stems from essentialist principles, in that there are a certain set of skills and academic knowledge that all capable and productive members of a society need to know, with rigorous standards and national curricula. But while essentialism focuses more on facts and knowledge, perrenialism places more emphasis on principles. Also moreso than essentialism, perennialism places emphasis on “human” subjects such as history and art, regarding all knowledge as a human achievement. I feel that in the case of math, reading, writing, and to an extent Social Studies can be taught effectively using perennial principles because these skills are a necessity in this society.

There are weaknesses though. While I believe that the teacher should take a leading role in the classroom, I believe this role should be to facilitate the acquisition of knowledge, not necessarily to espouse it. Additionally, I feel like technology has made this approach obsolete for other subjects that deviate from this “essential” skills list. Still, much of the perrenialist approach smacks of “sage on the stage” style of teaching, where research states that Constructivist methods taught with the teacher as a facilitator are more effective.

Social Reconstructionism:

Social reconstructivists seek to change society through the awakening of critical thinking skills. Reconstructionism and critical pedagogy view teaching as a political act and teachers as agents of social justice and societal change (Boylan & Woosley, 2015). Involving critical pedagogy in the classroom means being critical of society, media, and the political process. I believe we should challenge our student’s traditional views of the world; religion is still used today as a tool of societal control, the media portrays an inaccurate version of the truth, and inherently sexist or racist ideologies hold us back as a species. Many systemic forms of oppression still exist in our society and if we want change for the better we have to make our students aware of injustice and give them the tools to speak out against it.

I feel that as teachers we do hold a position where we have the power to change society at the source. Teachers have the power to heal what damage inherently sexist or racist ideologies cause by examining our society within a critical context. Eliminating the divides between race, religion, and SES between our students is ultimately beneficial for society as a whole. While I see the value in teaching students to have an active role in society, I also see the potential for misuse and indoctrination when these concepts are taught to a student who may not be able to understand such concepts as sexuality, rape culture, and genocide. Indeed to Rob Moore (2000), many within the movement start with an analysis of society that may not be objective or universal to make their points.


Progressivism states that we should focus on current research, present experience, and above all the child when designing our classrooms and curricula (Labaree, 2005). While rigid structures work well for memorization and gathering results, much of progressivism is rooted in constructivist thought, our societal conventions of morality, and present experience. Progressivism decouples education from higher education, in that learning takes place for its own sake rather than to prepare students for university. In the classroom this is seen in hands-on, practical learning methods like inquiry and project-based learning, personalized learning goals for different students, integrated curricula, and critical thinking. Importantly, progressivists also teach inclusivity and social responsibility.

I see progressivism as the most definitive example of my beliefs. It uses knowledge as a means to an end, bringing many of the essential skills such as critical thinking and personal growth found in perennialism. While I do wish to reconstruct society to an extent, I believe fervently in the right for each individual to walk their own path. Not every student will share my beliefs about society, and not every student will be a champion of social justice. But while progressivism doesn’t emphasize critical pedagogy, many of the elements are found in progressive methods. Personalized educational goals take into account the relative skills and personal background of individuals regardless of race or sex, and the critical thinking, integrated curricula, and social responsibility reflect many of the same values found in social reconstructivism. Crucially, I feel like the theories of progressivism reflect a greater emphasis on empirical evidence as the driving force whereas many aspects of critical pedagogy (specifically the social justice side) has the potential to produce a black and white viewpoint of class and society. In brief, progressivism combines the constructivist approach to society and learning while also emphasizing critical thinking and an education that is tailored to the student, making it the most dominant aspect of my personal teaching philosophy.

Boylan M., Woosley I. (2015) Teacher education for social justice: Mapping identity spaces. Teaching and Teacher Education. Vol. 46 pp62-71.
Labaree D.F. (2005) Progressivism, Schools and schools of education: an American romance.
Paedagogica Historica. Vol 41 pp 275-288.
Moore R. (2000) For knowledge: tradition, progressivism and progress in education – reconstructing the curriculum debate.
Cambridge Journal of  Education. Vol 30, no 1. pp17-36
Powell K.C., Kalina C. J. Cognitive and Social Constructivism: developing tools for an effective classroom.
Florida Atlantic University. Vol 130, no 2. pp 241-250.

Media Misinformation and the Court of Public Opinion

Read the above story. Go ahead. I’ll wait…

HOLY COW! I can’t believe such a horrible teacher was ever allowed to hold a teaching certificate! Students were lined up and hosed down like fresh convicts at the maximum security prison. Worse, they were not allowed to opt out! How would you feel, if you hosed down during a mandatory activity with no prior warning and forced to miss math class to go home and change. Worse still, 2 students were injured! What kind of teacher does that woman claim to be, and above all what school would sanction or endorse such an activity?!

Except you aren’t getting the whole story. Certainly, from the cbc article it would seem that this teacher deserved every hour of her suspension. Reading the comments on the article shows that many people feel similar to my statement above, which they should, if the story played out as the cbc article entails. Schools do have a dark history of unchecked abuse, tolerance of bullying behaviour, and a value system that emphasized control and conformity above all else. From the visceral emotions displayed in the comments it appears that many Canadians grew up in through that history and still harbor resentment from those days… but that’s not the case here.

Fortunately for me, one of my fellow teacher candidates lived in Burns Lake and had the privilege of being in her classes. She was utterly shocked and appalled at the one-sided depiction of an acitivty she remembers fondly, and directed me towards a statement made publicly on facebook by the teacher’s daughter (

“EDIT: Rayanne is not allowed to make any sort of public statement about all of this, so I’ve made this post public in hopes that people will share it far and wide!

OK. I’m not even going to share the original article here, as I refuse to amplify such biased and irresponsible journalism. I am just going to say that my mother Rayanne Charlie is one of the most dedicated, hard working, inspiring and talented teachers that I have ever met, or had the opportunity to learn from. She works tirelessly in her school and wider community to create positive and lasting change among rural youth and young adults, through her pedagogy and curriculum as well as facilitation of larger projects such as Roots of Reconcilliation, a yearlong intensive educating teachers, administrators and support staff as well as students on the impact of residential school systems on past, present, and future generations.

The article that came out today (on CBC and other digital publications) in regards to her recent 1 DAY suspension was sensationalized clickbait, making a tiny molehill into a giant mountain. I am sincerely disappointed in the reporters, editors, and the participating media organizations that such a poorly researched article was allowed to be published at all.

Ethical journalism 101 involves contacting your subject to inform them of the story, reaching out to directly interview voices on both sides of your angle, and supporting your angle with clear and thoroughly researched context for all of the facts – especially crucial in the age of digital outrage and viral news.

None of these things took place here.

This is a game that my family plays during our yearly camping reunions – everyone from aunts and uncles to little kids – in which if you get caught, you get a silly punishment. It’s been a family tradition that I grew up looking forward to every year since I was a little kid; and is always played in good spirits and in fun.

If you know my mom and would like to write to the CBC to lodge a formal complaint and provide your story of how my mom touched your life for the better, contact me and I will give you the relevant email addresses, and some advice on how to format your letter to ensure that it is properly heard and acted upon. Letters can be written on or off the record, your choice.

My mother has consistently inspired me to connect activism to community through the arts. She is the reason why I do what I do, and continues to have a huge impact on how and why I do it.

I am standing behind her 100%, and hope that more light will be shed on the overwhelmingly positive and impactful work that she has done. I encourage others to do the same.”

What follows that post is a collection of comments from numerous past students condemning the horrible and shoddy journalism and standing in solidarity with her daughter’s statement. As it turns out, this activity takes place nearly every year and has taken place for the last decade. The activity is NOT mandatory. Students can withdraw at any time or flat out refuse to do it and are explicitly told this in the weeks leading up to and at the start of the activity. In fact, students confirmed they received a slip reminding them to bring an extra change of clothes if they want to participate. The spraying is a silly punishment, and since the teacher participates in the activity with the students, the teacher is not immune from beign sprayed herself. The 2 injuries described were accidents which occurred when students were running on wet grass and concrete, and while they occurred under the teacher’s supervision was it really worth a formal suspension?

The way these events unfolded caught me completely by surprise. I thought that since the source of the article was from the freaking CBC that it would not present such a one-sided take on the issue unless that was what their investigation uncovered. Stories like this reinforce just how low journalists will stoop to fabricate an interesting story, playing on the emotions of those who have been abused in the past. More than likely, I think it may have been an upset or overzealous parent whose child may not have told them the whole story as to why they were soaking wet in math class. Then again, I wasn’t there, and I think this story and others like it prove why students need to be able to think critically about the news and media they consume. There are always 2 sides to every story, and we should not pass such harsh judgement until we are sure we have enough information to be justified in doing so.

There is so much love in the words of her students and her community. The fact that even one person may have demonized her because of this article is disgusting.

Who Decided We All Have to Read Shakespeare, Anyways?

What probably won’t come as a surprise is that it was the British government. What may come as a surprise is where and why. I had to research the topic for a class and created a video to compile what I had learned. The first English Language Arts lessons took place in India, in the 19th century. This was because the British were frustrated that they couldn’t speak properly to the countrymen they had just recently conquered and colonized, and decided to create a class of Indian citizens who were literate. Literate in the sense that they are fluent with the great English class literature, not that bass-ackwards malarky in their own myths, poetry, and scriptures.

Thankfully, what started as a tool of colonialism through time became a celebration of the English language, its great pioneers and authors, and the myriad of ways one can express themselves through words. Hopefully you find the history of one of my favorite subjects as interesting as I do.

Red Cabbage pH Indicator Activity

Here is a wonderful activity for all ages that can be used as an introduction to acids and bases.

Acidity and basicity are a property that many chemicals possess. We use them to refine oil, bleach textiles, in our industry, in our food, in our house, and in our bodies. The way the mitochondria (the powerhouse of the cell) produces energy is by utilizing an acidic gradient across a membrane. The effects of acid mine drainage and acid rain on the environment can be devastating.

Acidity and basicity can be measured by chemicals called “pH indicators”, which measure how acidic or basic a chemical is on a scale called the pH scale (pH stands for power of hydrogen). The scale goes from 0-14, and substances are acidic if they have a pH less than 7 and basic if they have a pH greater than 7. Acidic substances release hydrogen into solution whereas basic substances absorb it. The scale also operates like the richter scale used to measure earthquakes – an acid of pH 3 releases 10 times as much hydrogen into solution as an acid of pH 4, and a base of pH 13 absorbs 100 times as much hydrogen as a base of pH 11.


To create the red cabbage indicator, simply buy a red cabbage and boil it in a couple litres of water for approximately 15-30 minutes. The longer you boil it, the stronger your indicator will be. I recommend creating 2 litres of concentrated cabbage juice and diluting it by a factor of 10 when using it in class. This is not necessary but will make your juice last much longer.

Collect a bunch of household chemicals, or better yet, ask your students for suggestions on what to collect for the experiment. Not every chemical will induce a color change but the majority of soaps and cleaning supplies will. Allow your students to make predictions about what will happen based on what they know about the household chemicals. Be sure to pre-load information about the traits of acids and bases (acids taste sour, corrode metal, bases taste bitter, feel slippery, etc). This activity can be done at any grade level, and you can even use a crude color scale to identify the pH of your materials.

Picture from: