Thursday, February 22, 2018

SIGCSE 2018 Talk: Design and evaluation of an undergraduate course on software development practices

For many years I have been saying to myself, "I should write a paper about CS222." Well, I did, and I just finished giving the oral presentation at SIGCSE 2018. Check it out, standing room only!


(The empty seat in the front row is my own.)

I was the third speaker in a post-lunch session, and I enjoyed the other two talks. Nicole Herbert from Tanzania was especially interesting, as she was describing a capstone structure very much like where I think we could take ours at Ball State with a bit of curricular and potentially administrative revision.

My paper can be found on the ACM Digital Library. I think the talk was well received, and a few attendees asked for a copy of my slides. I prepared all the slides using Google Slides—which I've never done before—andthat makes it very easy to generate a public link. You can find all the slides here.

Thanks to all the attendees, especially to those who came up to ask questions and share stories afterward. I'm truly heartened to hear how much this message resonates with you. If you are new to the blog and want to read more about the Advanced Programming course, search for the "cs222" label. My most recent post on the topic is in my "What we learned" series, in which I share the outcome of the somewhat unconventional final exam format that I use.

You can find the most recent course site, with assignments and evaluation schemes, at https://www.cs.bsu.edu/homepages/pvg/courses/cs222Fa17. I actually have a break from teaching the course this semester—the first such break in many years!

My CS222 YouTube channel is publicly available. It is a collection of tips and tutorials. Some videos are extensions of in-class activities, particularly the earlier ones; I've tried to transition to more encapsulated presentations for improved modularity.

This is a quick after-presentation post. I will try to share some more about the talk later, but I wanted to get this up for any visitors who come looking for the slides and links. I am happy to share my course materials, instructional videos, and reflections. If you do end up using them in your courses and designs, I'd love to know about it. Consider the material something like CC BY-NC-SA.

If you came for the miniature painting, search for the "painting" label instead :) Cheers!

Wednesday, February 14, 2018

Empathy, Listening, and Hearing

I have more stories I want to share here than I have made time to share them, but here's one that I find my idle mind keep returning to. I want to capture it here to make sure I don't forget it.

We are reading Design of Everyday Things in my HCI class (CS345/545), and several meetings ago, the students read Norman's presentation of the UK Design Council's double diamond model for design. After some thinking and Googling, I developed a series of in-class exercises to help students understand the model. Particularly helpful was Heffernan's overview of activities associated with various stages of design. I decided that an exercise on empathy mapping might be just the right way to start.

Of course, to build empathy, you need a focus and a context. I decided to use, as a running example, students' experience dealing with the triage grading system that I use. This is a brilliant grading system that I learned from William Rapaport at University at Buffalo when I worked as a TA with him. It is coherent, philosophically-sound, and unfamiliar to almost everybody. I get the occasional question about it and the student whinging in course evaluations, but by and large, student experience with it is unrecorded: it happens in the shadows or in passing conversations. It's also something that all of my current HCI students are experiencing, and practically all of them have either experienced it before in one of my other classes or know someone who has.

I introduced the context in class and asked students to work in small groups to develop a map, writing them on the classroom whiteboards. We used the conventional map labels as shown in Heffernan's overview: what do students think & feel, hear, see, and say & do in their experience with triage grading.

It's helpful to have just a passing understanding of triage grading before we move on. Whereas conventional grading is based on percentage correct, triage grading is based on discretely measured quanta. For example, if you assume that 90% is an A, then as a test designer, you would design the exercise so that A-level work is attained by completing 90% of the prompts correctly. Notice that this is the tail wagging the dog: the fact that you are using conventional grading determines your test structure. With triage grading, any given item is scored out of three points: essentially correct (3 points), essentially incorrect (1 point), or somewhere in between (2 points). The letter grade is determined by weighted linear interpolation across scores, assuming that "A" means correct, "D" means incorrect, and "C" means middling.

Almost every group wrote down that they see percentages when they first encounter triage grading. That is, they see "1/3 points" as 33%, which they interpret as "Low Failing Grade" even though in triage grading it is a low passing grade. (You might consider 33% in triage grading as having a qualitative interpretation like 65% in conventional grading, right on the border of poor and failing.) There was broad consensus about this in the class.

I pointed out that the maps appeared to come from initial experiences with triage grading, but one of my bright students—who has taken my classes before—noted that his was more of a mid-semester view. He had recorded in his map that he became able to see the feedback as qualitative, as coarse-grained values that drove him to change his behaviors. I do not remember exactly the words he wrote on his empathy map, and indeed I didn't understand what he meant by the words he chose, but our conversation came back to the concept "seeing quanta" rather than "seeing percentages."

That was pretty interesting in itself, but here's where it kicks up a notch. A student in the back chimed in, saying essentially, "But it's still a percent." The first student acknowledged that mathematically it was, but that's not what he saw, and the one in the back insisted more strongly, essentially, "But it's some number of points out of a total, and so it's a percent, and so you're still seeing it as a percent."

Wow! What a teachable moment for empathy! I pointed out, treading carefully, that this was an example of the second student showing no empathy for the first student. The second student saw the world in his way, insisted that it was the right way, and that everyone else must also see it that way. I introduced the idea that whether or not there is an objective reality, perception drives a person's lived reality, and perception is subjective. Two people can look at the same thing and "see" two completely different things. The expression on the second student's face told me that he understood what I was saying, but he was still working on the implication; of course, maybe I observed this wrong.

We are continuing to work with this example, and I am finding it a rich context for discussion. I hope to share a few more stories here on the blog, but for now, it's time to head off to class. Thanks for reading!

Thursday, February 8, 2018

Open Letter to Fifth-Grade Game Designers

I was recently contacted by an old friend of mine who teaches fifth grade. His students became interested in designing their own card game, and he reached out to me to see if I could give them some feedback. With his agreement, I decided to post my feedback in an open letter on my blog, following the philosophy that if it's worth typing, it's worth sharing.

Greetings!

I was very excited to hear from Mr. Dietzen that he has a group of students who are eager to design games. Mr. Dietzen and I met in high school, and we are from the same small city in Western New York. I am now a Computer Science Professor at Ball State University in Muncie, Indiana; I was drawn into Computer Science in part because it gave me the tools to transform my creative ideas into real working systems.

Shortly after becoming a professor, I started looking for ways to use my love of games—and my students’ love of games—in my classes. I was able to teach a few courses on game design in addition to my Computer Science courses, and for several years I have been able to mentor teams of college students in designing and developing original educational games with local museums and schools. You can play some of my students’ games online, such as Travelers’ Notebook: Monster Tales (travelersnotebookgame.com) and Social Startup Game (socialstartupgame.info). You may enjoy some of the ideas and experimental gameplay that my students have developed, even if the games don’t have the graphical pizzazz that comes with a multi-million-dollar budget.

Game Design is Hard

By now you have realized that game design is hard. There is a world of difference between having an idea for a game and making an actual game that people can play and enjoy. Just like making a movie or writing a book, making games involves a lot of time, patience, and effort. Kudos to you for not just sitting on your ideas and actually making something out of them! I always tell my students, “Ideas are a dime a dozen; it’s the execution that matters.”

#1 Rule: Make Decisions Interesting

The number one rule of game design is this: make decisions interesting. Think about games you enjoy, including video games or card games or sports. They involve a series of interesting decisions. A game where there’s an obvious next best move is not a very interesting game. A game where your choices don’t matter at all is also not interesting. The decisions your players make need to be interesting and meaningful. If you stopped reading now, but you made all of your decisions meaningful, then you would be improving as a game designer!

Game Design is a Process

I was glad to review some of the artifacts that your teacher shared with me. One thing I’ve learned about game design, though, is that the artifacts are only part of the picture: it’s the process of making them that is even more important. Obviously, I cannot see your process, so instead I will share with you some of what I have learned.

I always teach my students that game design an iterative process. That means that you work in cycles or loops. Here is a common way to describe this loop:



Let’s break down what kind of thing you might do at each of these phases. During design, you develop the ideas you have about the rules, the art, the stories, and the systems of the game. It’s a good thing if you throw away more than you keep, so that only the strongest design ideas remain. To implement, you create a model or a prototype that you can test. The purpose of building a prototype is to test it. How do you know if the prototype is any good? You playtest it, of course! Next, you need to take serious time to evaluate your playtesting. Every playtest can teach you something, but that “something” can be… well, anything! The evaluation helps you make decisions as you return to the design step. You are back where you started in the process, except now you are smarter! You know more about your goals and your players from going through the loop, and so you are ready to go through the loop again.

The more often and the faster you can go through the loop, the better your design will be. Designing a game is a learning process, where you are learning to design that game. Going through the loop gives you the feedback you need to improve, in the same way that a good teacher or a good coach will give you feedback on your work so that you can always get better. One of the best ways to go quickly through the loop is to keep the design materials as lightweight as possible for as long as possible. I like using index cards and sticky notes as my primary tools of prototyping. I can quickly build and modify prototypes since it’s very fast to scratch out new notes on paper. These “low-fidelity prototypes” are just simple enough to be played.

Prevent Players from Doing it Wrong

