Research Blog‎ > ‎

Learning from ICER: My Thesis

posted Sep 25, 2012, 4:54 AM by Sarah Guthals   [ updated Oct 10, 2012, 12:54 PM ]
ICER this year was incredible! I was able to get a good focus on what I would like to research for my thesis. I particularly received advice from Mike Clancy, Brian Dorn, and Mark Guzdial, so thank you again!

What I have always known is that I am interested in figuring out a way to make complex systems easy to use or large amounts of data easy to understand to the common user. As I entered my graduate work I found a love for teaching computer science, and more specifically for trying to understand the most effective way of teaching computer science. 

I have since narrowed my interests to novice programmers debugging. There are many aspects to debugging that one could address when trying to improve novice learning. At ICER I discovered that what I am interested in is supporting novices by engaging them in a more expert like debugging process when there isn't an expert around. I have so far defined the "expert debugging process" as "Exploration":
Based on this model, I have engaged in two projects that address novice exploration while programming on their own; Exploratory Homeworks and CodeSpells.

Exploratory Homeworks
This year at ICER I presented our paper on Exploratory Homeworks. Exploratory Homeworks are a way to engage students in pre-lecture reading in a more expert-like way. Typically, experts do not read text cover to cover and then program. Instead, they read a bit, then try to mimic what they have read in their programming environment and then they try to make it their own by manipulating the code and adding to it. 
We wanted the students to have the ability to engage with the more simple concepts on their own BEFORE lecture. This way when they arrived at lecture, they already knew what was going to be discussed and we could go into the more complex concepts together.
Using Exploratory Homeworks we can engage students in expert-like behavior where they can learn on their own and prep for class. 

CodeSpells is a 3D video game designed to teach Java programming. You can see more information about it here. Through this game we are utilizing the metaphor of magic and magicians to engage students in exploring code and coding effects so that they can authentically learn Java programming in a new environment. Here is a short demo: