Saturday, January 11, 2014

A Return to Painting

Over twenty years ago, I used to enjoy painting miniatures. My father introduced me and my brother to miniature painting before we played D&D. I fondly remember painting metal figures at the kitchen table and building dioramas out of scrap wood, twigs, lead, clay, and caulk. My father bought us issue #100 of White Dwarf at a game shop, and I am sure I spent hours looking over the figures and dioramas it contained.

When my brother and I started a D&D group, it was natural to bring our miniatures to the table. The desire for affordable miniatures led us to seek out fantasy board games such as the classic Hero Quest and lesser-known but fondly-remembered Dragon Strike. (Dragon Strike came with a VHS cassette filmed in hyperReality to set the mood. Fans and the curious will be happy to know you can watch the whole thing on YouTube. Thanks, Internet!) We usually did our tabletop gaming at another friend's house, and each week we carted over several foam-packed boxes of minis, not to mention a fine assortment of TSR-era rulebooks.

Our primary D&D campaign ended when I was an undergraduate, but I don't think I did any painting after high school. I did a few short-lived and one-off RPG sessions—and designed at least two systems—but time for tabletop RPGs fell away as I got deeper into higher education. Yet, since getting into designer board games many years ago, I know I have been saying that I want to get back into painting miniatures someday.

In a fit of mortality over the Winter break, I became determined to stop saying "someday" and instead to say "tomorrow." Over the next few days, I made several trips to the local art, game, and hobby stores and bought all manner of paints, brushes, and supplies. Since then, I have spent at least an hour painting nearly every night.

Part of what pushed me over the edge was Mice and Mystics. I bought it for the family as a Christmas gift, having heard great things about this cooperative fantasy board game.

I wanted to read the rules ahead of time, so I visited Plaid Hat's product page to download them. On the same page as the rulebook download is Jerry Hawthorne's Painting Guide, a five-page summary of how to paint the minis that come with the game. Hawthorne—the game's designer—lays out exactly what materials a prospective painter would need, and he describes some of the core techniques.

Reading the Painting Guide made me reflect on how, in my youth, I basically just put some paint on the models. It was fairly late in our painting years that my brother and I primed and sealed the figures, and we only did very rudimentary dark washes on undead figures. This was before YouTube, before the popularization of the World Wide Web. Hawthorne writes about drybrushing, lowlighting, inking, and spray paint— things I knew nothing about. However, unlike when I was a kid, now you can punch those into your search engine and discover an abundance of resources, tips, articles, and videos. Reading Hawthorne's guide and poking around the Web gave me the confidence to finally say, "Tomorrow is the day I paint."

As suggested in the Painting Guide, I started with the roaches and the rat warriors. I had never spray-painted anything in my life, so this was a bit of a gamble. I used poster putty to attach the figures to a paint stick and headed to the back porch.

I learned that although it may look like a calm day, the slightest breeze makes spray-painting rather tricky. Still, for my first time, I was pretty happy with it. I tried to make sure every bit was primed. After having done some reading, I think perhaps this was overzealous and led to my using slightly too much primer. This is learning-by-doing, however, and it was a big win for a guy who hadn't painted in two decades.

When I painted two decades ago, I used to just hold the minis in my fingers. I never thought of mounting them to a more manageable surface, but this comes up as a common technique on the Web. Wooden blocks are easy to find in my house, and so I picked out a few stout ones and affixed the roaches to them, using the same poster tack as earlier.

I followed Hawthorne's instructions as closely as I could, recognizing the roaches as low-risk models for trying drybrushing. I was proud of the results, although after having experimented with this technique even more since then, I already see that I was using too much paint. Still, the result is fine for what it is: a greedy little cheese-stealing bastards insects.

Next up in the Painting Guide are the rat warriors, and so I mounted them to the same blocks I used for the roaches.However, this made it awkward to get the paintbrush into the figures' undersides. The roaches are essentially all top, but the rat warriors require more brush dexterity. After a brief consultation with the resident craft wizard, my wife kindly affixed the rat warriors to corks using a low-temperature hot glue gun.

Drybrushing the rats was much more interesting than the roaches, given their texture. I followed the Painting Guide suggestion to do three brown and three grey, knowing that the variation would give me more experience. I was blown away by the efficacy of this simple technique, and I can see why it's so widely recommended as an easy way to add depth to a model. Here are the rat warriors after drybrushing and a few other details:

I was so happy with the drybrushing that I was terrified to take the next step: an ink wash. There's no Control-Z in painting, and it's not like I could rely on refactoring to fix any mistakes I made next. There's nowhere to go but forward, so I held my breath and began the inking.

Fortunately, once again, the results were fantastic. Here is a picture that highlights the difference in the fur and tails: "after" on the left and "before" on the right.

Here are the rat warriors, with all the details complete, before varnish:

I decided next to prime the two big enemy figures—the spider and the centipede. I waited for a calm day, affixed the figures to a paint stick, and headed outside. Through some combination of inexperience and cold weather, it did not go well.I tried to completely coat the models, but because of all the bends and undersides, I ended up with way too much paint pooling into the nooks and crannies. (No pictures taken of this—too much shame.) On the positive side, this gave me the chance to learn something new: stripping! I put the two figures in Xtreme Kleen for a few hours and then took an old toothbrush to them. Most of the paint came off, but not all, and it was much more difficult than I had expected. I wonder if another solvent would have made it easier, but this is what was on hand, so it's what I used.

At this point, I had not yet sealed the roaches or rats because the local stores were out of Testor's Dullcote in a spray can, a product that is widely recommended. My bad experience priming the spider and centipede scared me away from wanting to spray anything, at least until it was warmer outside. I should note that this is when the temperatures were getting into the teens on their way to sub-zero. I made a trip to Toys Forever Models & Hobbies in Muncie, where I had never been before, to see if they had any brush-on primers and sealers. The gentleman behind the counter was very helpful, assisting me in navigating the wide assortment of paints, primers, and accessories. He had what I needed, so I came home excited to varnish my roaches and rat warriors.

I wanted the figures to be durable because they're designed for use in a game—they are not show pieces. Several articles recommended a layer of gloss varnish followed by Dullcote, which will take away the sheen. I tried this first on my roaches, and I have to say it was like magic. My Vallejo brush-on acrylic gloss varnish leaves the figures very shiny, but the Dullcote takes away the plastic look.

This little win got me ready for the spider and the centipede. The hobby shop only had white brush-on primer, so that's what I used, contrary to the Painting Guide's suggestion for black. The white primer dissolved some of the black that was still the minis, leaving them a sickly grey, but at this point, I needed to just move forward. I also discovered that Plaid Hat sells the Mice and Mystics miniatures without the game, so in the very worst case, I could destroy the evidence and buy replacement minis!

I started with a few layers of drybrushing on the models. The centipede came out much darker and redder than I expected, but this was a good experience in mixing custom colors and layering.

I was able to lighten up the centipede with some drybrushing, and both were greatly enhanced by some careful inking. Here they are, complete with evil little eyes, though not yet varnished.

I'm quite happy with how the inking enhanced the segments on the centipede. If I could paint it again, I would do a lighter color on the body but keep the strong inking. I am also happy with the very light brown drybrushing on the back of the spider. It's the most delicate drybrushing I had done to this point, and perhaps the first time I had really done it right.

The last set of figures to paint are the heroes. The recommendations in the Guide are much looser here, taking the reader through general steps but few specific colors or blends. I don't know whether Hawthorne saw this as intentional educational scaffolding or if he simply got tired of writing, but in any case, I had the freedom to succeed or fail on my own.

Good color schemes for each miniature are provided in the Mice and Mystics cards. The minis are not perfect matches for the illustrations, however, so some creative interpretation was required.

