Thursday, December 19, 2013

Quest Based Learning: A Model for the Flipped Classroom

Forty minutes of class time per day can be very limiting. It certainly does not provide an opportunity to teach everything and support students while working on their projects.  Furthermore, it limits the possibilities for students to extend their learning based on their interest in the content.  The ideal of differentiating instruction within this framework poses another challenge for sure. Over the past few years I have heard more and more about the 'flipped classroom'.  I think it's common to think of the flipped class model as having students watch a video or read the course content prior to a lesson so that class time can be devoted to discussion or work with the guidance of the teacher.  This is certainly one approach, but I am becoming increasingly aware that my classroom is flipped in a different way.

My course is conducted through 3dgamelab, a quest based 'learning management system'.  Essentially, students are presented with available quests that they can complete for experience points (XP).  The XP approach coupled with the achievements, badges, and awards provides a gamified layer which is appealing to many students.   More importantly, however, the quests provide what Jane McGonigal refers to as 'blissful productivity'.  Students are excited to complete a task, receive credit and feedback for it.  Often this leads to the next quest in the quest line which provides a nice approach to scaffolding the learning. 

I teach video game design and development.  I like to provide opportunities for my students to extend their learning as there are so many wonderful tools and learning materials available online.  This works beautifully in a quest-based classroom as students tend to work on these 'side quests' outside of class and they earn points which ultimately contribute to their grade.  It provides students with choice in the learning process.  This is great for differentiating instruction as well as allowing for extension activities for students who would like to continue the learning beyond the course requirements.  

Many of my quests include video tutorials that I have created (or curated) either during lessons in class or specifically for the purpose of demonstrating specific skills.  This allows students to work at their pace and review the content as many times as they need to rather than being expected to comprehend everything the one time it is presented.  This also solves the age old issue of re-teaching topics for a student that misses class for any reason.  

Generally speaking, my students have 3 large projects throughout the semester.  These are the main quest lines and during class this is what students typically work on.  However, to the observer, the learning environment looks more like a studio than a classroom.  I devote most of the class time supporting students as they work on their projects.  When I think of the goal behind the flipped classroom model, I believe this approach exemplifies the philosophy.  Students could complete the three main projects and succeed in the course, but most embrace the opportunities to complete side quests that are either related to the main quests or not.  Typically, I allow students to work on any quests they like on Fridays, adopting something similar to the google 20% time approach as it allows for student driven learning and often sparks interest for students to continue the extension activities outside of class.

One of the things I like best about the Quest Based learning environment is that there is a growing library of available quests through 3dgamelab that can be cloned and edited to suit your needs.  There have been many occasions where I have adapted some of the quests graciously created by others to offer additional learning opportunities for my students.  Likewise, I like to think that I have contributed a great many quests that can be used by others. On a similar note, once you put the energy into developing a quest or quest line it opens up new learning opportunities for students moving forward.  Last week was Computer Science Education Week featuring the Hour of Code challenge.  My students all participated, but the spirit of the hour of code should not only be celebrated during that one week.  My students can continue to complete the quests for XP and these quests are now already in place for my future classes adding to the value of my course moving forward.  

Scaling the course becomes intuitive due to the quest setup which enables the use of prerequisites to open up new quests.  You can set a quest to open after another quest is complete, based on a certain number of XP earned, etc.  One of my long term goals is to scale the game design and development curriculum down to the elementary level and up to the high school level.  Quest based learning lends so well to this as you can develop quests and break them up into different courses or have one course that is scaled based on working through the quest line.  If an elementary school student were to engage in the course and work through quests in order to reach higher level quests, why hold them back?  Likewise, from the standpoint of differentiation, it works well to allow students to start with quests at a level that they can handle.  

I hope that more educators start to see the value in this approach to teaching and learning.  Aside from teaching all of the skills and concepts in my curriculum, I believe that the opportunity for extending the learning will help cultivate a love of learning and demonstrate to students that they can continue learning out of interest rather than obligation.  After all, isn't the development of lifelong learning an esteemable goal in teaching?

What experiences do you have with a flipped class model?  Have you experienced quest based learning as a student or teacher?  I'd love to hear your feedback.  

Are you interested in learning more?  I got my start in one of the 3dgamelab teacher camps where I was able to be both a student (following the tracks that interested me) and an instructional designer as one of the tracks guides participants through the process of understanding quest based learning and creating quests for class use.  

Thursday, December 12, 2013

Hour of Code: Student Reflections

As the hour of code continues, I am continually blown away by the accomplishments and enthusiasm of my students (and my 10 year old daughter!).  I teach video game design and development and provide a quest based learning environment using 3dgamelab.  When students complete their quests, they submit the quest, often with a reflection on the activity.  Following are a number of reflections that I pulled out to share.  I will say that the overwhelming thing I am hearing is something to the tune of, "I thought programming would be hard, but...".  If that doesn't sum up the value of the Computer Science Education Week hour of code initiative, I don't know what does.  I am beyond thrilled that so many students across the world are engaging in activities this week to demystify computer programming.  I truly believe this is a game changer in terms of people's attitudes and perspective on computer science.  I'm sure the interest will sustain in many, but regardless, it is raising awareness and understanding in such a HUGE number of students (and teachers).

Before I share the reflections, I want to note that my 10 year old was practically begging us to purchase the full version of the lightbot app after participating in the lightbot hour of code activities which were free.  At $2.99 I think we'll invest :)

