We talked about the intersection between our two worlds. I had met Palatino in 5th grade while I was writing my first “novel” and casually fallen in love with type. I dealt with curves and splines regularly in my computer graphics work. But I really didn’t know how fonts worked. He said that he was looking at holding a font design workshop for graphic designers on my campus and invited me to join. Sadly, the date didn’t work out.
Fast forward three years to two weeks ago. It was Wednesday. I saw the guy again for the first time in over a year. He said that he was leading a workshop that very weekend in eastern Wisconsin and invited me to attend. On such short notice, I had to decline. I have large family, and I can’t just abandon them without advance warning. But when I got home I realized that my 11-year-old son might want to attend with me. He did want to, and my wife gave her blessing. So, two days later, I pulled my son out of school early— which I never do—and we drove 3.5 hours to Two Rivers, Wisconsin.
The workshop was held at the Hamilton Wood Type Museum. At the opening reception, we formed a word using certain letters. We then picked out the letter blocks for our word from trays of wooden type, which we then inked and pressed onto paper.
The Lake Michigan wind blew us back into the museum on Saturday morning. We cracked open Adobe Illustrator and threw into the background of our artboard a digital photo of our pressed word from the day before. Using the letters of this word to gauge sizes and shapes, we built up our alphabet over the course of the day. We started on the kiddy slopes of the straight letterforms, which include H, I, L, T, E, and F. Then we graduated to the diagonals, which include A, V, Y, W, M, N, X, K, and Z. After lunch, we were all feeling full, so we naturally progressed to the rounded letterforms, which include O, C, G, and Q. The day ended with the mutant partially-rounded letterforms, which include D, P, R, B, U, and J.
After a hard day of work at the foundry, my son and I picked up some food from China Wok. His fortune cookie taught him the Mandarin word for “to get a fever.” Mine taught me the Mandarin word for “to catch a cold.” This pairing was awkward given the looming threat of the flu-like COVID-19 virus that would shut down the country a week later.
We started Sunday with S. And then our leaders showed us the application Glyphs, which we used to turn our paths into an OpenType font file that we could install. Here’s the poster gothic font that I ended up with:

I am not happy with my rounded letterforms, but I got what I wanted from the workshop: an exposure to the font-making process and some time with my son. He was a steady worker through it all. Our fellow participants, all working adults or graduate students, kept pouring praise on him. I like praise, but not when it takes the form of surprise at how different you are from what people expected of you. My son boldly chose a serif font that first night, and this is what he ended up with:

Thanks, Font Diner, for a one-of-a-type experience.
]]>How exactly I was wholesome I do not know. Some of my haiku can get a little subversive. But I am glad to accept.
I taught in the department in the first half of 2019. We were sorely tempted to move there. The landscape was magical, the weather was mild, the people had more emotions than just outrage and contempt, and the city united together in the wake of the mosque shooting in ways that I will probably never experience in America. Every day at lunch a group of folks got together and worked on the very challenging cryptic crossword from The Guardian. I’ve kept up this daily habit on my own, though I get my crosswords from an easier source. From time to time, my mouth waters when I think of the black currant chia bites from the bulk food section at the New World grocery store.
Alas, if we were to move, we didn’t see a way to stay connected to our families back home. Plane tickets are expensive for a family of six. Not to mention housing.
So, New Zealand is not our home. But it’s backup.
]]>The trip started at 3 AM Friday morning. I got in my car, set the recycling out at the end of the driveway, and drove westward to MSP. Traffic was light, because the world was dark. It wasn’t until I got into the airport that the first incident happened: I entered a women’s restroom. By mistake. Sure, I found it funny that there weren’t any urinals, but I saw a pair of shoes that seemed like the kind I’d see in a men’s restroom. Upon emerging, however, my deepest fears were realized. I shook my head in disgust with myself and found my gate.
On my flight I read some of Young Children Reinvent Mathematics by Constance Kamii, which has given me lots of great ideas for exercises to try out on my children to figure out how they think.
But Cars 3 beckoned. It’s a story of growing old, which is something that has been on my mind a lot lately. My peers are starting to deteriorate, and I fear I might be too. The movie fell a little flat. The jokes were just not there. The conflict was mostly internal, and the mild external conflict relied very heavily on us caring about Lightning McQueen and his record. But it also seemed to be the story of Pixar, whose youth and superstardom has perhaps come to an end.
After landing, I hopped from an AirTrain to a BART train to a CalTrain until I arrived at the Palo Alto Transit Center. Next stop: Stanford University.
Several weeks before my plane took off, I had contacted an old friend who was now at Stanford. Dan and I had worked together at a summer camp 15 years ago. I was hoping he’d let me buy him lunch. I trekked up the long avenue through the wooded tailgating grounds that form the entrance to the campus. Amazingly, Stanford has not developed these many acres of green space, and it adds to the university’s majesty. I found Dan’s office. We hugged. Despite teaching at a big smart people school, he hadn’t changed.
Dan walked me around campus. He seemed to get lost rather quickly. In his defense, the campus buildings all look about the same, and there are many. He bought me lunch at the faculty club. Disappointly, Donald Knuth was nowhere in sight. We reminisced about our camp days. Like that time we put a bunch of canned vegetables on the counter of the women’s showerhouse just for the awkwardness factor.

