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
Massive Darkness13
Descent: Journeys in the Dark (Second Edition)11
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
Terror in Meeple City26
Dumpster Diver22
4 First Games21
Runebound (Third Edition)20
Camel Up19
Samurai Spirit19
Clank!: A Deck-Building Adventure18
Flash Duel18
Dungeon Fighter16
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!

Wednesday, December 20, 2017

Improving Collaboration with the Heart of Agile: Notes from Alistair Cockburn's Interview for 1st Conference

My students and regular readers will likely remember that I am a fan of Alistair Cockburn's work. His book on software development is one of the best I've ever read, and I have been reading his blog for years. Earlier this week, he linked to a video in which he was interviewed by the organizers of 1st Conference in Melbourne. The conference has refocused to emphasize Cockburn's latest conceptual model of agility, the Heart of Agile.

I listened to the interview while doing some painting, and a few things stuck out to me that I want to remember. First and perhaps trivially, Cockburn explains that he lives in different places for a few months at a time, traveling the world with two backpacks and a suitcase that contain his possessions. He travels the world like an old-world bard, sharing stories that he has heard along the way. I don't know that this is relevant to my teaching and professional practice, but it is interesting. I do believe that such a lifestyle would give someone a very different perspective on what the prevailing culture assumes to be true.

All the discussion of Heart of Agile makes me think that perhaps this is something I should introduce in my Spring courses, particularly the game production studio course. I have become an advocate of inspirational posters that are tied to team identity, things like having the vision statement or Sprint theme posted publicly so that we can look up and see it. Perhaps I can post something like this canonical representation of Heart of Agile in the studio space and see how students react.

There's a short discussion in the interview where Cockburn talks about how this model is not designed specifically for software development but for organizations in general. He hypothesizes that it was discovered in software development because we have a particularly keen understanding of what "deliver" means, but he goes on to explain how this model is being used also by NGOs. During this part of the interview, I kept thinking, "What if the university adopted this idea?" Cockburn points out that it always starts with micro-steps. I am not sure even what micro-steps the university could take, but that would have to be the topic of another essay. Actually, watching a part of the video again, I do know what it would be, since he talked specifically about what a big organization can do: center its budget upon improving collaboration. I think it's pretty clear that we don't do that at the university, and I wonder what it would look like.

Around the 25-minute mark, when asked what a good starting spot is for an organization, Cockburn describes an exercise focused on improving collaboration. As he discussed it, I had visions of running this exercise with student teams, either in the studio or in a class like CS222, where teams inevitably have to deal with the real problems of failed collaboration attempts. The exercise involves each person drawing a diagram of all the people they have to collaborate with to get something shipped. Mark each collaboration as whether it needs to be weak, medium, or strong, and label each one with the current quality of the collaboration on a 1–10 scale. Finally, pick out the two collaborations that you consider the most important, and name one thing that you personally can do to improve that collaboration. A second step would be to write two or three stories for each collaboration about a time that it has worked well; this leverages the idea that if we look for good, we can create more good. I can see both of these being valuable for the kinds of student projects I mentor, even though their collaborative networks may be a bit small. Their version of "deliver" is a bit different from an industrial sense, but as Cockburn says, the Heart of Agile should apply anyway.

The final element of the conversation that jumped out at my was the discussion of host-leadership. This was not a phrase I had heard before, and Cockburn praised the interviewer for his reference to it. Cockburn makes the claim that , "'Servant-leader' is an outmoded term that is not serving the purpose anymore." This surprised me, since I feel like I generally understand the concept of servant-leadership and have found it a useful metaphor. Host-leadership uses the metaphor of host, and the movement seems to be grounded in the book, Host: Six New Roles of Engagement. I have not read the book, but I came across this summary of the six roles, written by the book's co-author. The roles are Initiator, Inviter, Space Creator, Gatekeeper, Connector, and Co-Participator. Nothing about the description struck me as particularly novel, and I admit I have not searched for empirical evidence to support any of the claims in either model. I am left having to acknowledge Cockburn's vast experience in visiting many different organizations in many different places, and that he must be seeing dysfunctional organizations that need new metaphors. The space of my experience is so tightly limited to the classes and courses I myself control, I know that my perspective is myopic. Even the whole "Agile is Dead" meme—with the word "agile" being entirely co-opted for profit, and causing the necessity of finding the real heart again—is not something I personally experience, but only something I vicariously experience through readings, interviews, and discussions. Reading about host-leadership is not something high on my list of priorities, as I've become more interested in concepts of safety as expressed most concretely in Anzeneering. Still, I will have to keep my ear to the ground and talk to my network of friends and alumni in industry to hear how these ideas resonate.

