Friday, June 28, 2013

Teacher for a Year!

It's finally official: I get to teach for a year!

Teach Your Heart Out
Teach Your Heart Out / Krissy.Venosdale 

I've had this post bottled up for a while now, waiting for the papers to finally be signed.  As of July 1, I will be a faculty instructor for our School of Computer Science for a one year term.  I'll be taking leave from my PhD to take advantage of this opportunity.

Because this is exactly the job I want for my career, I am obviously very, very excited.

In addition to seeing what I can do in terms of recruiting and retaining women in our programs, I am really looking forward to trying a few interesting things in terms of pedagogy (though I will start small to make sure I have a handle on the courses I'm covering first).  One course I will be doing is Intro to Computers for Arts and Social Sciences, which I had been working on improving when I taught it in summers past.  This year, I'd like to try using Python and test out the book chapters I've been working on for the introductory CS book I introduced way back when (yup, we are still working on it!).  I am also hoping to use this course to further our research on using stories to teach computer science.

I've been keeping notes and links to awesome teaching resources for a while now, but I want to ask my fellow educators out there: what single tip would you give to a new instructor? What awesome resources would you share?

Wednesday, June 26, 2013

New Template + Comments Work Again

Because someone brought it to my attention that comments weren't working anymore (and I had no idea how to fix them), I decided it was time for a new blog template.  I based the new look on a free template from Pugly Pixel called Strawberry Shortcake.  So, things look a little fresher around here, and comments work again! Yay!

Let me know if you like it. :)

Tuesday, June 18, 2013

Why Game Designers Should Understand Procedural Rhetoric

I am sometimes asked why I think stories in games need to improve.  Considering I'm studying nonlinear stories in games for my PhD project, I was for a long time unsatisfied with my answer.  But I finally figured out what my beef was about today's games and their stories.

My problem is that stories and gameplay far too often feel like separate activities.  The best stories tend to be told outside of the main mechanics (not necessarily via cut-scenes, but not during the main action either).   Many CRPG's with random encounters are guilty of this.  More recently, BioShock Infinite's story felt really separate from the shooting galleries that punctuated it.  The game felt very close to (if not exactly like) what Chris Crawford called a constipated story.  The only possible exception was the Hall of Heroes, where the environments passively provided backstory brilliantly alongside Slate's narration.  Even there, though, the slaughtering of hundreds of Slate's men felt forced, and the constant battling made it difficult to pay attention to anything else.

Beyond separating the story from the main mechanics, the meaning of what you do through gameplay may not even be tightly coupled to the story, or worse, may go against it.  We've been playing Red Dead Redemption, and I feel this dissonance fairly often.  In some quests (many of them optional, like the bounty hunting), you earn more honour or money for bringing back the bad guys alive.  Killing them sometimes even lowers your honour.  Yet in many of the main episodes, you kill multitudes of men and your honour goes up.  Even worse, in many conversation with Bonnie, your actual actions are not taken into account and she only ever paints you as an honourable man (or so it has gone for us so far - we are not yet finished the game).  Although some feel that the violence and shooter nature of BioShock Infinite has meaning, for most it creates a disconnect from the story the game tries to tell.

I've written a couple of times before about procedural rhetoric.  If you haven't checked out Ian Bogost's Persuasive Games, where the idea originated, be sure to do so.  As a reminder, procedural rhetoric in games is essentially using their rules and mechanics to make an argument (as opposed to, say, the words in the game or the visual elements).  I like to simply describe it as "saying something" with the mechanics, as I have discussed in the context of Sweatshop and Unmanned

Games whose designers don't consider procedural rhetoric end up running into problems like those mentioned above.  If you don't care what your mechanics are saying, your story could feel separate from them.  If your mechanics are saying one thing while the story says another, a troubling contradiction occurs.  But if designers carefully plan their game's mechanics so that what they say aligns with what the story wants to say, then, in my opinion, great masterpieces are possible.  And that is why designers should learn about procedural rhetoric.

Edit: I was reminded of the concept of ludonarrative dissonance, which describes my problem with stories and games quite well.  There's even an article about BioShock Infinite and this idea.  So basically what I am saying is that understanding procedural rhetoric and being mindful of what your mechanics are saying is one possible fix to ludonarrative dissonance.

Friday, June 14, 2013

Technical + Creative

It's amazing how many people fail to realize that computing can be a creative field.  In fact, in many cases, it has to be! For example, it makes no sense for me to try to come up with completely abstract game stories to test my ideas for systems to put those stories together.  I don't have to win any writing awards, but I have to be creative enough to come up with some reasonable examples.

ViruStream 0313
ViruStream 0313 / Widianto Nugroho

That doesn't mean it's always easy.  I like to think of myself of a relatively creative person: I did drama and band in high school, love scrapbooking, have some ability in graphic design, and even won a couple of story contests way back when.  Even still, I often find myself staring at my story spreadsheets and not knowing what to write next.

And it also doesn't mean that these more obvious ways of being creative are the only ones that are important in this field.  I think that all computing is creative! No matter how low level the code you have to write is, you will always have problems to solve.  Code structure to design.  Functionality to figure out.  All of these things benefit from creativity.

I just wish we did a better job of emphasizing the idea that the best computer scientists are both technical and creative.  I wonder how many new students we could attract if we did a good job of this.

Wednesday, June 12, 2013

A Forty Minute Tour of CS Education With Mark Guzdial

Mark Guzdial is one of the big names in computer science education.  A couple of months ago, he spoke at the GVU Brown Bag Seminar with a talk entitled What We Know About Teaching Computer Science ("What does Guzdial do, Anyway?").  If you're interested in CS education, take 40 minutes and watch the recording (linked above, embedded below).

Mark's talk focuses on four lessons in teaching computer science:
  1. "Increasing value through relevance and context"
  2. "Anchored collaboration helps (sometimes)"
  3. "We can teach computing by meeting students where they are"
  4. "We can restructure and improve learning materials based on research principles"
Here are a few interesting tidbits from this tour of CS education:
  • for every software developer, there are 9 end user programmers (database queries, spreadsheet macros, etc) who don't know that computer science is a thing that can help them with what they do
  • AP computer science in Georgia is predominately a white and Asian male test
  • there are not a lot of people looking at why programming is so hard at a deep, cognitive level
  • USCD implemented media computation with peer instruction and pair programming; since then, they have increased retention of CS majors into second year by 30%
  • when teaching HS teachers about programming with videos, simply adding subgoal labels to the video significantly increases the teachers' ability to learn 

Friday, June 7, 2013

Unboxing GoldieBlox

Way back when, I missed out on the Roominate Kickstarter campaign, and I regretted it afterwards. So when GoldieBlox was proposed, I jumped on it.  Plus, $30 to have the toy shipped right to me sounded like a pretty good deal!

It took a little longer than they expected to ship to Canada, but it was worth the wait.  I got my toy a few weeks ago and finally had the chance to try it out! My (lowish quality iPhone) photos of the unboxing are below.

The toy is really neat, and my only criticism is that some of the manufacturing isn't perfect, resulting in it occasionally being difficult to get the figures to stay on top of the wheels.  I am sure this will improve over time.

I can't wait for Molly (currently only 1.5) to be old enough to try it out!