Thanks to Dan’s extremely powerful faculty ID card, we were able to climb the Hoover Tower. I was surprised to learn that Herbert, Dan’s and my fellow Iowan, was in the first class at Stanford University. The exhibits suggested to me that perhaps he is given too much blame for the Great Depression. It sounds like he’d been trying to rectify the conditions that led to the eventual stock market collapse even before he was president. He also had started some projects to help recover from it, but he was dethroned before their impact was felt. Poor guy. But he became a humanitarian—a conservative one that loved and cared for the poor, even with policy.

Then we saw Rodin’s bronze sculptures at the Cantor Museum. I learned there also of the history of the university. It started because one-time railroad baron and governor of California Leland Stanford Sr. lost his son to typhoid fever. Apparently, the 15-year-old Leland Stanford Jr.’s love of ships did him in. On a trip through Europe, the son asked to be at the helm of their vessel. The long exposure to cold and chilly air was too much for him, sadly, and he fell ill and died in Italy. His parents were paralyzed by grief. His mother even held seances to try to connect with him. Alas, they turned to philanthropy and built a beautiful university in his name.

After that Dan and I parted ways. I found my motel. The kind folks at The Counter fed me. The coffee Oreo shake hit the spot. Thus ended day 1.
On Saturday the conference began. Michael Eisenberg opened with a keynote that was full of challenge, which is something all keynotes—all presentations, really—should have. Otherwise, why do we talk? (I had just started a chapter in Kamii which posited that one of the most important ingredients in cooperative learning is conflict.) Eisenberg’s theme was the body as the new frontier for making. In particular, he stressed that he was not as concerned about the “tattoo model” of human augmentation, in which youth voluntarily experiments with their bodies. Rather, he was concerned about adults engineering their children to be prodigies.
During the very first session of the program, I heard someone in the back of the room talking. It made concentrating on the speaker very difficult, but I figured the chatter would stop once we all settled in. It didn’t. I wondered why someone near the person wasn’t shushing them and contemplated getting up and doing it myself. But then I thought I could just put a spin on the situation and change my attitude. I imagined that the person in back was translating live to someone nearby. Lo and behold, when I gave the individual this positive interpretation, my focus returned. And it turns that translation was exactly what was happening. The English from the speakers was being turned into Portuguese by a couple of translators in attendance.
The conference program included a lot of panels. I really like keynotes. I sometimes like paper sessions, and even when I don’t, I acknowledge them as the most important part of advancing knowledge and raising up new investigators. I rarely like panels. They don’t have enough identity and focus. They are a staged conversation that no one owns. Audience questions are almost always relegated to the last few minutes. I attend them to learn what people think and how they behave. But I think we need fewer of these.
One of the sessions was on projects built by young makers. The kids presenting in the session had done some amazing things, but the followup comments from the audience raised an alarm inside of me. The kids were placed on pedestals, and rightfully so, but I fear what happens to a kid who is identified as perfect or superior. Ironically, we were in the same building as Jo Boaler, an educator who taught me about fixed vs. growth mindsets. I learned from her that we are to praise hard work and specific actions. Otherwise, we will create kids who freeze up when faced with challenges, too afraid to lose their identity.
In these rooms full of academic talk I almost never ask questions. Most of the questions that do get asked were either already answered by the speaker or seem to be more about the questioner posturing himself. However, I regret not asking one of the young makers a question. The young woman had made a violin bow that visualized the dynamics of various pitches with an LED strip attached to the bow. Her project was technically fascinating, and then she mentioned that she was applying for a patent, which are a scourge to the making community. If I had the gumption, I would have asked, “What leads you to pursue a patent?” My guess is some enterprising adult is at work here.

Dinner that night included garlic naan. There might have been some other food involved, but naan is always the main course. Thus ended day 2.
On Sunday, I had my thirty seconds of fame. I was one of many speakers in a series of lightning talks. Years ago, I was a student volunteer at an IEEE Vis conference. Fellow volunteer Alethea showed me the importance of distinguishing oneself in these kinds of talks. She had brought a violin and composed a parody of The Devil Went Down to Georgia to describe her research. So, taking her cue, I shared the following limericks to describe my work on Madeup, a programming language for generating 3D models:
I hold here some things made of code
Just ideas with atoms bestowed
I traced out the lines
Designed with cosines
And voila, they suddenly growedMadeup is a tool for to learn
Like Logo, you move and you turn
With each little path
Laid out with some math
I programmed my grandfather’s urnWith Madeup perhaps we will see
Kids make computationally
The output is real
It’s something you feel
It goes from your brain to 3D
After we all had our thirty seconds, we stationed ourselves at our posters and waited for people to stop by. I was warmed to have many people request a demonstration and rejoice over finding something they could use to marry computer science and making in their classrooms. The number one question was if Madeup exported to STL, a 3D file format. I don’t understand why STL is the go-to format for slicers. I find it overly verbose. There are countless converters between the various formats, but I think it’s time I export into STL directly.
During one of the breaks I snuck over to the Stanford University Bookstore. Zeke at the counter asked what brought me to campus. When I mentioned 3D printing, he took off his wedding ring and wondered if I could make a “2D manifold embedded in three dimensions.” His ring, as you have probably guessed, was a Möbius strip. I told him I don’t often get to discuss topology with people. He was a mathematician by training, he said, as he counted out my change.
My final meal was at Terún, an Italian restaurant. I asked my waiter what he recommended, and then I ordered something different: the nduja, which certainly doesn’t sound like an Italian word to me. He insisted it was. I ordered it because it had zucchini on it. My waiter didn’t like zucchini, but he agreed to pass on my order to the kitchen. The pizza seemed to appear just moments after I ordered it. It was just what I wanted. As I was finishing my last bite, my waiter returned, surprised that I had been able to finish it all by myself. I told him to bring me the dessert menu. Thus ended day 3.