The first step—taken from the guide—was to prime the figures in white and ink the details to be dark. Hawthorne mixes his own inks from black paint, water, and Future Floor Wax. I did a bit of research to discover that Future Floor Wax is no longer sold under that name: over the last few years at has been rebranded as Pledge Floor Polish, but it is supposed to have the same formula. In any case, I couldn't find any locally, but I did have some acrylic extender, so I tried this. The resulting "ink" was very thin. I started with Filch and Nez, and they came out much more grey than in the Painting Guide's illustrations. It was while working on the third figure, with a darker mix, that I had an epiphany—ironically, on Epiphany. I was not just undercoating the dark areas. I was painting shadow. I was painting light. I am basically Thomas Kinkade. This helped free me from the illustrations in the guide, which I had previously had difficulty deciphering. I intentionally did a slightly more aggressive inking than in the guide because I wanted to see how this affected the miniatures.

Filch was the first one I painted, the figure on the far left above. He is mostly cloak, and so this was my chance to try "lowlighting." I felt pretty good about understanding drybrushing as a highlighting technique—even if I am still not very good at it—but I had never done lowlighting before. The idea is to mix a darker version of the base color and use it to accent the deep or shadowed areas of the figure. Once again, I approached this with some trepidation, but I was thrilled with the result. Here is the finished Filch's back, showing off the lowlighting and very faint highlighting.

I completely painted and gloss-varnished Filch before moving on to another character. Afterwards, I realized this was inefficient. Several of the mice had recurring colors, such as brown leather, black eyes, pink ears, and dark metal details. I became a bit more pragmatic about my colors as I moved forward, looking at all the remaining figures as I decided what color to mix next.

Collin and Maginos provided good opportunities for me to practice lowlighting. I decided against a third layer of highlighting on these: I was not confident in my ability to predict the right shade, and I thought they looked fine as they were.


Some future archaeologist may study Maginos and wonder why there are so many different layers of color on his fur. Take a look at his illustration from the game:

When I first looked at the picture, I thought he was a light brown mouse with age-whitened fur. I mixed a grey-brown color and painted and inked him, and he looked all wrong, much too brown. I went back to Hawthorne's guide, and he had Maginos as decidedly grey. Given that my original color was a mess, I decided to completely re-do the fur, praying I would not clog any details and have to strip it. Fortunately, I was able to get a nice grey without having to resort to drastic measures.

Another good lesson came in Nez's apron. I painted it a flat beige-brown color, and it looked rather drab. I wasn't sure how to do any lowlighting on it, since there are no folds or wrinkles: it's just a big apron with two pockets in the front. I decided on a brown ink wash, and I think this worked great. All the dynamic shading you see in the picture is due to this simple wash on a rather nondescript portion of the model.

Here are five of the heroes, standing in a line, waiting to be varnished:

The last step was to put on a layer of gloss and a layer of Dullcote. The gloss was finished in the morning, and this reminds me, did you know that Dullcote has a really powerful solvent that will remove thin layers of paint beneath it if you're not careful? I did not know that. Filch had waited so long for his Dullcote, and I was pleased to finally be finishing him. At one point, though, I had to stop and say, "That color should not be there." In my carefree varnishing I pulled a bit of the cloak's ruddy brown right off. Fortunately, I was able to mix a matching color and patch it. It could have been much worse, and my lesson was learned: lighter coats, softer brush. I think once the weather gets warmer, I will get a can of Dullcote and try spraying again. I would at least like to compare the experience to brush-on.

Post touch-up, here are all the heroes, all together, all varnished, waiting to be removed from their corks.

I am really proud of the results. Holding a brush, mixing paints—even cleaning up—it was all very soothing. So much of what I do is intangible: you can't hold software, and you can't "see" the results of careful teaching. With painting, I can point to these miniatures and say happily, "I made these look pretty good."

That said, I know there is still a lot to learn. As I was painting, I thought about how everyone starts as a novice—everyone has to make something bad before they can make something good. I also had to think about how sometimes my students show me things that they are proud of, things that I think are still pretty flawed. When I was overwhelmed and staring uncomprehendingly at the wall of brushes at the hobby shop, perhaps that was what it's like when one of my students first opens Eclipse.