Tuesday, December 19, 2017

Reflection on the Fall 2017 Serious Game Design Colloquium

I had a great time in my Honors Colloquium on Serious Game Design this past semester. I consider myself very fortunate to be able to teach this course. It is not part of my usual load, but I have received internal grants that give me the course release from regular Computer Science courses. This is possible because I tie the game design course to my immersive learning work: our study of serious game design is framed around a community partner's needs, and the students' learning manifests in playable prototypes that are delivered to the partner. The best ideas from the Fall become inputs into my Spring Game Production Studio course, which is also made possible through the grant and the generosity of my community partners.

I wrote last summer about the significant revisions I made to the course for this past semester, and I want to take some time this morning recording my reflections on these.

The most significant change was that I increased the amount of reading and exercises that students completed prior to beginning their final projects, from about a third of the course to about half of the course. We read the first ten levels of Schreiber's Game Design Concepts, more than I had assigned before, and I also picked out a selection of my other favorite readings, which you can see on the course site. Each of the readings had a corresponding exercise, most involving students creating some artifact that represents their understanding and sharing it with the class.

This portion of the course went well and I was pleased with the amount of student interaction and apparent student learning. One noteworthy story is from the reading of Schreiber Level 8 and completing the homeplay assignment described there, which is to sketch a game design that would appeal to "griefers". I prefer Bartle's "Killers" term, and the fact that the reading drew heavily on Bartle Types is significant here. All of the students—as memory serves—described games that had a similar structure: multiplayer games where you kill or disrupt other players in order to win. When they finished their presentations, I told them that I thought they had all missed the mark: the goal of any competitive game is to beat your opponents, and so if killing or disrupting them is the game's mode of victory, then it's Achievers who are being motivated here, not Killers. This got them thinking and led to a good discussion about how everyone who plays a game has to follow the rules—otherwise they're not playing the game!—but that player types give us a way to think about how players bend or apply the rules to serve their own ends. It may merit mentioning that this is an Honors College course, so all the students in the course are "good students"; that is, they are predominantly Achievers in the game of education!

We wrapped up the first half of the course on a positive note and moved on to students' pitching their ideas for final projects. One problem that arose here is that students were happy to throw ideas around and comment upon them, but I think they couldn't see the bigger design issues that were at play. If I am able to teach the course again, I should have them pitch based on an actual prototype rather than just ideas, since they suffer from the blindness that defines beginners. I recently listened to an episode of Ludology in which Geoff Engelstein suggests that every game should have a vision statement, and perhaps I should also require something like that. It reminds me of a little story I neglected to tell in my post about Fall's CS222 class, where a team had real trouble focusing their efforts. I suggested they invest time in creating a vision statement, such that they could use it as a sieve for all of their creative ideas. It took longer than they expected, but once they had it, it served them well for the purpose I suggested. For some of them, this was one of the major takeaways of the semester's work.

I already wrote about how students showed a dearth of theory in their final project production work. I ended up keeping the question basically as I had written there, just with minor editorial changes:
Consider the discussions we have been having in class during the pitch and production period (October 17 through November 30) along with the essays you have written above. According to my notes, no student referenced any theories from the first half of the course during this period. Write an essay addressing the question, Why is that?, and What are the implications? To address this, you might consider corresponding questions such as Could it have been otherwise? or What are the relative merits of personal opinion vs. theory?, although there are certainly other directions one could take a thoughtful essay. [6 points]
As one might predict, a majority of the submissions were rather flimsy justifications around the idea that they had internalized the lessons from the first half of the semester and were implicitly drawing upon them. I don't think this really holds any water, and none of them went through the effort of considering reasonable objections to their point: for example, in any humanities course, you wouldn't be expected to get away with not citing the class readings in your final paper. Perhaps I should have reminded them that a good essay has to stand up to obvious criticisms.