One thing that Palo Alto and California really need to work on is communicating with the outside world via non-technological means. On Saturday I looked for postcards. The university bookstore had some, but there were all of the Stanford campus, and there wasn’t much variety. I also tried to buy stamps, but they were out. I looked for some postcards in another bookstore, but all they had were Golden Gate Bridge postcards. It seemed disingenuous to send those home to my family, as I hadn’t been there. I looked in grocery stores, drugstores, and stationery stores. I couldn’t find any that had to do with Palo Alto or California in general. The woman in the stationery store told me to let her know if I found any. On Sunday I went and bought three more boring cards from the university bookstore. They still had no stamps. So, I tried to find other places that sold stamps. The 24-hour postal station didn’t have a dispenser. I tried two gas stations, two grocery stores, and a FedEx station. No stamps could be found. So, on my way to the airport Monday morning I stopped at CVS. They sold me a book of stamps, but the clerk couldn’t tell me where the nearest postal dropbox was. I walked along the 10-minute route to the train station and found nothing. I took a CalTrain to San Bruno, walked a mile to the BART station, and found nothing. I got to the airport and asked about a maildrop. They had none. You people.

As I sat in the airport, I saw someone with a Jamf T-shirt on. Jamf is a software company in Eau Claire, one that I even worked for during a summer. I went over to him and asked if he worked there. He didn’t, but he was a client of theirs. I asked if he lived in the Cities, and he said was from Emeryville. I nodded politely and then continued on my way. But I had nagging suspicions. I returned to him and asked who he worked for. Pixar, he confirmed. I told him that I’d just watched Cars 3 on the flight over, and that every time I watch one of their movies, I question what I’m doing with my life. He graciously told me that teaching is important too. But he downplayed Cars 3. “It was okay,” he said. He promised that Coco was going to be really good.
I am glad to have finally visited the esteemed city of Palo Alto and the esteemed Leland Stanford Jr. University. I found it quite full of normal people, and my life as a Midwesterner adequately prepared me to operate in this not-so-foreign land.
]]>At the end of each ITiCSE working group I’ve been involved in, I swear I will never do another. Writing a lengthy report with a bunch of other humans is incredibly exhausting, and the process usually causes me to lose faith in mankind. But inevitably, I sign up again the next year, because I can’t think of a better way to experience an academic conference and to grow as a human. It doesn’t hurt that ITiCSE is usually held in another country. This year it was in Italy.
Last year my broken Spanish made my Peruvian ITiCSE a lot more fun. In order to bring some broken Italian with me this year, I dove into Duolingo about six months ago. Unfortunately, I made my goal not learning Italian, but getting my tree all golden. I learned enough to make for some very enjoyable and sometimes awkward conversations, but I’m pretty certain it will all be washed away quickly.
I landed in Bologna a day early, figuring it would take me that long to figure out how to get from the airport to the hotel. However, I needn’t have worried. The conference co-chair was on my flight, and he was getting picked up by the other conference co-chair, the one that actually lives in Bologna. They graciously allowed me to bum a ride. Grazie mille piu uno, Renzo! My first meal was a Bismark pizza, which was topped with bacon and a runny egg.

The Hotel San Donato was my home for a week. The staff there helped me learn the way of Italy. Like the custom that when you leave the hotel, you leave your key. I didn’t know that. When you return, you just give your room number, and they hand you your key. No identification is needed. As far as I can tell, there’s nothing to stop you from getting the key to someone else’s room. I think the biggest difference between Americans and non-Americans is that Americans have incredible imaginations for all the possible crimes that a man may commit, and they work tirelessly to build up systems that will keep that man from completing his evil deed.

