Skip to main content

On Teaching Computer Science at Grinnell

I’m writing this essay primarily to remind myself about why I do what I do. However, since we’re hiring a new tenure-line faculty member this year (fingers crossed!), I’m considering whether the essay might be something I want to share with prospective colleagues.

This is my twentieth year teaching computer science at Grinnell (and, I think, close to my thirtieth year teaching computer science, at least if you count the teaching I did in grad school). I find it hard to imagine a place that I’d enjoy more. In many ways, the things that make teaching in CS great are the things that make teaching at Grinnell great: engaged students; the individually mentored curriculum; an institution that not only cares deeply about strong teaching, but also supports scholarship; and more. But I also think that there are particular things about our department that make it particularly special.

First, and perhaps most importantly, we are a collegial and consultive department. John Stone credits Henry Walker for making us that way, but I think we’ve all worked hard to maintain these characteristics. We collaborate in assigning classes so that each of us generally gets what we want. (We tend to prioritize the choices of our younger faculty; the rest of us can probably teach anything). We talk through issues. We listen to each other.

Second, and nearly as importantly, we are a department that supports innovative teaching. At a time when the flipped classroom seems new to some people, we’ve been teaching a workshop-style introductory sequence for longer than I’ve been at Grinnell. (Both terms are used in multiple ways. In our introductory courses, we typically ask students to do short readings in advance of class, and we spend most of class with students working in pairs on problems we design, while the faculty member and the class mentors look over students’ shoulders, asking questions and giving advice. Flipped classrooms seem to more often use video, rather than text, but it’s the same general idea.)

I recall, as a young faculty member, attending a few conferences where the young faculty members talked about different things they wanted to do in class. Most of the people I talked to had good ideas, but didn’t think they’d get support from colleagues (in the department or beyond). I found that strange, since I’d received not only support, but also encouragement, to try new things. I hope that I’m providing the same level of encouragement to my young faculty.

And, because we’re a collegial and collaborative department, we’re always talking about the curriculum and ways to improve it. I think we’ve made at least four major changes to the CS curriculum since I’ve been here. I appreciate that we’re always thinking about better ways to teach CS.

Third, we have awesome students. (I think Grinnell students are pretty great, but I also know we have particularly wonderful students in our department.) They involve themselves in the life of the department. When we did our last tenure-track hires, I heard from almost every candidate that they were pleasantly surprised at how many of our students showed up for their talks and for the meet the candidate lunches.
They support each other. I keep hearing from students that they like being on Noyce 3rd because when they have trouble with an assignment, they can always find someone willing to help. But they also share opportunities. I love that the students who started AppDev made sure that there were mechanisms for other students to join. They do things on campus beyond the department. This year, in which nearly half of the Student Government Association cabinet are CS majors, is exceptional, but we always have students doing so many different and important things.

I also appreciate that our students encourage others to consider CS. When people ask why we have 40% women majors (compared to 18% nationwide), I say that one of the key reasons is that our 3rd and 4th year women work hard to support our new students. These students have also helped our major nearly triple in size over the past few years.

The longer I teach at Grinnell, the more I appreciate our alumni. (Probably because I know more of them.) I find that they not only go on to do interesting things, but also keep a clear passion for making a difference. (I was just talking to an alum who has done five different kinds of outreach programs in the four or so years since she graduated.) I love that they are always willing to help out when I ask.

Finally, the College provides us with good resources. When we designed the CS floor, we made sure to include lab space for every faculty member. The College mostly lets us run our own Linux network, even though the rest of campus is either Mac or Windows. We can provide class mentors for all of our 100- and 200-level classes (and even a few 300-level classes). We can provide students who need individual tutoring with tutors (and do so without requiring those students to pay). We have a commons that is welcoming, and that students from all over the College seem to use. (I just wish they’d return our mugs when they borrow them.)

There’s a lot more that I love about the department, but those five things (collegiality, innovative teaching, awesome students, alumni, resources) are core to making this a place that I love. And, as I look at the list, the central thing that makes our CS department great is the people.

Version 1.0 of 2016-09-03.