However, one submission really blew me away. The student wrote coherently and convincingly about confirmation bias and the dangers it poses to students. He described how the majority of Honors College courses are designed to help students separate themselves from their biases to gain an enlightened view of culture, but that in this course, they had fallen into the trap of doing the minimum required work to get a good grade out of the education machine. He points out specifically that the course is comprised primarily of hobbyist gamers who are programmed into confirmation bias by reading IGN and Metacritic reviews. His essay really grappled with what the question posed without succumbing to generalizations or educational folk tales.

I want to document here a few other potential shortcomings so that I can consider them if I am able to teach the course again. First and foremost, although I provided explicit goals for each status report presentation during the production period, you wouldn't have known it from the student presentations. For example, one of the requirements was to report on the type of playtesting that was performed and how it was influencing you, but many were clearly not doing any playtesting at all. In retrospect, I could have included some kind of tangible submission, such as a completed status report template, to hold students accountable to the process. After all, the course and their grades were supposed to be about the process, and so I should capture artifacts to support that.

Speaking of playtesting, it was late in the semester that I realized we never really talked much about it in class, and that's in part because I had not assigned any readings or activities about it. I should consider adding readings, such as Schreiber Levels 12–14, so that they have a better sense of how to conduct playtesting. In Fall 2016, my guest speaker from Megacon Games spoke strongly about the value and process of playtesting, but the students didn't hear that story this year.

Our last four class meetings consisted of two practice presentation sessions and two final presentations to the community partner. The practice presentations were a good investment I think, as the final presentations were much improved in many cases. However, it was a breakneck pace, and there was little time for students to share their final feedback with each other. I had them write a bit about each others' work in the final exam, but that's not the same as talking to each other. Perhaps next time I should pull back the presentations on class meeting so that we can have the final one for some kind of debriefing about the semester. I am not sure who this would play into the final exam. For some time, I have been giving the exam as purely online in large part because they kept scheduling the final for Friday afternoon of finals week. It was the first day of finals this year so I could have managed it differently if I had thought about the need for a final reflective meeting with the students.

I had an excellent meeting with my collaborator at Minnetrista at the end of the semester, and he pointed out that for some of the games, it was a bit hard to see how they were tied into the theme. This aligns with the idea of having students produce some kind of vision statement or to have to list the expected learning outcomes in status reports. We have some strong ideas for moving forward into the Spring production studio course; he had a meeting with his staff last week to discuss it, and I am awaiting a summary of the meeting before moving forward with preproduction steps for the Spring Studio course.

I have to close with the same thought I always have at the end of the course: was this the last one, or will I be able to teach it again? It's an uncomfortable feeling for a course I enjoy so much, but as I said, my teaching it is contingent upon receiving funding to do so. I have had some discussions with my department chair about what it would look like to bring this into a regular departmental course that I could be loaded to teach. While it's possible to do so, it's impractical: Computer Science is growing at an unprecedented rate, and he is obligated to assign faculty first to our majors and courses that support our college's programs. Even though I am sure a game design course would be popular, it's not popularity alone that justifies its being offered. I believe I could design the course in such a way to fill a slot in the current core curriculum, but it's not clear that even that would justify its being offered over, say, CS222. I am hoping that perhaps our new university administration will bring with it some new opportunities and structural changes that I can leverage. In the meantime, I need to continue thinking about next academic year and what kinds of projects I want to commit to.

Thanks for reading!

Saturday, December 16, 2017

What We Learned in CS222, Fall 2017 Edition

Continuing my series, I would like to share with you the results of the CS222 Fall 2017 Final Exam exercise in which the students list what they learned and then vote upon them. This time around, I set a timer for 30 minutes and told them, "Let's see if we can get 100." I don't normally set a goal like this, but I think it inspired them to create one of the longest lists, at 155 after removing redundancies.
Each student got seven votes—the floor of the base-2 logarithm of 155, of course. Items with six or more votes formed a convenient cluster, and this set included:
  • TDD (13)
  • Good names (12)
  • Refactor vs. Redesign (7)
  • Self-reflection (7)
  • git (6)
  • Objects vs. Data Structures (6)
  • Time management (6)
These reflect the kinds of things CS222 students usually vote for and write about. TDD is a major theme of the course that a lot of students struggle with, and git is used throughout the course. Good naming and the object vs. data structure issue come right out of Clean Code. More teams than usual struggled to incorporate feedback into a viable final project, and so it's not surprising to see time management show up. 

The other two are a little surprising. Self-reflection is something that I emphasize throughout the course, most often manifest in reflective writing. Writing reflectively is required in several assignments and at the end of each iteration, and it also features in many achievements. It doesn't normally show up as something that students believe is one of the most important outcomes of the course, but I am glad to see it there. Maybe the fact that so many teams struggled means that more of them saw the value of careful reflection. Buried deeper in the "what we learned" list was another item I don't remember seeing before, "Improving composition skills." It did not receive any votes, but the fact that a student recognized that my feedback was designed to help him become a better writer, well that's a win in my book.

"Refactor vs. Redesign" is also a bit of an odd duck. I regularly hear students begin to misuse the word "refactor" to generally mean "do something good." I called a team out on it in my comments, reminding them that the two words mean different things. Many members of that team chose to write about this phenomenon, although honestly their definition of "refactor" was still not as crisp as I would have liked.

There were a couple of other interesting items mentioned that reflect the particular challenges this cohort faced. Accumulating a few votes were items like "Contingency planning," "You can always do better," and "Don't be complacent with your own code." "When to ask for help" got two votes, which is good but maybe not enough, since in many of the third iteration projects, I had to include the rhetorical question asking why they had not come to consult with me—particularly on iteration 2 feedback that they didn't incorporate. One of the most fascinating essays I read was of a student who came to the realization that criticism of his work was not criticism of him, and he contributed "Separating yourself from your work" as one of the most important things he learned. Perhaps one of the greatest items, which earned three votes, was, "We are beginners." I always close the class with a discussion of the Dreyfus Model of Skill Acquisition as part of a bigger presentation about the science of learning, and this articulation is, I think, the students acknowledging where they are and where they have yet to go. Indeed, a few of their final exam essays talked about a recognition of how much more they had to learn, which—in the Dreyfus Model—is a sign of the shift from Advanced Beginner to Competent.

One student offered "People don't change" as something he learned. He and I had talked about this, and he had written about it before, and it's a powerful idea about the nature of humans. Like many teams, his had some trouble with delegation and commitment, and he was disappointed when second-chances appeared to be squandered. Right after his item was logged, a student from another team offered, "People change!" (To which someone else added, "People!" but I didn't log that one.) The juxtaposition of these shows the variety of experiences and interpretations of human behavior present in the class. Turns out "People don't change" got two votes and "People change" got none.

The grades this semester were overall lower than previous semesters, in large part because so many teams dropped the ball on the third iteration, which is worth 9/14 of the project grade. However, very many students also did not take the opportunity to revise their assignments. This has two implications: first, their grades suffered; second, it implies that many had not taken the time to really understand the material on which the whole final project was based. Reading their essays, I think the students had good growth experiences despite the relatively low grades. Everyone who clearly put in effort passed the course, and I think they will be able to draw on what happened in CS222 to achieve greater successes in the future. 


Thursday, December 14, 2017

Painting Massive Darkness: More Heroes

As a Kickstarter Backer of Massive Darkness, I was able to get a couple of expansions, including the exclusive Lightbringer set. Following up on painting the base set heroes, this post walks through the rest of the heroes in my collection, coming from the Lightbringer set, the Sorcerers vs. Lord Tusk expansion, and the Noble Warriors vs. the Cockatrix expansion. As with the base set heroes, each of these was primed with my new airbrush using zenithal priming. I felt a lot more confident my second time using this technique.


First up in the Lightbringer set is family favorite Lil' Ned:

Lil' Ned

Lil' Ned
The boys have played this character more than any other, in part because he is huge. Ned is at least a head taller than the rest of the figures, and his character skills reflect it: he blocks line of sight for enemy ranged attacks, and his melee actions have an extra zone's range. The boys' favorite part is having Ned play the Bonecrusher class and charge into a room full of minions.

He was a fun figure to paint, and fairly straightforward. I used a variety of techniques... but I didn't write them all down, so memory is a bit fuzzy. I am pleased with how I was able to give a purple cast to his pale skin, matching the card art. In this whole set, I have continued my experiments into wet-blending, which I know I did on the horns, followed by a wash and highlight.


Myriam is one of my favorite characters in the set, in part because she breaks female magic-user stereotypes. She has a thickness to her that expresses strength and power. Her pose expresses this idea too: she will not be moved. 

I do not paint a lot of dark-skinned characters, and I always approach the task with a bit of trepidation. Mixing the right color is part of the challenge, but the bigger part is getting the highlights right, since dark skin has as bright highlights as light skin. I ended up using a mix of Flat Earth, Dark Blue, Flat Green, and Flat Flesh to get her base skin tone, and I quite like the result. I probably could have brought some of the highlights up even farther, but I think it's pretty good as it is. The bald head combined with red facepaint was a challenge, since first I painted the whole head, and then added and highlighted the facepaint in a separate step. I happen to have a work-in-progress shot that shows just the flesh alone having been painted:

For her skirt, I mixed a dark orange wash to add some color variation into the recesses, mixing my red, yellow, and black inks. The result was not very good at first, though: it ended up with a rusty effect, which is not what you want on cloth. I ended up reworking a lot of the skirt. There are hints of the rusty shade in a few recesses, not enough to stand out and distract. It was definitely an adventurous mistake, but you can't make an omelette without painting a few purple skirts with the wrong shade color. Incidentally, the base color of the skirts were done with some wet-blending again, and although the transitions are nothing special, I think the color choices work well in the shaded underside of the back of her skirt.


This is Sicarius, whose recommended class is a Bloodmoon Assassin. I don't have the expansion that includes the Bloodmoon Assassin character class, but fortunately the publishers have made PDF versions of all the class sheets available, as described on this BGG thread. The one time Sicarius hit the table, we were underwhelmed by his character, which is a shame since he looks pretty darned cool. I showed my brother a work-in-progress photo, and he asked, "What is that guy?" Nobody knows.

The biggest challenge here was, of course, the blend from purple to white on the layer beneath his armor. This was another chance to practice some wet-blending, but also to practice visual trickery: the "blended" area is frequently hidden under armor, and so I had to give the illusion that there was a continuous blend even when it was covered. I think it turned out quite nice. The rest of him was pretty standard. I've been mixing my Vallejo Air metallic paints with some nonmetallics (grey, in this case) and applying my P3 Armor Wash for shade, following up with brushed-on highlights. It works fine here.



"The angel of death?" I wondered. "The cat from Smurfs?" asked my wife. No, neither of these, but rather some kind of armored spearman with pointy ears. If I remember correctly, Azrael's flowing skirt was painted entirely with wet-blending except for some final steps of edge highlighting. I am quite happy with the level of contrast I was able to achieve. I did not explore colored shades for tonal variation; I think I just didn't think of it at the time since I was so pleased with how it looked already.

As with Sicarius, the armor is a blend of metallic and non-metallic. In the highlighting, it got further away from the metallic sheen and looks a little flat, but good enough for tabletop. The gold here is a blend of VMC Gold with ivory and a spot of P3 yellow ink—a slightly different formula than I have used before. As with the steel, I lost some sheen with my highlights using this approach.

Incidentally, Azrael was really wonky out of the box, his spear bent in an almost an "S". It seems he has some kind of scoliosis and needs to hold himself up. After dipping in hot water for a few seconds, I was able to adjust the spear to be nearly straight and then shock it into place with ice water. The weird thing here is that I'm not even sure what else changed. It's not like I plastic, so all that material that was curved up had to go somewhere. It's not clear to me if his arm was drooping or his slouch was exaggerated or what. There's still a bit of a bend in his spear, more visible from the side than from the front or back, but once again, tabletop quality is good enough for us. He's not cool like Lil' Ned after all.


This is Whisper, not to be confused with Silence from the base set, although I confuse their names all the time. CMON is doing a great job with these miniatures; the names, less so. Anyway, studying her card art, it was clear that she was mostly all one color, but the artist pulled a neat trick: by having her flowing cloak transition to a brighter color, her legs could still stand out against it even if they were the same base color as the cloak. I set in to painting the cloak, again practicing my wet-blending, and I think the results are great. I tried to keep the transition only at the fringes of the cloak, although looking at it now, maybe a little variation in the top two-thirds would have added even more visual interest. But remember, she doesn't want visual interest! That's why she's wearing a big dark cloak! That's why she has dark leggings! That's why she has a mask! That's why her cleavage is shouting out, "Stab me here." Oh... Hm.

Whisper was one where I thought, "Maybe I need one more highlight," so I went back to her while working on another character to add a little more pop. I took pictures before and after, but you cannot really see a difference. It's still not clear to me if it just didn't photograph well, if it was all in my head, or of it was a case of my seeing the paint wet (when it's brighter) and then dry (when it's duller).


Looking at those photos, I suspect the real problem was that I was photographing under my bright painting light, which of course reflects off the highlighted areas. Changes to those areas just get washed out in the reflected light.

Changing subjects, who's the sorcerer all the others want to be like? It's another family favorite, Ajax.


He's a powerful foaming cleanser... I mean, he's a powerful sorcerer with the power to raise the dead and transmute loot toot suite. He also has a cool ghostly pallor with a subtle purple tone, paler yet than Lil' Ned. I went back to two-brush blending for his robes. His was another case where I wondered if I had enough contrast in the robes, but when I looked back at the card art, I saw that it was very dark.

Ajax is notable because he's the only figure in the set with any freehand painting. I tried to give the runes on his chest a subtle glowing effect by laying down a mid-orange first and then tracing a brighter yellow on top of it. It looked pretty good given the scale. I then tried to touch it up a little, and it wasn't clear if I had made it better or worse. Sadly, no photographic evidence can support either conclusion.

Noble Warriors

The Noble Warriors are a trio of fighting women who complement the male characters from elsewhere, including a Pit Fighter Berzerker similar to Siegfried, a Noble Warrior like Azrael, and a Shadow Barbarian like Bjorn. 

Zoe is presumably Brak's love interest. (Interesting aside: I used to cover that song in my stage show at the ol' coffee house in graduate school.) Her card art presented an interesting challenge in that it was really hard to tell what color her skirt was. It decided to go with a blend from brownish-red to midnight blue. It's oddly dark compared to her magenta armor, but that seems to be what's happening, at least tonally, in the card art. There's also some careful wet blending on her shield, working around the metallic bits.

Her hair is another great example of how zenithal priming was helpful, since I could put a fairly thin coat on and get simple highlights for free. An ink wash and some manual highlights really makes it shine.

I believe Zoe is the first figure on which I've painted colored irises. Her eyes are very large, and so I had room to work in the color to good effect.

Sarah is clearly from the same legion as Azrael, and her billowing skirt was fun to paint, mixing together a variety of techniques. As with Zoe, her hair is sculpted so cleanly that it was easy to get it looking pretty good. I used a different metallic mix here than Azrael, using less non-metallic paint, and I think it came out more nicely. The specific mix here is Vallejo Model Air Steel with a little VMC Buff and Ivory. P3 Armor Wash added the shade, and a little white in the armor color was added for highlights.