The conference itself was held at Universita di Bologna, which is the oldest degree-granting institution in the world. Hopefully coding bootcamps and MOOCs don’t mess this up. Unfortunately, walking across campus was not nearly as inspiring as one would expect—for a couple of reasons.
First, graffiti adorned every wall, really violating any feelings of antiquity. I am reminded of the game Darkest of Days made by some alumni from a university I used to teach at. The game combines war with time travel, letting you bring weapons from one time period to another. Imagine the Civil War, but where one side has automatic rifles. Now imagine spray paint on buildings built centuries ago.
Second, everyone smoked. Even the dogs. As someone who grew up with a father who smoked and drank and died young, I had a hard time enjoying the sidewalks and restaurants and any place with people. Actually, the mornings were pretty good, because Italians tend to sleep in. If they are smoking then, they are at least in their beds. I was able to go on lots of runs through the old walled city and breathe freely.

Each day started off with a croissant and ended in gelato. In between was a lot of bread and cheese. We asked a number of folks about gelato al pomodoro—tomato gelato—but that question usually ended the conversation. I had a lot of pizza. But I soon found myself missing vegetables and eggs. A nice man in a market sold me ten plums for 2 euros.

Our working group planned to make a game to teach pointers. We spent a considerable time deliberating over what this should look like. I wanted a very explicit metaphor that directly matched the game mechanics to the operations we apply to pointers. The previous week my son had been turning crossword puzzles into levels for platformer games, and this inspired me to pursue a mashup between crossword puzzles and a cooperative platformer. The rest of my group wasn’t nearly as interested in this theme as I was, and the group ended up choosing a Diner Dash-style theme of delivering food and drink between chunks of memory. Given that another group member is spearheading the development, I am fine with this direction.

Working groups are expected to produce a report on their topic. At some point during the conference, each group gets up and gives a summary of their work so far to all the attendees. One group explicitly asked the audience what they’d like to see in the report. This appeal seemed disingenuous to me. I would never ask such a question, because I do not participate in a working group to prepare a document for others. Really, I expect the kind of folks that would read such a report are the ones already in the working group. My participation is much more selfish. I want the opportunity to think hard about a topic out loud with others. Working groups are not about me having an impact on the world, but on the world having an impact on me.
Nevertheless, I am happy to say that our group is producing both a playable open-source game and a report.
One of the implicit undercurrents of the conference was that computer science educators are too much in love with tools. We build too many things, people seemed to say, and don’t posit enough theories and models of learning. As a toolsmith, I bristle at this accusation. Of course they are right, but what we need is to use the tools to establish our theories and models. I fear that I just don’t have the background in educational psychology to go beyond software development. And so far I have failed at starting any collaborations with folks that do have the background.
The opening keynote of the conference was about women in computer science in the Arab world. Sana Odeh contrasted the situation in Algeria, Saudia Arabia, and other Arab countries, where women are the majority population in STEM disciplines, to the United States, Australia, and Canada, where are women are the minority. She discounted any depictions of Arab women that paint them as repressed objects of pity. I think a few people (me) in the audience left feeling confused about the status of women in these countries.
A year ago, a former colleague invited me to submit something to COMPSAC 2017, which just happened to be in Turin and to overlap ITiCSE by one day. A student and I submitted a paper arguing that blocks and text languages really can’t be adequately compared right now, not until we can control for some of their major differences. The paper was accepted, and I was able to sneak out a bit early from ITiCSE to catch a train from Bologna to Turin to go present this paper.
Unlike ITiCSE, which is all about computer science education, this second conference lacked a cohesive identity. That’s not necessarily a problem, but most of the tracks were outside my areas of interest and expertise. I utilized my time to work on our game and add some features to Madeup that my student collaborators requested.
After all the work was done, my wife flew in. We spent a few days together in Turin. We called ourselves Ameridogs because the real word is americani, and cani means dogs. Ameridogs like us are not so common in Turin. They head to places like Rome and Venice. A girl at a bus stop was very excited to meet us. She was eager to learn a useful language like English, she told us, and that her Italian will do her no good.

One of the days was spent hiking in Gran Paradiso National Park, and getting soaked in a storm during our hasty descent. We stayed at a bed and breakfast that was just far enough away from everything that it added some stress to our days. The bus system is not friendly to the uninitiated. We did manage to get passes that let us take bikes from over 100 different stations around the city. These were free for 30-minute stretches. Our hostess lent us her bikes for a longer day of riding along the River Po, which would have been fabulous had the pedal not fallen off while we were still about two hours away from her home. The threading had stripped, and I ended up biking the rest of the way home very awkwardly with only one pedal.

We eventually made it home on plane that had both of its wings, but I appeared to have been flagged for something by airport security. I had to wait a very long time in customs. To pass the time, I watched a number of people get berated for having undeclared items in their luggage. Eventually a man asked me if I had any tattoos. I said no, and the conversation ended shortly thereafter. I was given no indication of the danger I presented.
Will I head to ITiCSE next year? Right now, the answer is no.
]]>I had intended the summer to be a simple one. No teaching, no big grants, no painting the house. Then I learned that ITiCSE 2016 would be in Peru. This country is so far off the maps that chart out my life I knew that if didn’t go now, I never would. So, I submitted both a paper and a working group proposal in an attempt to double my chances at getting something accepted. The paper was rejected, but the working group made it in. So, I spent this past week gathering together with fellow computer science educators from exotic places like Illinois, Virginia, Ohio, Kentucky, California, Britain, Colombia, Spain, and China to talk about games for teaching our students about computer science.