A more specific tip came to mind as I was reading through the material you shared with me. I noticed that there were some card effects that said, “You can only use this once.” This kind of rule means that players have to remember a little bit of knowledge each time they play, but relying on players’ memories is dangerous. Memory plays tricks on you, and you want to avoid cases where players might remember things differently and get into an argument. It’s better to take this kind of “knowledge in the head” and turn it into “knowledge in the world.” How could you design the game to prevent someone from doing it wrong? For example, perhaps the player has to discard the card to do that action: if the card is discarded, they clearly cannot do that ability more than once! You can do similar things with tokens: using an ability may require you to spend some resources, and if you don’t have those resources, you cannot use the ability.

A Moment to Hear; A Lifetime to Master

What I have shared above are some of the most important things I have learned about game design, and they are the core lessons I teach in my game design courses. It’s the kind of advice that’s easy to hear and hard to follow, like “Speak only the truth” or “Practice your guitar daily.” After a semester of working with me, my college students begin to understand it, but I think it takes much more time to really understand it and longer yet to make it a habit. 

Wrapping Up

In closing, I want to say again how glad I am to see fifth-graders excited about game design. Game design draws on so many different areas: math, business, computer science, art, philosophy, language, history, psychology, and more! Who knows, maybe your interest in game design will lead you to being a Computer Science Professor in the American Midwest someday---stranger things have happened, or at least things exactly as strange.

I hope that you found this to be useful and that it will inspire you. If you’re interested, please feel free to write back over email or in the comments. We could also set up a video call if you wanted to follow up on some of the points I’ve shared here.

Happy designing!

Tuesday, January 30, 2018

Painting Imperial Assault: Jabba's Realm

Like many fans of Imperial Assault, I was glad to hear that Fantasy Flight Games was planning to release an app to allow purely cooperative play. After all, I had already painted and enjoyed the core set (part 1, part 2) and the Twin Shadows expansion. Having heard that the release was imminent, I bought myself an early Christmas present: the Jabba's Realm expansion. Now normally I go through my miniatures in the order I painted them, but for the sake of telling a good story, let me start with the big cheese.

Nice.

Return of the Jedi was one of the first movies I remember seeing in a theater. Not the first, which was The Fox and the Hound, but certainly among the first. I remember going to my grandparents' house afterward and telling my grandfather all about it. Let me state clearly, I am not certain that any of these memories really happened: they emerge from a kind of mental haze where sometimes they seem more true than others. Be that as it may, I definitely did see Return of the Jedi, I definitely did play Ewoks with my grandparents' neighbors, and my brother and I definitely had a whole bunch of Star Wars merchandise.

Let me tell you a story about my family. My dad has always loved monsters and creatures of all kinds. My brother and I used to sit next to him while he read old monster comics from the Kirby & Ditko era, stuff like Strange Tales and Tales to Astonish. The first word I learned to read was "Doom," which featured prominently in many of these stories. The fact that the stories' protagonists were geeky scientists who saved the world from danger may have had an impact on us, given that we are both now professors and scientists.

When we saw Return of the Jedi, of course my dad loved the Rancor. Who wouldn't? He either bought or was gifted the classic Mattel Rancor figure. Dad did not give us the Rancor to play with—much to the confusion of my young mind, which thought of toys as being for kids, so of course he should let us play with it. Instead, he painted it and set it on display on the big desk in the front room. You can find images of the generic Rancor toy online, but to me they look so plain, not like the one that watched us from his perch on the desk.

Fast forward some thirty-some years, and Sorastro produces a wonderful video in which he paints the Rancor miniature from the Jabba's Realm expansion to Imperial Assault. This put the expansion on my radar, and the release date of the Imperial Assault co-op app was enough to push me over the edge.

That's my story, now let's get into the miniatures. I'll come back to the Rancor in chronological order, since I started with these other classics from Episode VI.
Gamorrean Guards
I decided to keep the Gamorrean Guards in fairly traditional RotJ colors, but I needed to distinguish the elites from the normal units. The elites are on the right, with a red sash and copper-colored spears. These guys were fun to paint. I didn't do anything too crazy with them, but I am really happy with the amount of contrast.

All the figures in this set except for the Jet Troopers were zenithally primed from my airbrush in three layers: black, grey, and white. I am really enjoying this technique, mostly because it's so much easier to see the model details, and also because it clarifies where shade can be. For the Gamorrean Guards, it made painting their ... pants? ... quite straightforward: thinned paint to get the base tone, with the highlights showing through, then just a little wash and highlight for increased contrast.

Jet Troopers
The stripes on the jet troopers give them a little more pizzazz than the regular or heavy Storm Troopers. The downside is that they are kind of goofy. The card art leaves room for interpretation, and I had fun looking around the Web to see how others approached painting them. I saw some very nice custom sculpted flame effects on the jets, and I considered doing something similar. By the time I got the bulk of them done, though, I felt like moving on, so even the jet backpacks are really just perfunctory. Good enough for tabletop. It's hard to imagine that we'd really miss the detail, when Storm Troopers are rarely on the table for long.

Weequay Pirates
I was least excited about these guys, but I think they turned out well. That's a good thing, since they took ages: so many shades of brown, with lots of overlapping bits. While I was working on the skin for these guys, I had one of those moments where they looked good under my painting lamp, but I thought, "Is that really enough contrast?" I took it one step further and got a little panicked, but when I held them out at arm's length, it was really needed for the extra pop.

As with the Gamorrean guards, and unlike my Trandoshans, I wanted to keep with the color schemes seen in the movie. The differences between the regular (left) and elite (right) are the colors of the knife and of some of the leatherwork, notably the pauldrons. Time will tell if that was sufficient or if I should go in and change something more dramatic, such as the weapon or hair.

Rancor

Rancor
As Sorastro promised in his video, the Rancor was not too difficult and lots of fun to paint. I more or less followed the steps from Sorastro's video, starting with a wet-blending of the base coats. I was having so much fun, I actually forgot a step: I didn't drybrush highlights on before washing as I intended; a combination of light drybrushing and manual highlights later seemed to cover for the mistake.

What might not be so evident from the photos above is the difference between the lit and unlit portions of the model. Take a look at this:
I've fallen, and I can't stop making 1980s references
That picture makes it easier to see the darker underbelly. Actually, the picture is too bright I think; the difference is more stark. It's kind of a neat trick that I remember reading about when I was first getting into painting and trying to understand highlights and shades: holding the model upright, it looks normal; flip it upside-down and it looks goofy because of the shades on top.

I did some subtle tinting of the model, though more subtly than Sorastro's. The back and top have a greenish hue, and the face and neck have an orange tint. Unlike most of my subtle moves which, in retrospect, look too subtle, I think this worked out OK, preserving the overall brown color of the figure.

Somewhere in the middle of working on these miniatures, I made a trip to Hobby Lobby to pick up a model kit for my son's birthday. While there, I figured I'd spend a few bucks and try Vallejo's Glaze Medium—something that good ol' Sorastro uses all the time.
Smooth.
Wow, this stuff is amazing. A drop or two in some paint gives it a wonderful creamy texture and lots of open time for blending. If adding a little water as well, then the transparency starts to come through, for when underlying zenithal highlights should be shown. I've been using Liquitex Glaze Medium for several years for my glazes. It is thick and gloopy, where Vallejo's is quite thin. The Liquitex is definitely good for adding body and performance back to paint that has been aggressively thinned with water for traditional glazing. I haven't tried this with Vallejo's, but aside from idle curiosity, I cannot think of a particular reason to when I have the Liquitex. It's more of the texture and open time that I'm enjoying from the Vallejo product than anything I would call "glazing."

Enough fun with giant monsters and additives: time to move on to the heroes.

Here is Onar Koma, the furious bodyguard. It can be hard to tell if an aqualish is furious, but if you asked him, he would tell you he is furious, I'm sure. The hazard stripes on his shoulder were freehanded, dark grey over a yellow gradient. They came out perhaps a bit wider than the card art suggests, but I think they look fine for what they are. The weapon on his back is nothing special, but I spent a little time trying to get the two-tone colors of his handgun.

I continued to experiment with wet-blending base colors for many of the figures in this set, but I certainly spent more time on the uniques. For Onar Koma, I think I got a very nice transition from lit to shaded skin, using selective washing to emphasize his musculature. Again, the glaze medium was quite helpful here in giving a little extra time to get smooth blends in place; follow this with a wash to bring the tones together and then brushed highlights, and it turns out effective and fairly quick.

Onar Koma seems like an interesting character to play, since he has a lot of health but no defense dice. That's different enough to be intriguing.




Vinto Hreeda has the most dynamic pose of the set, and he was fun to paint. I think the eyes turned out quite nice: that's all painted effect, not gloss varnish. The little red accents on his shoulders were freehanded to match the card art and broke up otherwise dull metal ribbing.


Shyla Varad also has a bit of freehanding: that colored divot in the middle of her chestplate is all painted on top of a flat panel to match the card art. The real challenge with her was the skin tone. Her card art gives her a medium dark flesh tone of uncertain ethnic heritage, but I thought the sculpt made her look distinctly South American. Her eyes are squinting so as to be nearly closed, so I decided not to paint them in, although searching around the Web, you find plenty of other interpretations.