I decided to try something different for Sarah's gold and go with straight ... well, it was either Game Color Old Gold or VMC Gold, seems I didn't write it down. In any case, I was reminded with a shock how very reflective those metallics are when you don't tone them down with nonmetallics. I suppose I had been using that trick for some time. The gold accents on her armor, sword, and shield really pick up light much more than anyone else in the set. I need to think some more about which approach I like better.

Did you notice how Sarah's armor looks like it would actually protect her from being injured? Did they learn the armorer's lesson? She and Azrael could fight side by side and know that the skill of their weapons would be how they are judged. Well done, CMON, for standing up for reasonable fantasy mini... oh hang on, there's one more character to go...

Ah, then there's Mila. I suppose there's some sense in which she's the counterpart to Bjorn, but whereas Bjorn is wearing furs and some kind of Girdle of Giant Strength, Mila looks like she wandered in from a Boris Vallejo painting. If you compare her to Myriam especially, there's really nothing powerful about her. It even looks like she can barely lift those two swords. She's eye candy of the worst kind, where they could have made a more convincing and powerful female barbarian. Also, yes, her bedroll is purple in the card art, so I went ahead with that despite its being somewhat dopey.

As for the painting, she was the only one that I had to strip. Yes, yes, I know, it's ironic. Trouble is, when I primed her, I noticed a seam line running down the left center side of her torso. There's no texture to hide it, but I thought that I could paint over it. After doing a fair job on the furs and a good job on the skin, the seam line was really glaring: I couldn't cover it up as I had hoped. Knowing I was doomed, I tried carving away the line, but of course this put gouges in the paint layers that were irreversible. Into the Green Stuff she went, and I re-primed her with figures from my next painting project and repainted her. 

Her front is mostly flesh, and I think I did a good job of adding the highlights and blends. She reminded me of painting Lyssa from Runebound 3rd Edition, another toned bare-bellied woman where I had to imply a navel and muscle tone from a smooth surface. For Mila's cloak, my idea was to have variable colors in the hide, so I put in my base colors, added a wash for shade, and drybrushed the highlights. However, I think the result as photographed still has too much of the same tone: I was going for a light center and darker edges, but it comes out looking like broad highlights instead of color variation. It's not bad, but it's not quite what I had in mind. If I had to do it again, I would consider a different color entirely.

I've thought about just hiding Mila away somewhere since I don't like the implications it has for controlling gaze. At the same time, I wonder if I can use her to teach a lesson. We've used her a few times prior to painting, and one of the greatest abilities of her recommended class is that they can get a big boost for removing their armor. My boys and I laughed at gaining this skill, acting out ripping off armor like Hulk Hogan before charging into the fray. Seems that I'm torn between the two interpretations of the figure.

Closing Thoughts

These figures were a lot of fun to paint, although as I mentioned in my previous post, I think that's enough tattered cloaks for a while. The characters all seem to shop at Belt Pouch Outlet as well: the same visual elements show up in almost all the figures. Those are minor quibbles though for a group of characters with so much variation and style. I'm looking forward to getting Massive Darkness back on the table this weekend.

By the way, remember how happy I was in my last post about how all the pictures looked just right? Not too long after that, my Nexus 5X died in bootloop hell. Now I have a new device, and I took all of these pictures several times. The ones I've included here are the best of the bunch, but they're still not perfect. Using the default photo app, I had all kinds of trouble with consistency of pictures: the temperature of Lil' Ned and Azrael were vastly different. Doing post-processing in Snapseed didn't help the consistency problem. I ended up reinstalling OpenCamera so that I could get more manual controls. The pictures here were taken with automatic white balance turned on, ISO 100, and (I think) 1/100s shutter speed. This gave good consistent shots in my lightbox, and then I was able to adjust the white balance by picking up the background color in Snapseed. Some pictures are still slightly off, but they'll do for sharing here. I am rather disappointed that I have to go back to fiddling with these things just after my other set-up seemed to finally stabilize.

Also, I'm pretty sure I've never blogged this many words in one day before. After writing all afternoon and having dinner with the family, my wife went out, so I figured: why not do some hobby writing too?

Thanks for reading! Tune in next time when we make a genre shift to something with slightly fewer tattered robes.