Before the conference, we’d discovered and played around 120 games that facilitated the learning of computer science concepts. During the conference, we collectively analyzed what worked in these games and what did not through the lens of educational psychology, games studies, and computer science itself. We began writing a report of our survey and our plan to make some of our own games over this next year. By the end of the conference, we were at about 40 pages in Google Docs. Ultimately everything must squeeze into 25 pages. Wish us luck.
Some of my friends think it’s a little excessive that I’d go all the way to Peru to talk to other educators about education, but these sorts of trips impact me in a way that East Lansing and Atlanta do not. I come back having learned what parts of my life are artificially propped up by my culture. I spend a significant amount of time working side by side with my new colleagues, and our foreign environment binds us together as we walk strange streets, climb mountains, and try to figure out what the Spanish-speaking taxi driver just said. A working group is the absolute best way to experience a conference—it’s like getting a new family for a few days.
While the memories are fresh, I share here a few notes about my journey.
I got a little concerned when I found a bug on my airplane. The seat directly in front of me had two identical stickers, whereas the one to its left had two different stickers! Either I didn’t have a life jacket, or the seat was mislabeled. Since we weren’t going to fly over water, I kept my mouth shut.


My flight left from Minneapolis, where all the airport televisions talked about was about FBI director Jim Comey not recommending charges be pressed against Hillary Clinton. Having worked with many system administrators in my life, I could wholeheartedly understand the desire to run one’s own server. But that’s not the kind of thing one can say to a stranger, so I kept my mouth shut. I made it to Dallas just in time to brush my teeth and board my connecting flight. As I lined up to disembark, I learned that some police officers in Dallas had been shot.
On the plane from Dallas to Lima, I sat behind the family of Chuck, a professor I know who teaches in Nebraska. Chuck had decided to make this trip double as a family reunion.
On Friday I flew from Lima to Arequipa, the city which was to be my home for a few days. Peru has volcanoes. The airport is right below a couple of dormant ones.

Chuck’s family let me bum a ride with them from the airport to their hotel. The taxi driver seemed to have a very serious concern about our arrangements, but we couldn’t figure out what question he was asking us. He tried to fall back on Italian, his first language, but we shrugged. Thankfully, he got us where we needed to be.
My hotel was just a few blocks farther on. I dropped off my bag and headed back to be part of Chuck’s family for the afternoon. At one of the intersections, some men jumped in front of the cars stopped at a red light and did some crazy acrobatics for the captive audience—presumably to make some money. At the hotel, we had lunch (burgers and fries!) and some much needed water (bottled!). Some of the family was from my home state of Iowa, and since Iowans bond easily, we bonded.
In the evening, our working group met for the first time, except for the member whose family’s flight had been delayed two whole days and the other member who had gotten to the airport only to find no luggage in his trunk.
As we walked from the university to a restaurant called Chicha, we saw a woman selling churros on the street. We thought we’d stop by her stand later in the week. Sadly, I never saw her again. Missing out on this churro is probably the biggest regret of my trip. At the restaurant, I ordered the lomo saltado. It was the second of many meat dishes I was to eat. There really isn’t much else to order.
Having refreshed ourselves after our travels, our working group began its intense discussion and writing on Saturday. Each day we would walk from our hotels down the narrow sidewalks where two may not walk abreast and over the slightly dangerous La Avenida de Juan de la Torre to the university.

Peru has two seasons: rainy summer and dry winter. We were there in the dry winter, which meant 70 degree temperatures during the day.

One of the nice things about the dryness is that most buildings are designed around open air. You don’t have to open many doors, because there aren’t many! After leaving our hotel, the only door we had to open was the one to the classroom where we met for the day.

Nowhere in town can you escape the looming volcanos. One of them, deceptively named Misti, is expected to blow in about 100 years. The tour guide wasn’t clear on what that would do to the city, but she assured us that it would hold off for us.

On my walk to the university, there was a learning center that offered to teach coding skills and mathematics. I felt compelled to enroll because I didn’t know what DFD and Pseint were. Apparently, DFD is short for data flow diagram, and PSeInt is a flow chart editor for composing programs. Unlike a great deal of software, PSeInt seems to exclusively target speakers of Spanish.

This day was the only day I didn’t see the school overrun with students. It was busy on Saturday and late into the evening. Based on the stickers on the hallway floors, the school seems to be genuinely interested in preparing these young folks for success.

Our working group took a divide-and-conquer approach to the report. The half I was not in generated a mural of post-it notes and diagrams to help organize their thoughts. I’m much more of a top-down organizer, and when I later joined the efforts of this half of the group, I had a very difficult time understanding what I was doing. Learning how others operate is a major benefit of these working groups!