Her armor—and practically all of the metals in the set—were painted by mixing my Vallejo Air Metallics with regular acrylics in about 50/50 proportions. This means the weapons of this set are a bit more muted than my base game characters, but I think the effect is good.
Mandatory Heroes vs. Rancor Shot
I gave all these miniatures flat black bases to match the rest of my Imperial Assault miniatures. However, I read something in the past few weeks that stuck in my head: a talented painter explained that he doesn't like black bases because he wants the highest contrast of the model to be on the figure, not between the figure and the base. (I'll add a link if I can remember where I saw that or stumble across it again; drop it in the comments if you know.) I'm not sure it's worth my going back and repainting all the Imperial Assault bases to something like medium gray, but it is something I am considering moving forward. Also, I think I prefer flocked bases generally speaking, but I also like finishing projects, so these guys will just have to live with it.

Regular readers may recall my periodic frustration with my miniature photography process; astute and regular readers may have noticed that these pictures all have clear colors and consistent temperatures. It was my third batch of photos of this set, the first two having been taken in my lightbox using a combination of apps and settings. In a fit of frustration, I decided to just go back to my old standby: curl a piece of copier paper, set it on my desk under my painting lamp, and take a photo. This got me very close to what I wanted using the default camera app on my phone, and it was moderately better with manual exposure settings. I switched to OpenCamera, where I could modify additional settings. For this shoot, I used ISO 100 with 1/100s exposure time. For the record, I shot them around noon when the sun was behind some clouds. I swear, one of these days I'll have a predictable configuration.

My sons and I already played through the Imperial Assault app campaign, when it only supported the enemies from the base set. It was recently upgraded to include all the expansion enemies, but as far as I can tell, it's still the same campaign. Looks like I'll probably sit on these miniatures until the next major update to the app. While we had fun with the mini-campaign of the Twin Shadows expansion, I'm not sure I want to run the longer campaign from Jabba's Realm with them, not when we have so many other exciting games waiting to get to the table.

One last note for anyone who might want to leave a comment, and it's the same warning I gave my students this semester: no discussion of Star Wars movies made after 1983. We don't want any spoilers, after all, or to acknowledge that some of them are ridiculously bad.

Thanks for reading!

Tuesday, January 9, 2018

Why students want to learn HCI

In the first day of my HCI course yesterday, I decided to pull out a simple exercise that I learned from my friend Joyce Huff, a faculty member in the English department.  Around a year ago or so, she told me about how on the first day of class, she likes to ask her literature students what they hope to learn in the course, and how this helps her engage with them in a conversation about the course topics and goals. I did something similar, asking my students what they hoped to learn by studying Human-Computer Interaction.

I joked at the opening that I didn't want to hear, "I am in the course only because it fits my schedule," and I suggested that this would probably be a good reason to take a different course. The first student was a friendly chap who had taken my Game Programming course last semester, and he introduced himself saying that he was only there because it fit his schedule. I assume he was being honest with me, and I responded with something like, "Well, even if that's true, it's not really what I want to hear." Again, I was speaking half in jest, but in retrospect, maybe I shouldn't have; it might have actually been good to let students acknowledge that they had no goals besides three credits of elective. Whether it was a missed opportunity or an instance of forcing reflection, I suppose I cannot now know.

Many students mentioned that they want to learn make GUIs and to make them well. A few admitted that their own UI design skills were not very good and that they hoped the course would improve these. Only one student that I can recall expressed explicit interest in programming GUIs; the others whose expected outcomes went in this direction were talking more about design. No one mentioned evaluation explicitly, although it seems any undergraduate who went through CS222 should know that some kind of acceptance testing would be part of this process. It may simply not have been worth mentioning to them, or they have not considered usability evaluation as something that can be extracted and studied on its own.

A few students talked about wanting to know more about design philosophy, and I suspect these students might be the happiest with my course plans. One described his goal as being to approach the "bridge" between the technical artifact and human psychology. He was wary of using that metaphor, but I encouraged him. I did ask a clarification about whether he meant a bridge as might be found in software architecture, but he confirmed that he was talking about the divide between the technical and the human.

The only time a specific technology came up was when a student mentioned interest in PLCs. One other student explicitly said he was interested in HCI design beyond simply screen-based interactions. I was a little surprised that this only came up once, given the popularity of VR and AR, but I was glad to hear it come up once.

A few students said that they were inspired by experiences with bad user-interfaces, and that they wanted to be able to critique more effectively, justify their critiques, and create something better. Games came up once, and so did medical technology, as particular domains of interest.

Two students mentioned their capstone projects specifically. All of our undergraduates have to complete a two-semester capstone sequence, which means that these students are taking the HCI elective while completing their capstone projects. That may prove to be challenging for them, as teams are perennially cramming for these projects at the end of Spring. At least they see the opportunity to apply knowledge between classes; I will have to remind them to manage their time wisely.

One student said that she simply likes design, which I think is a great honest answer. If we had the benefit of time, I could have asked her how she defines "design" and used that as a springboard into a broader conversation, but this was really an end-of-class discussion.

That's everything I can pull out of my notebook and my memory. I thought it might be interesting to share here, and for me to have for reference later in the semester. I already wish the class were 75 instead of 50 minutes, since the short time really cramps our conversations, but I'm hoping to hit stride soon enough.

Monday, January 8, 2018

Winter Course Planning: Preparing to teach CS345/545 after an eight-year hiatus

Good morning, blog. This is the first day of the new semester here, and there's one more story I want to share before the semester gets rolling.

Last semester, after teaching assignments were made and approved and after students registered for their Spring courses, one of my colleagues realized he had a critical conflict that left him unable to teach one of his courses: CS345/545, our cross-listed course on Human-Computer Interaction. I designed this course around 2008 as a major substantial revision to a course on GUI Programming, that course being a holdover from when graphical and event-driven programming were still pretty novel. However, the last time I was able to teach the course was Spring 2010, when I was also experimenting with managing a course entirely in public using Google Sites. I have become more involved in game programming, immersive learning projects, and managing the CS222 course since then, and this has left me without spare time to teach the HCI elective.

There have been a few significant changes since 2010. Last time I taught the course, I was just finishing my work on App Inventor for Android, now MIT App Inventor, and I had about 16 Android G1 phones. I themed the HCI course around mobile development with Android, and I lent the phones out to my students. I was basically the king of the faculty: touchscreen smartphones and mobile development were brand new ideas, and I authorized the students to take a deep dive into this new area. One group even got their app onto what is now called the Google Play Store.

Here's another interesting change since 2010. I had an undergraduate teaching assistant that semester—a graduating senior named Austin Toombs. Austin had done several research and creative projects with me as a student. He went off to get his Ph.D. in HCI and is now a professor at Purdue Polytechnic. When I agreed to swap courses with my colleague, he was the first person I contacted to ask about what he thought were some of the best resources and ideas to share with my students in the course. I'm proud to have had some role in the development of this young scholar, and it's great to be able to reach out to him for help as well!

CS345/545 continued to be taught during these past eight years, but it was always done by faculty who have no real interest or expertise in that area. This always struck me as tragic, since I believe this is one of our most important courses. I got involved in Computer Science because of the intersection of technology and people, approaching this idea through games, visualization, and education. Educating students to understand this intersection strikes me as more crucial to the modern computing environment than any particular piece of technology, but I suppose we all have our biases.

The departmental syllabus for CS345/545 includes both technical and human-centered learning objectives. I have decided to focus primarily on the latter, in part because our CS222 course provides a good foundation for the former. Last time I taught HCI, we didn't have a prerequisite course that introduced concepts of Single Responsible Principle or layered software architectures; now that we do, I can draw upon what students learned before to talk about a few GUI-specific concepts. Honestly, I haven't planned complete details that far out yet, but I am thinking of discussing concepts like data binding and MVP vs. MVC. Unfortunately, my department's graduate curriculum committee seems to have no real understanding of the role CS222 has for undergraduates and does not have any real equivalent prerequisite for the grad students: whereas undergraduates need to have CS222 to take the HCI elective, grad students only need two semesters of programming and an algorithms course. There's a sense in which we are setting them up for failure, since they are roughly 33% less prepared than the undergraduates; I suppose we can just hope that a few years of life experience is enough to make up for it. Perhaps I'll try yet again to suggest prerequisite changes to them, but that rarely seems to move forward.

I decided to start the course by reading the revised and expanded edition of Don Norman's classic The Design of Everyday Things. I first read this book when I was prepping a section of CS345/545 years ago, and although it was influential, the examples were fifteen years old at the time. This 2013 revision is amazing: he basically rewrote the book with the same core ideas, but with updated examples and newer research and practical issues. The students will be reading this book together during the first several weeks of class, and I have set up a series of assignments and in-class exercises to get them thinking about design writ large as well as design of computing systems. This series of readings and assignments can be found on the course description that I have been working on.

Once the change in my teaching assignment was official, I reached out to my friend and colleague Ronald Morris, Professor of History, to see what kinds of interesting projects he had going on in the Spring that perhaps could dovetail into a CS345/545 projects. As I expected, he's involved in a veritable buffet of projects. One of these has him mentoring a team of students who are captioning historic photos for Indiana State Forests. We're in the process of determining whether my students could use these data to create original interactive timeline systems to help users understand the chronological —and perhaps the geographical—relationships among the photographs. This project jumped out to me since it seemed like something that risk averse students could approach in a rather conventional way, while creative or ambitious teams could take it in novel directions. I haven't mentioned this in the course description, but I did hammer together an outline of how I expect any such project would be graded: as with my game design course, I would be looking more at process than product, and particularly, research-informed justifications of design processes and artifacts.