I would love for a few people to look at these miniatures and tell me they like them. I would also love for someone to tell me where to go. What are the biggest mistakes on these that maybe I cannot even see yet? What should I try next?

My next step will be to do some more reading on fundamental techniques. I have several board games with interesting miniatures, including some that get almost no table time. Perhaps The Legend of Drizzt will be next, since my son and I enjoy it, and it has quite a few miniatures. In the meantime, it will be fun to get back into playing Mice and Mystics. We have only played one full game since Christmas, since I've had the figures in various states of being painted since then!

A few words of gratitude are in order. Thanks to Jerry Hawthorne for providing the Painting Guide that gave me the confidence to move forward with something I had been putting off for years. Thanks to my college pal and gaming buddy, Jim, who helped me with some research and troubleshooting from hundreds of miles away. Finally, thanks to my wife, who has supported the resurrection of an old hobby.

Sunday, January 5, 2014

What We Learned in CS222, Fall 2013 edition

For several semesters, I have been using the final exam to collect information about what students value having learned in Advanced Programming. Students work together to come up with a list of items they learned during the semester, and then they vote on which items were most important to them; full details on this approach can be found in my January 2012 blog post and my 2013 SIGCSE paper. I first used this format in Fall 2010, and I shared results from Spring 2013 in my post from May 2013. This table summarizes the top items from four different semesters:

Fall 2010Fall 2011Fall 2012Spring 2013
Team programmingObject-oriented designClean CodeDRY
Test-Driven DevelopmentCoding conventionsTeamworkClean Code
Use of software librariesAgile ManifestoSRPBuild one to throw away
RefactoringEffective JavaClass designRefactoring
UMLTest-Driven DevelopmentNaming Conventions
Design patternsStack OverflowResearch before acting
Most Popular "What We Learned" Results by Semester

It might be worth noting that the first two columns used Joshua Bloch's Effective Java as a primary text, and the latter two used Robert C. Martin's Clean Code.

This past Fall was my first experiment in coupling achievement-oriented assessment with essential questions, maintaining my usual emphasis on reflective writing; I wrote a bit about that experiment just the other day. Looking at the results from Fall, here are the most popular "What We Learned" statements:
Clean Code takes practice13
Pair programming10
It's OK to fail or start over6
How to reflect on work5
User stories5

It is interesting to me that instead of simply saying they learned "Clean Code" as in previous semesters, these students agreed that Clean Code takes practice. It may be just anecdote, but this was the first semester that I allowed resubmission of work—part of my attempt to encourage mastery learning. Although I frequently felt like my feedback was not being heeded during the semester, perhaps this indicates that the resubmission policy helped students learn something quite valuable: not just the idea of Clean Code, but that putting these ideas into practice is difficult.

The middle row—it's OK to fail or start over—may be related to the resubmission policy. However, I suspect it is more directly related to the final projects. There was more than one team to whom I gave the same advice after two or three iterations, only to have them still not follow it. Some teams made significant platform changes between iterations, changes that forced them to abandon large parts of their implementation. I think that this is an important step in the students' maturation: they likely never had to throw away working code before, nor did they have to deal with a changing definition of "working."

I am pleased to see "How to reflect on work" was one of the top items, since the students spent a great deal of time during the semester writing achievement reflections. Although I have changed the balance of achievements and reflections for the Spring, as described in my previous post, I hope that this Spring's group will have a similarly positive experience regarding reflective practice.

Thursday, January 2, 2014

Tweaking achievements and reflections

Before the start of the Fall 2013 semester, I wrote about the changes I was incorporating into CS222, the Advanced Programming class. With that semester behind us, I can say that it went well, although not without the need for tweaks. For the Spring, I am keeping the fundamental structure. Here is a summary and justification for the tweaks.

I am scaling down the number of achievements required for each grade level. The original plan in the Fall was two achievements per week. However, students were not as adept as I had hoped at aligning achievements and projects. The intention was that students would earn achievements by doing their projects, but the majority of the class tried to do achievements separately from the projects. In the Fall, we ended up making a change midstream, reducing the number required during the nine-week project to only one per week. For the Spring, I'm pulling back a little bit more, expecting two achievements per week during the first three weeks, then only one per week during the two-week "warm-up" project and the nine-week major project.

Another change addresses the intended achievement-project synergy: restricting the code that can be used to complete achievements. When working toward achievements, Fall's students were permitted to use any code to which they had a license. In practice, I had students submitting trivial modifications to terribly-conceived CS1 and CS2 projects all the way to the end of the semester. In Spring, students can use any such code during the first third of the semester, but once they start their nine-week projects, they must use either that code or public open source code.

I have also changed the how and when reflections are required. In Fall's section, students wrote one reflection per achievement. I am sure that the best students—those on the road to being reflective practitioners—found this fruitful, albeit time-consuming. The students with worse writing skills spent inordinate time on these reflections, time that should have been spent understanding the material instead. Their action was justified, perhaps, by the fact that reflections were a significant part of the course grade. Also, I allowed resubmission of the reflections, but I think my attempt to encourage mastery learning instead fostered the"submit and hope" approach that I find so endemic and disdainful. In the Spring, the students will instead be asked to write one reflection per week, and this reflection may focus on any course-related experience: achievements, in-class discussions, project team discoveries, and so on.

The structure of the reflections will change as well. In the Fall, students were asked to do three things in their reflections: characterize an essential question, describe implications to practice, and consider alternative perspectives. Many students struggled with these all semester. Although I believe that tackling these problems is good for students, there is a limited about of time students can devote to this class. Hence, I have reduced and rearticulated the requirements: in the Spring, students will be asked to address one of the essential questions ("characterize" caused undue problems) and describe implications to practice.

Despite the addition of achievements and structured essays, perhaps the most uncertain of my Fall experiments was in not grading the final projects. As mentioned above, the course design was supposed to foster students' intrinsic motivation to work on the projects, which would provide context for the achievements. My ambitious designs failed to account for the pragmatic, goal-directed nature of the undergraduate! Students realized that the projects were not graded, and many students found this unmotivating: they wanted their work to be recognized directly in their grades. I will be returning to my conventional approach, grading both the projects and their ancillary artifacts such as presentations and a final report.

A final significant change that I expect to bring vast improvements is getting off of Blackboard. We used Blackboard's wiki in the Fall as a place for students to post and share their achievement artifacts. The wiki is ghastly, and because it was so difficult to give targeted feedback, we ended up with a very poor signal to noise ratio. Often, a student would post something that was wrong, and I would give formative evaluation to that student, encouraging revision; the student would not revise, and within a few days, I would receive several similar submissions from students who assumed the original was correct. What a mess. In the Spring, we're going to use Google Drive instead. I am uneasy about requiring students to register for a Google Account in order to participate, but most have them anyway, and the technology stack is so vastly superior that I'm going to try it. I will set up a shared folder that will contain one document per achievement, and students will post their artifacts within those documents. My feedback can take the form of comments, which are visible to all readers. I will have a bit of manual work to translate these data into Blackboard's gradebook, but that's worth it to help close the gap between my feedback and peer learning.

I finished up the course description this morning and linked it to my Web page. The achievements themselves are basically the same as the ones I designed last Summer, with a few notable additions that reward technology (integration with relational databases and structured data parsers) as well as community-building (interviewing alumni and senior capstone teams). Each achievement has also been clarified as to what exactly the corresponding artifact is—some had been vague in the previous iteration.

The semester starts in just a few days, and I'm looking forward to meeting the new crop of CS222 students. I am not looking forward to teaching at 8AM and Monday's high of -6°F, but I am trying not to complain.

But seriously, 8AM and -6°F high temperature.