The conference proper began on Monday. Mehran Sahami from Stanford delivered a keynote about gender balance in our programs and classes, advocating that we consider it in a more nuanced way to make sure that it’s truly our efforts that are improving the imbalance. In the afternoon, each working group presented a short summary of their efforts. When it was my turn to present, I began with a definition of game to make sure we were all on the same page. I showed a slide with a sequence of working definitions:

One gentleman got a little worked up about the third definition. He questioned the fundamental premise of our research because we said “X is X.” This man could not tolerate a recursive definition told as a joke and labeled as an intermediate line of thought. Our intent was that the scope of game on the right-hand side referred to the popular concept of a game. Besides feeling abused by his objection, some sentences from Chesterton came to mind:
Imagination does not breed insanity. Exactly what does breed insanity is reason. Poets do not go mad; but chess-players do. Mathematicians go mad, and cashiers; but creative artists very seldom. I am not, as will be seen, in any sense attacking logic: I only say that this danger does lie in logic, not in imagination.
Later on, when a group on gender equity presented their summary, this same man questioned the premise that we should strive for gender “equality.” At this point, he disqualified himself from being taken seriously.
A regular tradition of ITiCSE are builtin excursions to see the surrounding area. (We pay for these personally, not out of state funds!) I took a walking tour through the city. A major stop on this tour was a visit to a museum where we saw in person the Ice Maiden Juanita, a mummified Incan girl who had been clobbered on the head as a sacrifice atop a mountain. This experience was grim. In many ways, the tour celebrated the rich history of the area, but this sick twist of child sacrifice brought in a really big rain cloud to ruin that celebration. I missed my family.
Then we went to the Plaza de Armas and I saw a young girl feeding the pigeons. I took comfort in the fact that she wouldn’t be sacrificed.

In the evening the conference banquet was held in a monastery. The tour beforehand shared about the tradition of sending second daughters there to be nuns, of the weekly self-flagellation exercises, of the nuns’ separation from the outside world, and of the reform that changed the way women enter the monastery in the modern day. The tour guide shared of one woman, a third child, who very much wanted to be a nun instead of marrying the man whom her parents had arranged her to marry. The parents had already sent her older brother to be a priest and would not pay this daughter’s way. So, she ran off and joined the monastery without her family’s financial support. Her priest-brother supported her instead, but she was given smaller quarters than the other nuns. She slept on a sheet of nails.

One of my favorite parts of the tour was that it took place at night. I’d be walking through a passage and look up, only to see stars instead of a ceiling. This kind of open-air building doesn’t happen in humid and buggy Wisconsin.

After the conference ended, I went to the market with some fellow group members. The exposed meat and dairy products were overpowering. We could not understand how a string of 20 vendors all selling the same things could sustain themselves.

The economy of Peru is centered on two things: taxis and tourism. The streets are filled with more taxis than personal cars, and each block has several shops selling Alpaca products. The fur of these Andean camels is very soft. I got my wife a sweater and my children some stuffed animal guinea pigs, all made of Alpaca fur.

I did not return home right away. Many of us conference-goers took some personal days to visit other parts of the country. Like Cuzco.
By this point in the trip, I was ready to swear off meat. But even my beautiful Tunupa salad came with chicken.

And I knew I’d probably not have another chance to try guinea pig.

We took a tour of the town. A major theme of this tour was this strange symbiosis between Incan and Spanish culture and religion, all influenced by geography. A rendition of the Last Supper showed Jesus at a table with a guinea pig on a platter. Allegedly, it was not Judas in the picture, but Francisco Pizarro. Most Incan ruins had been razed when the Spanish landed, only to be restored when an earthquake toppled the churches that had been built atop them. Our tour guides talked about how they got the same feeling in an Incan temple as they did in church on Sunday. Vendors sold Spaniards vs. Incas chess sets.


One of our stops was at a ruins named “Full Falcon” in Qechua after the Spanish-Incan battle that had killed many there. The Spaniards did not believe the Incans could have built the structures they did with such tight-fitting and large rocks, and believed demonic forces must have played a hand.


The next day I took a train to Machu Picchu. I sat with some folks from Illinois. John had run a bed and breakfast in Maine for 20 years. It was called Moon over Maine and initially had nine rooms, each themed around a planet. The Pluto room was small, and John had long wanted to knock down the wall between it and Neptune. When Pluto was declassified, he did exactly this. He shared many Uranus jokes, which he said never got old.

Machu Picchu was filled to the brim with tourists. I was one of them, so I couldn’t grumble too much. The bathrooms normally cost 1 sol (about 30 cents), but they were free when we visited because the water wasn’t working. The site was beautifully inaccessible, surrounded by mountains. It was marked by attentive craft, with windows carefully aligned to solstice light, neighboring mountain peaks, and mathematical triplets.


Our guide Fernando was wonderfully animated. He drew diagrams in the dirt with his finger, which is the mark of an excellent teacher. He had three pet dogs: Tony, Burro, and another whose name I can’t remember. He waited patiently for Wilma, who at 78 years old, had some trouble on the many steps. Still, she made it through to the end.