I am glad to be working with this course again after such a long hiatus. It also gives me a break from teaching CS222, my first such break since my Spring 2012 fellowship at the Virginia Ball Center for Creative Inquiry. Another positive outcome of this 11th-hour change in teaching responsibility is that another tenure-track faculty will be teaching CS222, and perhaps this will help more of the department to understand this slightly peculiar course whose requirement is not often capitalized upon in other courses. CS345/545 and my immersive learning game production studio course will be my only two courses as I work with a small student team to wrap up the enhancements to Collaboration Station, and so I'm looking forward to a challenging and rewarding semester.

Thanks for reading! If you have ideas for this semester's HCI class or memories from taking the class in the past, please feel free to share.

Monday, January 1, 2018

The Games of 2017

I started logging my board game plays on Board Game Geek in 2016, and I wrote about that experience on my blog a year and a day ago. I continued the practice this year and will share a few numbers and highlights in today's post—the first post of the new year.

Let's start with summary data on my board game activity for 2017:
  • I logged 505 board game plays over 114 different games.
  • My h-index for the year was 11.
  • My overall h-index is now 15.
My overall h-index of 15 means that there are 15 games that I have played at least 15 times. At the end of 2016, with just one year of logging plays, my h-index was 12. This metric is borrowed from assessment of scholarship, and as with scholarship, it is more difficult to raise that number over time. Incidentally, Google Scholar currently reports my academic h-index as 12, meaning that I have a dozen articles that have been cited a dozen times each. Hence, 2017 was the year that my games h-index overtook my academic one; I don't expect them to change places again!

My h-index for the year was 11, and here are the games I played 11 or more times this year:
Animal Upon Animal31
4 First Games18
Clank! A Deck-Building Adventure18
Terror in Meeple City18
Rhino Hero Super Battle16
Labyrinth15
Crokinole14
Massive Darkness13
Descent: Journeys in the Dark (Second Edition)11
Red711
Star Wars: Imperial Assault11

The reason those first two are so high is that this is the year my youngest son started playing board games with me. He's two years old, and we first introduced him to "bird game" within 4 First Games. It's a simple, noncompetitive, color-matching, turn-taking, roll-and-move game, and he loved being able to play with me, my wife, and his brothers. It teaches the basic structure of games but is not very interesting beyond that. Looking for something a bit more engaging to play with him, I introduced him to Animal Upon Animal, a simple dexterity game of stacking wooden animals. I was a little surprised at how quickly he took to it, and it became his favorite. He still gets a little mixed up about the die results sometimes, but he loves helping to set up, making sure each player gets one of each of the seven animals. We just introduced him to Camel Up a few days ago and that may have unseated Animal Upon Animal as his favorite game. The other day I hollered out to the family, "Who wants to play Camel Up?" and he turned, pointed to himself, and said so sweetly, "Me play Camel Up?" He ran to the game table beaming when I told him he was welcome to join us.

Something I had not tracked last year was my player h-index, which is currently also 15. That is, there are fifteen people with whom I have played 15 games. Since I started logging my plays, I have played most often with my oldest son, my wife, and then my second and third sons. The next player down is my game-loving brother, although it's a big step from my household to him; I suspect if he lived a few hundred miles closer, our numbers would be substantially higher together. Just after my brother is my youngest son, who I suspect will rocket up the charts in 2018.

I was a bit surprised to see that I had played so many more different games in 2017 than in 2016: 114 vs. 85. I think a big part of that must be that I had several opportunities to visit my brother during the year, and he always introduces me to interesting new games. I went to very few game nights with friends in 2017 and hosted fewer than I would have liked.

My second son graduated to deck-building games this year. We started with Legendary: A Marvel Deck Building Game, but this was a bit too complex for him to manage. Also, I had forgotten how much I do not like the graphic design of the game: tiny text placed over busy backgrounds. We pulled out Dominion and played that several times, then returned to Legendary, and he had a better grasp of the common systems by then. Somewhere in there, I acquired Clank! after playing it with my brother. I could tell it would be something my two older boys would enjoy playing with me. The younger one rarely wins, but he has been doing better and better. I also taught him how to play Flash Duel, and that's one that we regularly turn to when we're looking for a two-player game. His skill with the game, and his understanding of how the powers interact, has demonstrably improved over the year.

Terror in Meeple City was a family game gift for Christmas 2016, and it's one we regularly return to. I bought Rhino Hero: Super Battle for my third son for his fifth birthday, after hearing a glowing pre-review on the Shut Up & Sit Down podcast. We have slowed down on playing Terror in Meeple City since getting Rhino Hero in part because the latter is such a breeze to set up and tear down. Terror in Meeple City is fun, but it is fiddly and needs a lot of space; we can play Rhino Hero: Super Battle on the ottoman in the living room with no trouble. Playing on a lower surface also makes the board and towers reachable to smaller children.

My wife, my eldest son, and I started a campaign of Descent using the Road to Legend app. I wrote about painting the miniatures this year—Villains, Heroes, and Visions of Dawn monsters and heroes. I'm not sure how far we are into the campaign, but we stalled several months ago due to more family changes: we advanced my second son's bedtime, which meant that the two-hour block in which we older three could play a board game got cut down to an hour. It has significantly changed the dynamic of what games I have played. The positive side is that I've been able to play more games with my second son; the negative side is that these are falling back to simpler games, so I am not getting the crunchiness I like from games like Mage Knight.

Over the summer, I picked up the Twin Shadows expansion to Star Wars: Imperial Assault, painted the minis, and played the mini-campaign with my two older sons. They caught right on to it and we had a great time. In fact, they beat me on every mission, but not because I was holding back! My oldest son played Jynn Odan, who is the fastest hero with a lot of movement-related: when she had two activations per turn, she could cover huge portions of the map in almost no time. A few weeks ago, I was excited to get news of the Imperial Assault companion app's release, and now my sons and I are eager to head into the final mission of that short campaign. I'm looking forward to FFG's updating the app to contain more missions and expansion content beyond heroes and items.

Clearly, Massive Darkness has been a hit with my boys. I wrote a little bit about it in my posts about painting the base set heroes and the ones I got as a Kickstarter backer. The game is a bit inelegant and fiddly, and yet we have a great time playing it. It has the feel of a Diablo-style ARPG: a swing of the axe fells multiple goblins, you pick up mountains of treasure, and sacrifice the weak treasure in hopes of getting something better.

Comparing this year's stats to last year's, I was at first astonished to see that I had more plays in 2017 than in 2016: 505 vs. 441. One explanation for this is that so many of this year's plays were lighter games with younger kids: three rounds of Animal Upon Animal still doesn't come close to a good game of Archipelago in terms of time or gamer satisfaction, but it counts three times as many for counting plays—and it brings great joy to my younger boys. Looking at all the games I played this year, and even last year, I see a few things in my collection that have never hit the table. Games like Mysterium and Telestrations are ones I purchased after learning about them or trying them, thinking they would be great light games for family and friends. However, when I'm picking games to play, there are other games I'd pick over these, like One Night Ultimate Werewolf, Pictomania, and Wits & Wagers. My brother and I were just talking the other day about how it's relatively easy to get rid of games you don't really like. This might be the year that I need to think about getting rid of games I do like, but that I don't like as well as some other games. There's little reason to fill up the game cabinet with things that don't get played, after all. It's the playing and the painting that I prefer, not merely the collecting.

Last year I wrote about how I was hoping to increase the number of tabletop RPGs that I played during the year, but that was only hope, not real planning. I played one game of The Princes' Kingdom with my two older sons; we had a great time, but as any gamesmaster knows, it takes a lot of time to set up and execute a good session. I wrote about the afternoon my boys and I spent playing Index Card RPG shortly after that game was released. That was an enjoyable session, but I ended up not returning to it, neither with my family nor my students. For Christmas 2017, I bought FFG's new release, Legacy of Dragonholt, which I was a little surprised to see that BGG lists as an RPG rather than a board game. (Why would Legacy of Dragonholt be an RPG while Sherlock Holmes: Consulting Detective and Tales of the Arabian Nights are board games?) It has only hit the table twice so far, but my two older boys and I are enjoying. My only substantial criticism so far is that the game invites you to make interesting, deep characters, but then of course the prose is not about them: the prose is all about the supporting characters. How could the game know anything about the characters you've just made? It's as if the game needs improvisational cues rather than prose—rather than say "You pull a rune from your pocket and use it to blow up the cliff side, slowing the approaching bandits" something more like "Improvise a scene in which [acting character] uses their skills or items to slow down the approaching bandits." That would be an RPG—Dragonholt is a board game.

I think it's interesting to compare my 2017 plays with my overall plays, so I'll close by sharing my list of games I've played most over the past two years of data collection. Some of them surprised me!

Animal Upon Animal46
Crokinole41
Labyrinth28
Terror in Meeple City26
Carcassonne25
Dumpster Diver22
4 First Games21
Runebound (Third Edition)20
Camel Up19
Samurai Spirit19
Clank!: A Deck-Building Adventure18
Flash Duel18
Dungeon Fighter16
Red716
Rhino Hero: Super Battle16

The last game of 2017 was my third play of Patchwork with my wife, and it was also her first win against me. It was a fine ending to a great year of gaming. Thanks for reading, and have a happy 2018!