Reflections from students:

"I learned a lot about computer programming in this quest.  I thought that computer programming was difficult and complicated all the time, but it can be easy if you really try to comprehend it."

"I learned that the 4 steps of computational thinking are decomposition, pattern location, abstraction, and algorithms.  I had some challenges when a new block was put in like the "repeat until" and "if path" boxes." ~female, grade 8

"I learned how to use the repeat block which I had trouble with at first.  I think it's really cool but challenging to program." ~ male, grade 8

"I am getting to learn more complex programming that actually makes you think through all the steps, compared to before where you just guessed and checked.  I did have trouble choosing some of the blocks and figuring out the number of degrees to use in a couple of places."

"I liked this challenge because it taught me how to make functions and use them." ~male, grade 8

"I felt it was really cool that you could repeat actions.  It is really cool how computer programming works because it's not like how regular life works." ~male, grade 8

"I felt that this quest was easier than the others.  I like this one because the new blocks, the "while" block and the "if" block were really helpful.  I did not have any particular challenges completing this quest." ~female, grade 8

"This was where it got a bit challenging, but eventually through trial and error I figured out the problem and completed the quest." ~male, grade 8

"I really enjoyed this quest.  It was a fun new experience for me creating drawings compared to what I normally do, programming robots.  It was straight forward and showed one of the essential lessons of programming - no matter what you do with programming trial and error is key."

"In the second part of code, the Artist level was a little harder than the first.  I learned more though about algorithms and how computers work and make tasks easier.  A few particular challenges I had were drawing a circle and drawing a snowflake shape on level 18. Overall, it was enjoyable." ~ female, grade 8

"I learned about repeating.  Computer programming seems to work by taking the problem, coming up with a solution, breaking the solution into simpler parts, and finding the best, fastest, and easiest way to accomplish all of these." ~male, grade 8

I could go on and on, but I think you get the idea.  I think it's an incredible initiative and am so pleased to see so many kids exposed to coding.  Hopefully, the day will be sooner, rather than later, that coding is taught throughout the grades.

Please share your experiences.  I find it inspiring to hear what others are doing and how students are responding!

Wednesday, December 11, 2013

Code-a-rific! Embracing the Hour of Code Challenge.

Hanukkah has passed.  Now we are anxiously awaiting Christmas and Kwanzaa, but hold the presses!  It's Computer Science Education Week!!!  Feels a little like Christmas to me.  The highlight of the December 9 - 15 festivities is the Hour of Code Challenge.  Students across the world are committing to code for an hour this week.  From my experience, it seems like the hour of code is turning into the many hours of coding.  Regardless, everyone who participates is getting an opportunity to be exposed to coding and essentially demystifying Computer Programming.  This is a wonderful opportunity as hearing the words coding or programming can be very intimidating.  The activities offered this week are surely proving otherwise.

There are a number of heavy hitters involved in helping promote the event including, Mark Zuckerberg (Facebook), Elena Silenok (, Bill Gates (Microsoft), Gabe Newell (Valve), Will.I.Am (The Black Eyed Pees),  Chris Bosh (Miami Heat), Sheryl Sandberg (Facebook), Barack Obama, and many others.  These influential folks have been kind enough to help create instructional videos, public service announcements, etc. to help promote the event.

The point of entry to participate is quite simple.  Organizations like have set up turn-key opportunities to guide students through hours of coding including online and offline activities.  You can sign up as an individual student or as a teacher.  Teachers can provide students with the course code so that it is easy to manage their progress through the activities.  Students earn a certificate from many organizations based on completing an hours worth of coding activities.  The activities use activities created in blockly, a programming environment developed by google that is based on Scratch.

Tynker, also based on Scratch is offering a variety of activities for students in grades 1 through 8.  Tynker also allows teachers to set up a class with a class code for students to join.  Again, this helps greatly with managing student progress.

Lightbot is a puzzle game that teaches programming and procedural thinking.  They are offering activities for the week that come with a certificate of completion as well.  My 10 year old was up pretty late last night 'playing' lightbot and learning coding without knowing it!  Lightbot has an app available at the iOS app store as well as the google play store.  This is definitely a great option for students in elementary school.

One of my favorites is Codecademy, which really does focus on true coding (opposed to the drag and drop block approach) but in a very systematic fashion that makes following and learning to program easy.  Codecademy offers tracks in JavaScript, PHP, Python, Ruby, and other programming languages.  You could create a full semester course (or more) using the Codecademy environment.

There are certainly other companies and organizations offering their approach.  Please visit the Computer Science Education Week site for more ideas and lesson plans.

While I'm at it, here's a pearltree I put together a while back to highlight coding resources for grades K - 12. and the associated sponsors are even offering prizes for students who earn the 27 available trophies.  So far, two of my students at William Annin Middle School have reached this goal.  Prizes include a choice of software titles (Sim City 4, Portal 2, Fifa 13), $10 gift cards (iTunes, Skype), 10gb dropbox storage, etc.  One school in each of the 50 states will receive a classroom set of computers for having every student participate.  All teachers who have a class participate will receive 10gb additional drop box storage and several lucky schools will receive a guest skype session from one of the industry 'titans'.

Well, what are you waiting for?  Join in the celebration.  and Happy Computer Science Education Week!

Code on!!!