Fernando said that Germans, Dutch, and Kiwis were the fastest hikers, and that North Americans made up 60% of the visitors.
All week long I’d been carrying around a bag of roasted almonds that I’d grown sick of. While waiting for the train back to Cuzco, I befriended some pigeons by sharing them. The little girl in Arequipa had emboldened me.

My flight left late on Saturday, so I hung out at the public library in Cuzco and got some work done. I could not find books in this library, but they did have tables for working.
I found some street beggars to whom I gave the last of my Peruvian money, and these folks helped me recognize the privilege I so enjoy in North America, where I grew up with medicine and public services.
In the airport, Anthony from Canada helped me playtest a game I’d been working on. The volcanic rock sculpture of Arequipa that I had been given as a gift set off some alarms in security. So much for trying to save time by not checking any bags!
Back in the US, I was greeted with the airport televisions reporting on Donald Trump and the Republican National Convention. Ahh, how nice it had been to turn this off for a while. After a shuttle ride from Minneapolis to Eau Claire, I was finally back home in the arms of my wife and children.
]]>Getting to Atlanta went very smoothly. The plane didn’t crash and I didn’t get mugged between the train station and my hotel. At the hotel, however, the clerk gave me keys to room 918. When I entered room 918, I found some lights on and some clothes lying about. I exited and reentered only to find the same conditions. Thankfully, there was not a person with a gun in the room. I went back to the desk and got a different room.
The hotel was tall and the exposed atrium made my stomach lurch:
When I get to big cities like this, I immediately set to work on two goals: find some postcards for the family and make the city mine by walking around it. I decided to head to the Atlanta Botanical Gardens. Unfortunately, my timing was off, because I ended up walking behind a strutting man who made me ashamed to be his fellow man. After passing a woman on the sidewalk, he would turn around, pull down his shades, and leer at her. When passing a woman in a car stopped at a red light, he would spin toward her and drop his own mouth open as he took in her beauty.
Eventually I arrived at the gardens. Traipsing through the green did wonders for my burnt out soul. I saw and smelled. Though not currently growing anything, this sculpture haunted me:
I thought I had visited everything when I found a new path that took me to twice as much space as I had already visited, with exhibits for orchids, jungles, deserts, a fragrance garden which nearly destroyed me, and a cooking demonstration. The sun was starting to set:
Since starting to work on Madeup, I’ve had a very difficult time not noticing algorithmic shapes. The paths in the gardens were no exception. What a pleasure to walk on such algorithmic simplicity:
You can be sure that I modeled these in Madeup:
The code behind a single tile is just some nested loops:
/usr/lib/ruby/vendor_ruby/rubygems/dependency.rb:315:in `to_specs': Could not find 'coderay' (>= 0) among 94 total gem(s) (Gem::MissingSpecError) Checked in 'GEM_PATH=/var/www/.local/share/gem/ruby/3.2.0:/var/lib/gems/3.2.0:/usr/local/lib/ruby/gems/3.2.0:/usr/lib/ruby/gems/3.2.0:/usr/lib/x86_64-linux-gnu/ruby/gems/3.2.0:/usr/share/rubygems-integration/3.2.0:/usr/share/rubygems-integration/all:/usr/lib/x86_64-linux-gnu/rubygems-integration/3.2.0:/home/johnch/.gems' , execute `gem env` for more information from /usr/lib/ruby/vendor_ruby/rubygems/dependency.rb:327:in `to_spec' from /usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_gem.rb:57:in `gem' from ./coderay:24:in `'
Regarding the actual conference, I was very glad to meet Neil Fraser, the primary developer of Blockly at Google. Blockly is what I’ve been using in Madeup, but I had been running into some design constraints that were preventing my further progress. For example, Blockly considers functions to exist at the top level, independent of all other code. This makes supporting closures challenging, as closures capture the current environment when a function is defined. If a function exists outside all environments, there’s nothing to capture. Without closures, all outside information would need to be passed in as parameters and all computed values would need to be explicitly returned. I asked Neil if I could just add previous and next connections to the function blocks to situate them inside the regular program flow and he said, “Probably.” He was right.
With Neil’s humble nudge, I was able to make steady progress on my blocks-to-text translation:
A central theme of the conference was what I regarded as a battle between text and blocks. Many people think there is no such battle, but after talking with some of the major players in the blocks world, I’m certain the battle is real. After seeing a demo of a blocks language that’s striving to be a general purpose language, I asked its developer about the psychological importance of being able to make mistakes while crafting code. I said that many people don’t feel in full control when they believe they are using “training wheels.” He said that this phrase makes him mad, and that parsing text is artificial and that we should be editing abstract syntax trees directly. He was certain text languages will die. As a lover of text and its liquidity compared to blocks, this scares me.
This conversation and others lead me my current outlook on the blocks vs. text battle: the war is only about the interface. We incorrectly associate block languages with the slow mouse and text languages with the fast keyboard. I look forward to a day where I don’t have to worry about indentation, semi-colons, braces, and linebreaks. We can have a language where we do not have to worry about these superficial details that only make the parser’s or human reader’s lives easier. But this language must still allow a recall-based user interface, one where we can use the keyboard to generate programs quickly and share code between programs. If that language is a blocks language, so be it.
]]>Arriving in Canterbury was painful for a variety of reasons:
Once settled in, I looked at the university map and saw a maze-like structure. I was sure it was a hedgerow maze, probably with a dragon in it.

Not the hedgerow maze I was expecting. Rather, its dual. Still, it was something to help me decompress after the trials of being up in the sky for a day.
The real labyrinth wasn’t quite so glamorous, but it was a nice way to unwind after a stressful arrival.
Being in England again brought back many memories of my honeymoon with me wife. We had traveled here 10 years earlier with backpacks and a tent to embark on our new life together. I saw again the small garden-yards, the buildings of bygone centuries sticking out anachronistically next to shoe stores and business complexes, and the melting pot that is England. Oh, I saw fun expressions too.
One night we ate at the Old Buttermarket. Above our table was a call for lifelong learning.
I ordered the oven pancakes, which were better than the waiter made them sound.

Oven pancakes, made of cheese and vegetables and crepes. No sweetness. “Comfort food,” said the waiter.
One of the things I must contend with when traveling internationally is criticism of America. I’ve yet to hear a good argument that there’s anything special about Americans that make them so abominable. I’m pretty certain that if these same critics had grown up in America, they would be just like the Americans they tease. I think what provokes their criticism is the pride and fear that is common to humanity. My country puts that universal brokenness in the public eye, and that brokenness is mistakenly called American.
Did you know begging is illegal in Canterbury?
The University of Kent hosted the conference and put us up for the night. That was really great. Full English breakfasts everyday. Cheaper rates. And fun artifacts.

I’m guessing they use the term grit as an abstraction. This box contains sand, but the next one might have sugar, which would go well with the tea.
Conferences tend to have special banquets one of the nights. We took a bus to Dover, which is pretty close to France. The food was enjoyable, I learned about the Codespells project, and I got to see the famous white cliffs.
Strangely, I did not attend many sessions. The working group paper and my own presentation kept me busy. It was worth missing things though, because now my Erdős number is 5. I did see one of the creators of Haskell speak, not on Haskell, but on computer science education.
The most meaningful part of attending ITiCSE 2013 came from working closely with my working group. I signed up so that I could see how real education researchers operate, and I spent most of the time early on feeling very inadequate. Statistics and psychology are not my strong points. However, my colleagues in turn expressed envy of my technical skills and classroom ideas. We all need each other. It’s just like the vandalism says.
]]>The purpose of my visit was to present a paper on Paul Wagner’s MOBILE project. We wrote this paper not certain where to publish it. In our literature readings, we noticed much related work came from SIGITE. It was very refreshing to start with writing instead of a particular target conference. My relationship with my wife started in a similar manner. We were good friends for three years, and our marriage just sort of fell out. I like not evaluating something based on what I can gain from it.
When I landed at the airport, snow greeted me. I climbed onto the city bus at the airport. A few minutes later, airport personnel started launching snowballs at the driver. Canadians are very familiar people.
The next morning was foggy.
But the fog didn’t hamper me from my first plate of eggs benedict ever. I’m not sure what hollandaise sauce is.
Sadly, the conference was a bit far afield from me. I wanted to hear and talk about code and algorithms and cool software that I could use. That’s not necessarily what IT is about. Coupled with the fact that I was presenting someone else’s work, I was nervous and eager to get the presentation behind me. The talk went okay, and several people gave me their business cards to learn more.
I got a good dose of downtown.
Near my hotel was a house that had been turned into a public house—if you know what I mean. I learned it was a hipster dive, just the kind of place that I go to feel awkward in. The place was full, so I sat awkwardly at a table with a girl whose mother was Canadian and whose father was Japanese. Our conversation was awkward. Once again I heard the theory that Canadians were so nice because the cold drove them together into solidarity. After an awkward half hour, she kindly informed me that if I wanted to order something, I’d have to go up to the counter.
On Saturday morning, I escaped early from my hotel, picked up a rented car, and sped away to Banff National Park, by far the highlight of my trip. I left so early that the sun still hadn’t come up by the time I arrived. Neither had the park gate attendant. Admission was free. I began a good five-hour hike. My feet were soaked in the first fifteen minutes. I was about four hours in before I saw any other humans. It was beautiful.
I tried to climb up Fairview Mountain, but my tiredness overcame me and I hiked back down. Later I read in a guidebook that I should have passed up the first trail I saw that went up through the scree. The second one would have been much more passable. Oh, well.
The park has an interesting scheme to keep animals from becoming roadkill. They lined the roads with fences. But to avoid cordoning off sections of the park, they also installed over- and underpasses every mile or so. These are also lined with fences, so the wildlife can roam freely but never reach the roadways.
Thanks, Canada.
]]>
The Jordan River is much smaller than I thought. The Old Testament account of Naaman's healing comes to mind.

Signs and bulletin boards were covered in Hebrew, Arabic, and Russian. I accidentally called an Israeli number when trying to phone home, but no one answered.
Some highlights of my trip included: