Monday, July 29, 2013

Brenda Romero at G4C13: The Games Need to Change

In the games for change movement, what needs to change? Brenda Romero, designer in residence at UC Santa Cruz, thinks it's the games.

In her Games for Change 2013 keynote, Romero explains that she did not make her award-winning board game Train as a game for change per se.  Rather, it was a game "about something" — a game about a subject much like a book or movie can be.

"I wanted people to feel what I felt when I thought of these things [about the Holocaust]."

A big challenge when making games of this type is that, as a designer, you just don't know what players are bringing to the game, nor what they might take away from it.   Romero's experience with Civilization: Revolution is a case in point: it allowed her to nuke the Japanese when their advanced culture became a threat...just for being technical...while playing as Ghandi.

Some games for change are in your face about what they want you to feel.  The designer acts as a preacher, telling the player what path they will go down.  This isn't as powerful as experiences like Train or Civilization: Revolution.  Instead, it is better to make something that the player can explore however they want (or need) to.  Sometimes we don't need to be direct.  The games that changed Romero the most changed her precisely because she didn't see it coming.

This is one advantage Romero sees for analog games: they don't have story lines or cut scenes to tell the player how they should feel.  The usually just have rules.  The games for change movement also affords advantages: while the mainstream can't touch certain difficult topics with a ten foot pole, games for change are invited to look at them in depth.

But, as Romero points out, there doesn't need to be a division between commercial games and games for change.  The beauty is at the nexus of the two. As a result, it's not that we need "games that change people, but [it is] the games themselves that need the change."

Thursday, July 25, 2013

Encouraging Students to Make Mistakes and Learn How to Debug

I've been slowly reading Papert's Mindstorms as I've had time (finally!).  This paragraph (pg 114) really jumped out at me:
It is easy to empathize.  The ethic of school has rubbed off too well.  What we see as a good program with a small bug, the child sees are "wrong," "bad," "a mistake."  School teaches that errors are bad; the last thing one wants to do is pore over them, dwell on them, or think about them.  The child is glad to take advantage of the computer's ability to erase it all without any trace for anyone to see.  The debugging philosophy suggests an opposite attitude.  Errors benefit us because they lead us to study what happened, to understand what went wrong, and, through understanding, to fix it.  Experience with computer programming leads children more effectively than any other activity to "believe in" debugging.
...except when it doesn't.

The problem, in my experience, is that we too often don't teach programming with this debugging perspective.  And students are still too often scared of trying something in a guided fashion until they figure it out (and actually make sure they understand it as well).

This is something I want to be particularly mindful of in all the courses I'm teaching in the upcoming year, from first to third year.  I'm hoping to explicitly talk about solving problems this way, set an example during class, and somehow work it into active learning activities, labs, and assignments.

If you have any suggestions for how to succeed at this, please help me out!

Monday, July 22, 2013

When You Picture an Engineer, You Probably Don't Picture Me

Debbie Sterling has experienced life as someone who doesn't fit in.  In her inspiring TEDx talk, she shares her story of how she discovered engineering, and makes a bold claim: "I don't fit in, but I believe that our little girls will."

Why care about the fact that most engineers are men? As Debbie and many others have pointed out, "with half the population being female, we deserve to have the female perspective" on today's top innovations.  From a very young age, girls are taught by the pink toy aisle that they should only want to be princesses.  While the boys play with building sets that inspire them to pursue math and science, girls get only dolls and makeup kits.

That's probably one reason why Debbie was surprised to hear her high school math teacher suggest engineering as a major when she headed off to Stanford.  But the advice lingered, and she gave mechanical engineering a shot.  Turns out, while she definitely didn't feel like she fit in, she did love engineering!

Debbie was enthralled with the fact that, as an engineer, you get to invent and design things.  "How empowering to be able to build whatever you want!"

After graduating with the knowledge that "it's not about being a born genius, it's about how hard you work," Debbie had her sights set on an invention of her own.  She wanted to give girls the same opportunity to discover engineering as the boys had with their construction toys.  She designed GoldieBlox.

Debbie researched what sort of toys girls would like, and quickly found that they got bored of traditional construction sets rather quickly.  When working directly with the girls, she found out what they really loved: books and reading! That where she got the "simple, aha idea: what if I put those two things together?"

