Tuesday, November 30, 2010

Is Kinect Doomed to Casual Gaming?

Dance Central by Harmonix appears to be one of the better Kinect launch titles (some say the best).  I'm personally very excited about getting it for my birthday this weekend.  I think my mom might even dance with me! ;)

E3 2010 Kinect Dance Central stage
E3 2010 Kinect Dance Central stage by popculturegeek.com

This is what some might call a casual game, "typically distinguished by their simple rules and lack of commitment required in contrast to more complex hardcore games."  This is one of my favourite genres because I find it hard to find the time for longer, more involved games (case in point: I started playing Portal months ago and still haven't finished).  I also love the social aspect - many games are kind of boring played alone, but are a blast when you have friends over.

This brings me to the main question at hand: Is the Kinect ever going to be used for anything other than casual games?

(My quick answer: I think it's possible if our creativity is up to the task!)

We have a fairly new game development club here at Carleton, and we've been discussing the Kinect for a couple of weeks now.  I did a little presentation on augmented reality and how I thought the Kinect could fit in last week, and yesterday I brought in my Xbox and Kinect so we could experience it first hand.  Most of those who tried Kinect Adventures seemed to enjoy it - you could almost see the moment they stopped feeling silly and got lost in the game.

There were a couple of guys who refused to try it, though.  Their philosophy was that these games were silly, because they tend to be either a repetition of the same movements over and over in slightly varying contexts, as in Kinect Adventures, or mimicry of an activity you may as well just do in real life (like dancing, or tackling the challenge of playing guitar).  Why would you want to play a game about dancing when you could just go out dancing with your friends?  (I am of the philosophy that games are fun, and that they don't have to replace the real-life versions of these activities - they just provide another way to enjoy them.)

These weren't the only two who didn't see a very interesting future for Kinect, though.  In fact I'd say our discussion turned into a somewhat heated (though civil!) debate on the matter.  I, with a few others, believed that Kinect could go beyond casual games.  We (as in game designers) just aren't necessarily sure how to do it yet.

One person who was not convinced at all explained his stance by pointing out that the Kinect isn't accurate enough to allow for complex game mechanics, and therefore it could never be used for a 'deep' game.  I tried to say that while it can't be used for the types of games that need that kind of input precision (like shooters, RTS, etc), that's not what it's meant for.  I think we will come up with new types of mechanics that take advantage of the Kinect style of input.

It seemed to me that there was an equating of complex mechanics and inputs with the ability to have a deep game, but I don't think this is the case at all - otherwise, how would you explain the depth found in many board games? Chess and Go, for example,  have very simple mechanics but lots of emergent behaviour.  I could see myself getting pretty deeply immersed in a game that used some form of Kinect input while engrossing me in a great story.  It's possible the result wouldn't please the hardcore gamers, but that's not really a problem from my point of view, since the potential market of 'rest of us' is pretty huge.

An alternative perspective is to consider that a game's inputs don't have to come only from Kinect.  For example, a fellow club member suggested having the Kinect get some basic body language information from the player might cause the non-player characters to react appropriately.  I figure even voice could be used here, the tone being interpreted as friendly or not.  Or customization in a game could come from objects in your playing space or movements you make.  A neat idea I had when someone was talking about fighter games was to capture your characters opening pre-fight sequence.  Or perhaps the Kinect just gives you a choice - you can either shoot your occasional-use slingshot with the regular controller, or do the aiming with your hands.  With so much work going on in the Kinect hacking arena, innovation certainly seems possible.

For a specific example of inspiration, check out the video below.  It's not using Kinect, but this kind of input could be done with Kinect and a projector, and perhaps a similar enough game could be created for a traditional screen.  The demo shows and open play type of environment, but I could see creating a game that would be considered deep for a younger audience (or even adults if done right).

While I can't say for sure whether we as game designers are ready to come up with ways to use Kinect for deep games (maybe we need to go through another generation or two of technology first), one thing's for sure: this is definitely a hot topic of debate.  Where do you stand on it? Where do you see Kinect going in the future?

Friday, November 26, 2010

CHI Twitter Hashtag

In September I submitted my first CHI paper.  Since then we've got our reviews back and written a rebuttal, and now must wait until the final decision comes down in December (though we already know what it will most likely be).  During this process, I've found an unexpected source of insight into how the CHI community works: the #chi2011 Twitter hashtag.

My Twitter Class of '08
My Twitter Class of '08 by mallix

Cate Huston's Masters research is all about Twitter, and she recently wrote a blog post on exploring conference hash tags.  She grabbed data from the Eclipse Conference 2010 hashtag and visualized a few different things, including a Wordle and frequency graph on tweet content and various information about clients used to tweet.  She also captured insights into the users participating in the chatter.  I immediately thought about what information would be available from the CHI hashtag because of how useful it's been to me in the past few months.

One of the biggest things the hashtag did was make me feel like I was part of the community, even though I'm really completely new to it (I haven't even attended a CHI conference yet).  Watching everyone panic together as the submission deadline loomed ever closer was actually kind of thrilling, for example.

The review period was a bit of a roller-coaster ride, with tweets about how great and how horrible the papers were - you never know if it's yours they are talking about! But when those reviews did come back, it was relieving to see how many people fared as well (or, more accurately, not-so-well) as we did.  It was even more fun to see the exact complaints people were making about their reviews and how they would position their rebuttals.

And then there's the entertainment value.  One of my favourite CHI tweeters is @SottedReviewer, who makes various witty and timely remarks in all-caps.  A couple of my favourites:

Interestingly enough, I get the feeling this humour also gives me insight into some of the inside jokes of CHI, also making me feel more part of the community.  Like that whole turkers thing.  What's up with that?

It sounds like Cate's going to be doing some analysis on the CHI hashtag.  I'm looking forward to seeing if any of her data gives me more insight into my reflections here.  For example, am I getting only a small part of the picture because only some small cliques do most of the tweeting? How many more people use the hashtag close to the submission deadline, review release date, and rebuttal deadline?

What has your experience been following conference hashtags before, during, and after the event?

Tuesday, November 23, 2010

From Blogging to ABI Board of Advisors

I just joined the Anita Borg Institute for Women in Technology (ABI)'s Board of Advisors, and while I'm obviously pretty excited about this on a personal level, I wanted to share a bit about how I got here.  It really goes to show that with a little effort and commitment, great things can happen.

I suppose you could say it all started with this blog.  After all, by the time my first Grace Hopper Celebration of Women in Computing in 2008 rolled around, I was pretty confident in my writing.  So I volunteered to be a community blogger, and delivered what I promised to do.  Leading up to 2009, I offered more and more to help with community-related tasks (mostly blogging still), and was eventually made Lead Blogger.  I organized all the blogging and note taking volunteers and made sure as many key sessions were covered as possible.  This past year, I was on the newly formed conference committee for Online Communities, where I was again Lead Blogger among other things.

Thanks to my involvement with ABI and the conference, I became pretty visible in the community.  This past year, I was also a Hopper volunteer for Grace Hopper, which means I did 8 hours of work for free registration.  Through a little bit of good luck, one of my assignments ended up being the Board of Advisors meeting.  This was pretty funny, because it's not like they needed me there.  But I thoroughly enjoyed meeting everyone, and even sitting beside (and explaining the Poken devices to) the legendary Fran Allen.  (She's awesome, by the way.)  I joked that it was like fate, because if they were looking for more members and wanted another student and/or someone from Canada, I would totally be interested.

Lo and behold, less than two months later, I was invited to the Board.  Who knows whether being at that meeting helped, or whether my visibility through my active involvement with ABI was enough - either way, going above and beyond and offering yourself to help where you can clearly pays off.  Don't be afraid to offer to help with something you're good at, because you just never know where it could lead you.

Thursday, November 18, 2010

Traditional and Software Architects are Even Closer than You Think

I received a comment on Is a Software Architect Worthy of the Name? via email from Lourens Veen, a software architect for a project at the University of Amsterdam, where he is helping build a biodiversity information system.  He wrote about how much more similar software and traditional architects are than what I originally laid out.  I really liked his email, and he gave me permission to repost his comment here.
My job is to look at how the system we build fits into its environment. In my case, the lead engineers are similar to the structural engineers that you have in building architecture. Their job is to ensure that the things we design can actually be built and maintained by our programmers. What I do is figure out how it interacts with other systems, and with its users, system-wide and in the long term. My job is to look ahead and think about what the users are likely to want in a few years time. Of course I have no hope of doing so in detail (typically, users don't even know what they want for themselves, right now), but I can hopefully see well enough where things are going to make sure that the core of the system won't need to be recreated from scratch anytime soon. I think building architects have a similar role: they design a building for a client, but also need to take into account that the building will still be there decades into the future, and still needs to earn its keep then.

So, I think that building architects and software architects have even more in common than what you described. I even think there is an equivalent to that other job of a building architect: making it beautiful. Of course software has no physical embodiment, so it has no physical beauty (artful syntax highlighting excepted :-)), but its design can still be just _right_. It's hard to define what makes a design right, but a good software architect recognises when that is the case, just like a building architect recognises a good-looking building. Linus Torvalds (original author and architect of the Linux kernel) even calls it "taste".

As an added bonus, Lourens ended his email with a little bit about why he loves computer science so much in general.  I wanted to include it here because the point about puzzles is so similar to what I love, too.
The attraction of computer science to me has always been the solving-a-puzzle aspect, and while software architecture is certainly not the most technical area of computer science, getting current user requirements, potential future requirements, current technology and future technological developments all covered in a single design is usually a very interesting puzzle. And a rewarding one too, if you manage to give the users a system that satisfies their needs now and into the future.

Really makes me want to be a software architect myself one day! I suppose if I do end up in industry at some point (and I hope I do, at least during internships), this is something to explore.  Thanks again for letting me share your perspective, Lourens!

Tuesday, November 16, 2010

Imagine Cup: Becoming a Computer Scientist

We all know there aren't enough women in computer science.  There have been several different approaches to encouraging them to consider it as a career, from fun webisodes to a variety of outreach activities.  But has anyone ever considered using games? Not just putting on courses on making them, but creating a real video game that puts players into the role of a computer scientist.  One that's still fun to play but that conveys how great computer science really is!

Enter Imagine Cup, Microsoft's challenge for students to solve the world's toughest problems through games, software, and other digital media.  While the UN's Millennium Goals are outlined as part of the competition's theme, entrants are not restricted to only those issues:
It might sound lofty. And perhaps a little ambitious. But when it comes down to it, this year's theme couldn't be more relevant. And while it's not a requirement to base your entry on one of these ambitious goals, you may want to use them as inspiration to promote change around the globe.
I decided that I wanted to create a game designed to get young women to see computer science as an interesting and attractive option.  Imagine Cup is the perfect place to get started.  When I first pitched the idea to some potential team mates, they weren't entirely convinced, but once I had a more concrete game concept, they got more and more excited.

The main idea of the game is to create a scenario that has a strong emotional tie for the player, where she learns computer science concepts in an effort to solve the problem presented.  I was really inspired by the movie Up, and in particular, the opening sequence showing the lives of the early childhood friends as they grow up, get married, attempt to have children, and grow old together.  It's hard not to cry at the end of it, yet not a single word is spoken.  I wanted a similar emotional tie for the players in my game.

Thus the story is that Grandma is at risk of having to leave her beloved home, similar to how Mr Fredrickson is at risk of losing his house in Up.  Social workers come and want to take her away to a group home, but you know how awful this would be for her, so you make an offer.  If you can equip Grandma's house with the necessary technology to make her independent according to the social workers' satisfaction, then she can stay.

You spend the game searching for the hardware you need, and each time you bring something back, you must solve a puzzle to activate it (loosely correlated to "programming" it).  These puzzles will actually centre on computer science topics that make sense for the technology (such as figuring out a sorting algorithm for arranging bottles of medication properly).  The player puts herself into the role of a computer scientist who is doing social good and helping someone dear to them. 

James Paul Gee talks in his work about how important roles are for learners, and explains how games can help put them in more positive roles.  Based on this, girls should have a much more positive outlook on the field of computer science.  Even if they don't end up choosing it for themselves, getting more people to see it as something other than nerdy will help prevent social barriers going up for girls who are interested in choosing it.

The best part? This isn't a girls-only game.  It's an everyone game that happens to be carefully designed to appeal to girls as well.  I can't wait to get started.

Thursday, November 11, 2010

Is a Software Architect Worthy of the Name?

I have a friend who is an architect (the kind that designs buildings instead of software).  I was reminded recently of a conversation my husband and I had with him a while back that was basically about whether you could really be called an architect when you designed software.  It didn't really make any sense to him, possibly in part because of the intangible nature of the end product.

The Architect's Hand
The Architect's Hand by George L Smyth

I was reminded because of a sentence I read in a text book I'm reading called Interaction Design: Beyond Human-Computer Interaction.  It was comparing architects with engineers, pointing out that architects care more about the user experience (what layouts of building are conducive to certain activities, etc), while engineers are concerned with the technical details (like calculations and numbers).  While I'm sure this isn't the whole picture, it does give a bit of basis for arguing why software architects can be called architects.

Software architects are generally responsible for the overall design of code.  They care about the user experience of software developers (who in this comparison may be seen as the engineers) for the end goal of making it easier for them to create high quality software.  They do this by considering design patterns, enforcing coding standards, and making high-level decisions.  In a sense, they create a layout of the software architecture in much the same way that architects do for buildings.  Even though the 'user' in the considered user experience isn't as much an end user as a regular architect would be designing for, I still think the philosophies of the two roles align.

What do you think? Are there more similarities, or do you see the two types of architect being pretty distinct?

Monday, November 8, 2010


It took me a whole two days after launch to finally get it, but I now not only have a Kinect but my first Xbox console.  After playing an evening with my husband, my brother and his friends, then again last night, I have to rate it very highly.

We played Kinect Adventures, which came bundled with the console and Kinect sensor.  It was really easy to get started with the obvious controls, and thanks to the competitive nature of our guests, we had fun playing the same level many, many times.  Our only issue was that we had barely enough space.  The taller folks of the group definitely hit their head a few times on the heavy metal chandelier.  (The image below gives you a pretty good idea of what looked like, except that we only had room for one player at a time.)

E3 2010 Xbox 360 Kinect demo booth
Credit: E3 2010 Xbox 360 Kinect demo booth / popculturegeek.com

I got Kinect largely because I see potential for some augmented reality games that I could work on for my thesis.  There's clearly a camera in there based on the photos Kinect took of us while we played Kinect Adventures, but how good it is remains to be seen.  I'm guessing the photos taken in this game are purposely low-res so they don't clog up the storage space.  Some demos show people video chatting and such, and the picture looked a lot better for those images.  After I learn XNA for Imagine Cup this year, I definitely want to look into how one can go about developing for Kinect.

The sensor itself is actually quite incredible.  As the video below shows, it throws out a bunch of little IR dots into the room and uses these to measure the full body positions of players.  The great thing about this technique is that it seems to work remarkably well in low light.  Not only were we able to play games with just one small lamp on in the corner of the room, but after calibration, Kinect ID was able to tell exactly who was standing in front of the sensor every time! Whether they do their face recognition with the IR sensors or with the cameras, I'm impressed and optimistic about the aforementioned possibilities for AR.

I'm looking forward to seeing what kinds of Kinect games come out over the next while.  The current offerings are all fairly similar - dancing, jumping and ducking, and fitness.  Some have criticized that these are probably the only kinds of games that would even work well with Kinect anyway, but I disagree specifically because I don't feel an entire game has to be played via body movement.  Instead, the main mechanics can still be controller-based with various occasions to use Kinect instead.  Some games could require Kinect, and for others it could be a bonus alternative way of completing certain tasks.

Wednesday, November 3, 2010

Passion and Problem Solving

There's a new theme over at Comp Sci Woman about what we love, and I wrote the first post for it:
There are two things I love the most about computer science: the ability to connect it with whatever your passion is, and the type of problem solving involved.
Go check out the rest of the post to find out what it is about problem solving and passion that I love, and be sure to share the love by contributing your own post to the site!