It worked! "I had little girls in tutus building belt drives - it was awesome."

And even though the old men in suits at the New York Toy Fair said that construction sets for girls just don't sell, Debbie's GoldieBlox Kickstarter campaign has proven otherwise.  (Be sure to check out my unboxing post as well!)

Turns out gold really is the new pink.

Tuesday, July 16, 2013

Active Learning in Large Lectures

One of my (self-assigned) tasks lately has been to go through my teaching notes before I start planning my fall courses.  The latest topic I dug into was teaching interactively in large lectures.  This is especially relevant because I am a strong believer in active learning, and I'll have 200+ and 400+ students in my classes this fall.

That Huge Lecture Theatre!
That Huge Lecture Theatre! / teddy-rised
(Carleton doesn't have anything quite this big!)

Your first thought might be that I'm crazy.  Interactive lectures don't seem to be very common even in classes of a more manageable size.  However, some computer science professors have been working on ways to engage their students since the early 90's.

For example, Jeffrey J. McConnell's paper on Active Learning and its use in Computer Science was published way back in 1996! His intro does a good job of explaining why active learning in lectures is worth the trouble:
Active learning gets students involved in activity in the classroom rather than passively listening to a lecture. This activity can be reading, writing, discussing, solving a problem, or responding to questions that require more than factual answers. The idea is to get students thinking about the material. This is important, because students who are passive have a decline in concentration after 10-15 minutes in a 50 minute lecture.  Further, the act of learning is not passive. ... By carefully involving the students on [the] path to knowledge, we can increase student depth of understanding of the material, increase student comfort with the material, and improve student confidence.
Ryerson University has a decent little handout on engaging students in large classes.  It's not computer science specific, but all of the ideas are applicable.  For example, think-pair-share is probably more commonly used in less technical courses, but there's no reason you could not apply it to algorithm tracing or having students predict the output of a code sample.  There are also many opportunities for asking conceptual questions in our field.  The handout also has some good advice for making the course material relevant to students.

Carleton College has a great resource on interactive lectures.  It emphasizes the need to plan ahead carefully, deciding on the learning goals for each interactive technique incorporated into the lecture as well as the engagement trigger that will lead into the activity.  There are many useful sub-pages to explore here, with the section on Managing the Large Enrolment Course being particularly relevant to this discussion.

One of the techniques I hope to use will rely on enough students bringing their laptops to class.  I would like to design the progression of my programming lectures such that I can build some knowledge with demos and slides, then give students a mostly-complete piece of software that they will add code to based on what they just learned.  After a few minutes I would demonstrate a possible answer with live coding.  I tested this approach with a guest lecture I did last year, and it seemed to work well, though there were far fewer students in class at the time.  An alternative would be to come up with some paper-based equivalents like code tracing or pseudo-code sketching.

What sort of active learning techniques have you used in your lectures, big or small? Any tips for making them work well?

Tuesday, July 9, 2013

Improving Computer Science and Programming Education for Women Improves It for Everyone

We know that computing fields are gender imbalanced. While 57% of all undergraduate degrees in the United States were earned by women in 2009, women made up only 18% of all computer and information sciences graduates [8].

Why does this matter? As Klawe et al. point out, “Diversity often leads to enhanced abilities to perform tasks, greater creativity, and better decisions and outcomes” [3]. Furthermore, the number of computer and mathematical science job opportunities are projected to increase by 22% by 2018 — more than any other professional occupation [8]. We simply won’t have enough skilled people to fill those jobs if we don’t get more females on board.

There exist several areas of effort aimed at bringing more women into computing, but for our purposes, we will focus on adjusting course curriculum so that it works well for a diverse audience.

Critics often worry that changing computer science curriculum to attract more students means making it easier (for example, by not teaching more difficult topics). This is not the intention; rather, the goal is to change the way we teach it. And, as it turns out, the two main proven techniques we’ll talk about here work well for everyone, not just women.

Connect Computing to Relevant Application Areas

The first way to improve computing curriculum is to relate the material to application areas the students are interested in. Though men are often interested in computers and programming specifically, some men and many women prefer to view them as tools to accomplish something. The meaning for these students is found in the connection between computing and other fields [4].

A well known example of adding relevant context to introductory computer science curriculum comes from the Media Computation courses developed at Georgia Tech [1, 7]. As described in a National Center for Women & Information Technology (NCWIT) case study [7]:

Like traditional introductory courses, the two-course sequence introduces computing concepts and data structures in a context of creating and manipulating media. For example, in Introduction to Media Computation, students learn about loops by creating picture negatives or reversing sounds, learn about conditionals by implementing red- eye removal and edge detection, and learn about string processing by writing programs that pull information out of web pages. In Representing Structure and Behavior, students experience linked lists, trees, stacks, and queues by creating animations through continuous and discrete event simulations.

Though Media Computation has successfully student retention (especially women), it is worth noting that the choice of context matters, and that context is not always appropriate to use at all.

You must be careful to choose applications that are relevant to all students. Sports is a popular theme in many programming assignments, but women have been reported to feel harassed or made fun of when they, say, get the teams wrong [4]. Even forgetting such an extreme behavior, sports just doesn’t appeal to all men and women. The same goes for mathematical programming problems. (The easiest way to find out what your students are interested in is simply to ask, and possibly provide options so they can choose what they like best.)

Further, as Guzdial [2] points out, concrete examples don’t always work. Sometimes students are unable to “recognize that material learned in one situation or context is applicable in another one” (that is, transfer does not occur). To help avoid this problem, you can provide multiple contexts, and follow up with decontextualized content (possibly in a future course).

Provide Opportunities for Collaborative Learning

Collaborative learning has been shown to increase the retention of all students, as well as close the confidence gap between males and females. Women are more likely to continue with computer science after experiencing a course that facilitates collaborative learning. Meanwhile, everyone benefits from improving their critical thinking ability, gaining an appreciation of diversity, and developing many social and professional skills [5, 6].

One type of collaborative learning is pair programming, something many professional developers have seen in the workplace. How to implement pair programming in a course is explained in an NCWIT case study [5]:

Preparation involves establishing guidelines and mechanisms to help students pair properly and to keep them paired. ... In addition, effective preparation requires contingency plans in case one partner is absent or decides not to participate for one reason or another. ... Effective pairing attaches students of similar (though not necessarily equal) abilities to each other as partners; pairing mismatched students often can lead to unbalanced participation. Faculty must impress upon students that pairing is not a “divide-and-conquer” strategy, but rather a true collaborative effort in every endeavor for the entire project.

Another type of collaborative learning is called Peer-Led Team Learning (PLTL): “It involves teams of six to eight students that meet weekly in a workshop with a trained peer leader who is under direction of the instructor. During the meeting, the group engages in interesting problem-solving exercises” [6].

For PLTL to work, all students must attend the workshops and course instructors need to remain involved with the workshop content and the peer leaders. The workshop materials should be well integrated with the course material and encourage active and collaborative problem solving.

Other Ideas

Here are some of the top ten ways to retain students in computing, as listed by NCWIT [9]:
  • “Emphasize that intellectual capacity — like a muscle — increases with effort”
  • “Provide early and consistent feedback on assignments”
  • “Praise and encourage your students”
  • “Connect students to faculty”
  • “Routinely discuss the options, advantages, and rewards of computing careers”
  • “Steer clear of stereotypes embedded in assignments and examples used in lecture ”
  • “Treat all students as individuals, not as representatives of a group”

And, finally, some suggestions from Klawe et al. [3]:
  • “Make a computing-related course a requirement, or a highly recommended option, for all students in majors that have many females”
  • “Create or publicize majors that combine computer science with another area.”
  • “Train instructors of introductory CS courses to encourage high- performing women to take a second course and consider majoring in computing.”
  • “Encourage female students to attend computing conferences.” 


  1. Guzdial, M. A media computation course for non-majors. SIGCSE Bull. 35, 3 (June 2003), 104-108.
  2. Guzdial, M. Does contextualized computing education help? ACM Inroads 1, 4 (December 2010), 4-6.
  3. Klawe, M., Whitney, T., and Simard, C. Women in computing---take 2. Commun. ACM 52, 2 (February 2009), 68-76.
  4. Margolis, J. and Fisher, A. Unlocking the Clubhouse: Women in Computing. The MIT Press, 2003.
  5. National Center for Women & Information Technology. How Do You Retain Women through Collaborative Learning? Pair Programming (Case Study 1). November 1, 2005. []
  6. National Center for Women & Information Technology. How Do You Retain Women through Collaborative Learning? Peer-Led Team Learning (Case Study 2). May 1, 2007. []
  7. National Center for Women & Information Technology. How Does Engaging Curriculum Attract Students to Computing? Media Computation at Georgia Tech (Case Study 1). []
  8. National Center for Women & Information Technology. NCWIT Scorecard: A Report on the Status of Women in Information Technology. December 31, 2010. []
  9. National Center for Women & Information Technology. Top 10 Ways to Retain Students in Computing. May 2, 2011. []

Friday, July 5, 2013

Earnest Games, Not Serious Games

Why is it that after ten years of Games for Change festivals guys like Ian Bogost are still making the same argument: games have the power to depict complexity in ways other media can't, and they have the potential to positively impact how we talk about and understand complex issues.  Why are so-called serious games not living up to this potential?

In his Games for Change Festival keynote this year, Bogost gave his take (along with a healthy dose of self-criticism).  I've done my best to summarize it here.

You see, there is a bit of a paradox that the serious games community faces.  Games involve systems thinking.  Systems thinking assumes that simple answers are always wrong.  But serious games are presented as "superficially transformative affairs."

A post mortum on Oiligarchy, a game about oil consumption and political participation through corporate sponsorship, was said to increase the game's transparency or allow the intentions of the creator to better shine through.  Does this mean the game is insufficient to talk about the issues? That additional words and images are required?

Fatworld, Bogost's own creation, did a good job of representing the rhetoric of nutrition, but wasn't a terribly good game (so he says).  Meanwhile, the Apps for Healthy Kids winners were apparently not very good either.  Yet these were much more successful than Fatworld - what excused them from mediocrity and propelled them to success?

Games' ability to do procedural rhetoric can be short-circuited by orthogonal media situations that resist the fundamentals of games.  In the case of Apps for Healthy Kids, the main purpose was not to change minds about healthy eating, though doing so would be a bonus.  Instead, a branch of the government wanted to demonstrate that they were hip enough to use cool technology.

Is the problem with serious games that they try to separate entertainment from seriousness, turning it into an either/or proposition? Do serious games seem to represent the goals of institutions rather than having a worthy goal on their own?

Maybe too many serious games aren't really that concerned about being games. They are hip.  They are concepts at worst, adornments at best.

We don't need 'serious games' or 'games for change.'  We need games that want to be games first and foremost.  Second, the creators of these games should really want to pursue the topics they claim to want to pursue (not just create the opportunity to talk about these topics outside of the game).

Maybe, what we need are not serious games, but earnest games.  Games that mean it, that do justice to their topics and to the medium of games themselves.

Now this is an idea I can stand behind.

Wednesday, July 3, 2013

Dance Your Math Lessons

Smart, funny, and willing to prance on stage.  Karl Schaffer and Erik Stern sure know how to do a TEDx talk right! Watch the video below, and check out their Math Dance website.

From the video's description:
Karl Schaffer and Erik Stern founded the Dr. Schaffer and Mr. Stern Dance Ensemble in Santa Cruz, California in 1987. Drawing on their combined backgrounds in dance, mathematics, science, writing, music, theater, and athletics, they were drawn to uncommon fields as fodder for their choreography.
As you can see from the video, math education is one of those fields.

The pair begins each of their classes with a movement problem.  Dance and math concepts are introduced along the way.  But these two insist they are not using dance to "sugar coat the math" - it's the connections between concepts from the two arenas that are the "heart of the matter."

Schaffer and Stern say they have come to understand several key things about learning from their experience teaching with movement:
  1. embodying the problem is memorable, social, and creative; it makes math ideas accessible
  2. physical energy in the classroom an opportunity for everyone, not a distraction
  3. choreographic and mathematical thinking are composed of similar building blocks (e.g. remembering sequences, asking if things are bigger or smaller, etc)
I've talked about how science and dance go together surprisingly well in the past.  I'm glad to see that teaching math with movement is no exception.  Hopefully we'll continue to see many more pedagogical innovations like this in the future!