5 Questions as I Design a First Year Seminar

Due to the high demand for computer science courses, my department rarely offers a first year seminar (or, as we call them at Carleton, Argument and Inquiry seminars, or A&Is for short). We last offered one in 2014: Human-Centered Computing, taught by me. So when the opportunity arose for us to propose an A&I seminar for 2021-22, I jumped at the chance. This fall, I’ll be teaching Ethics of Technology as an A&I seminar.

I adore teaching A&I seminars. I like having a class solely comprised of brand-new Carleton students, and watching as they adjust to college and to life at Carleton. I like having a hand in helping them navigate this strange new place. I appreciate the A&I as a gentle introduction and/or a “sampler platter” to a particular subject, rather than a comprehensive overview. The point of an A&I, after all, is to introduce students to how scholars ask and answer questions in a field — which means I can be creative in how I interweave the course topic with this goal. This venue gives me an opportunity to teach something we don’t currently offer in our CS curriculum — and perhaps a way to try out what this might look like as part of our regular curriculum. (Case in point: our Human-Computer Interaction elective grew out of that Human-Centered Computing A&I seminar.)

Designing an A&I seminar is challenging in the best of times, but even more so in I Thought We Were Post-Pandemic But Apparently Not times. As I plan out my course, I keep coming back to the same five questions.

What supports will my students need to adjust to full-time, face-to-face learning? Incoming first year students experienced all sorts of learning models over the past year and a half: fully online, fully in person, hybrid, hyflex, Hi-C (ok, maybe not that last one). Whether they graduated in 2020 and took a gap year, or graduated in 2021, their high school experience ended weirdly. What expectations will these students carry into the college classroom? How can I create an environment where we all feel physically safe to share the same air and the same small space? What can I do to help them learn in the presence of others, something we all took for granted as the norm pre-pandemic?

How can I best design my in-person course for flexibility? I remain skeptical that everything will be hunky-dory, back to normal for the entire term. Don’t get me wrong: I take a lot of comfort in the fact that the vast majority of our community will be fully vaccinated. But students will likely get sick or have to quarantine. Heck, I have an unvaccinated (because of age) kiddo at home who (as of now) will be back in school full time around (as of now) unmasked people. So I may get sick or have to quarantine. I feel like there’s less course design support for flexibility this summer, and while the lessons I learned last summer are definitely valuable, I still feel a bit lost here.

What trauma will we all carry into this year, and how will it manifest? Earlier this summer, I naively thought that we’d be heading into post-pandemic life more fully, and not back into the thick of the pandemic. Which, I think, means that some of the trauma we carry is the same old trauma of living through a global pandemic. But there’s also pandemic weariness, pandemic anger over how preventable this current wave was, pandemic grief over all those we’ve lost, pandemic uncertainty about the future, pandemic despair that we seem to be heading back to “business as usual” and not taking away any lessons about the precariousness of so many in our society….you get the picture. We’re grieving, we’re exhausted, we’re angry, we’re fed up. Our collective mental health is a dumpster fire. We don’t have the resources — at my institution, in our medical system, in society writ large — to deal with trauma on this scale. How do I help my students navigate this — particularly while I’m trying to navigate my own trauma?

What should my students read? This is more of an “embarrassment of riches” question. There is so much good writing on all sorts of aspects of ethics in technology. I flirted with the idea of a textbook for a bit, but abandoned that idea because there’s so much non-textbook reading I could assign instead. Should I have students read a few books and deep-dive into a few topics? Should I go broader and have students read more long-form journalism articles on a wider set of topics? I need to decide soon (technically, I needed to decide when textbook orders were due earlier this month), but I’ll admit to a bit of decision paralysis here.

What is the one thing I want my students to walk away from this course with? I haven’t settled on my central course question yet. And that’s certainly a big part of what I want students to take away from my class. But I also want my students to walk away with a sense of resilience. A sense of belonging. A sense of agency. And a strong support network. I want my students to leave my class thinking that it was a safe place to learn and to try out ideas, and feeling that Carleton is a home for them. To me, particularly this year, that’s at least as important — if not more so — than any of the course content or core ideas.

What questions are you asking yourself as we head into the later part of summer and the transition to a new school year?


What I’m reading: Black Boy Out of TIme: A Memoir, by Hari Ziyad.

What I’m listening to watching: The Olympics! Particularly swimming, and some of the taekwondo.

Summer plans

One of the first things I do, or at least try to do, in the transition from Spring Term to summer is sit down and make a concrete work plan for the summer. Doing so prevents me from falling into the trap of “It’s summer and I am now going to Do All The Things!” and then hating myself at the end of the summer for doing None Of The Things, or Only A Small Portion Of The Things. I still tend to overestimate what I can do, because that’s my nature, but over the years I do think I am getting better at being realistic.

(As a semi-related aside: Those of you familiar with Sarah Hart-Unger — blogger, host of the Best Laid Plans podcast and co-host of the Best of Both Worlds podcast — know that she plans in quintiles instead of quarters. I just realized that I, too, have a de-facto quintile planning system! Three of the quintiles match up with our 3 academic terms (Winter, Spring, Fall), and the other 2 are summer, and winter break, our 5-week break between Fall and Winter Terms.)

I was a tad late with the planning session this year, because it didn’t happen until the end of my first week with my summer research students. But hey, better late than never!

What does this process look like for me?

Step 1: Capture. I always start with a brain dump of everything in progress, everything I meant to get to but didn’t, every “hey, it would be nice if I could do X when I have a bit more breathing room”. I do a pretty good job of keeping track of things that fit into this category, although they’re not all in one place. I go back to meeting notes, look through my notebooks (paper and Evernote), look at my research Trello boards, review emails I’ve flagged, and glance at my yearly goals list. This year, I’d already done a bit of this processing before sitting down to plan. One of the productivity tools I was using to keep track of projects and tasks no longer worked well for me for that purpose, so I’d already transferred all of that information into a paper notebook while I figured out a new system. And, as I transferred info, I did some organizing and re-evaluating and triaging of tasks and projects.

Step 2: Summarize. Once I have this all on paper — writing things down helps me process them — I look for larger themes. Do distinct projects emerge? What concrete things are due, and when? I make a list of things that are due, projects in progress, workshops or conferences I’m attending, and so on.

List of things that are due and projects in progress
Second step: organize the brain dump.

Step 3: Confront the calendar. I didn’t have my trusty big-ass desk calendar handy during my session, so I printed out regular-sized blank calendar pages for June-September. Referencing my Google calendars, I wrote down all of the big stuff happening this summer: kids’ camps, trips, conferences, due dates, and so on. It might seem a bit ridiculous to write things down that are already on a calendar, but again, writing helps me process, and having things on paper that I can then spread out on my desk helps me see the bigger picture of the summer more clearly.

Step 4: Schedule in the projects and triage. To the whiteboard! Armed with a list of projects and the reality of schedules, my next move is to assign projects to weeks. Doing so forces me to be realistic about what can get done in a summer by looking at how many weeks I have and thinking about what I can reasonably accomplish in any given week. I try to do this in order of priority, starting with the project(s) I deem most important to do now. If I run out of space before I run out of projects, I might re-prioritize, but whatever’s left over at the end gets moved to the fall (or even further in the future). I also try to have a mix of projects each week so that I’m not spending weeks “bingeing” on a particular project. (Gradual progress for the win!)

Since making this chart, I realized that textbook orders are due a week earlier than I thought. Whoops.

Step 6: Transfer. My final step is to make sure my project grid is somewhere accessible to both work and home. Evernote is my organizational tool of choice right now, so I repurposed a yearly goal-tracking template to store my summer project grid.

Grid in Evernote of my high-level tasks for the first few weeks of the summer.
Final step: transfer to Evernote so I have access at work and at home

Of course, the most important step is the step that follows all of this: actually doing the work! So far, the grid has kept me on track this week, and while I might not fully complete everything, I’ll have made really good progress on each of the focus areas for this week. The act of putting this grid together also helped me get out of a really bad headspace and restored a sense of (at least a bit of) control over my work to-dos. And finally, the act of putting the grid together helped me solidify my summer goals. For instance, what exactly do I mean by “finish Card Sort 2.0 draft”? (Answer: Finalize the results and analysis and write enough of the supporting sections to form a coherent story, so that I can start figuring out which venue(s) we should target first.) How about “plan A&I seminar”? (Answer: Finalize the learning outcomes, the central course question, and the major assignments / due dates, before September.)

How do you keep track of your summer projects, or projects during less-structured times in general?

5 Pandemic Teaching Practices I Plan to Keep

As Spring Term wound down and hints about the structure of Fall Term (and the summer) emerged over the past few weeks, I found myself reflecting on the past year+ of pandemic teaching. I talked in my last post about returning to some of the normalcy of interacting in person, and how much I’m looking forward to little things I used to take for granted. At the same time, I recognize how much grief and trauma we carry forward, individually and collectively, and wonder / worry about what that will look like and how we will deal with it, next year and beyond.

Somewhere in the middle of those two spaces lies pedagogy — what it was in the Before Times, what it became in Pandemic Times, and what it will look like henceforth. I’ve spent a lot of time thinking about the “henceforth” part. What have I learned in the last 4 terms of teaching online? How will this carry over into my future courses? What’s going to “stick”?

This, of course, is not a one-time reflection — I’m sure my thoughts will morph as we settle into whatever becomes our normal. But at this point in time, I keep settling on the same 5 things, which makes me think these will be the most likely to “stick”.

1. Weekly grid

I first saw this idea in a Resilient Pedagogy workshop last summer (and blogged about it here). The grid communicates expectations to students about what’s going on in class in a particular week, in what mode, and how long each item should take them to complete. I’ve found the grid invaluable for planning out each week. It shows me whether activities are balanced across modalities or whether I have to switch things around (e.g., do I have too many asynchronous team activities planned?). It keeps me honest in my expectations of students — I can quickly see if what I’ve planned will take 8 hours or 16 hours, and adjust accordingly. And I find it much, much easier to parse than looking at a list of activities on a Moodle page. So much so, that I embedded the grid for the week into that week’s Moodle page.

Screen shot of Moodle page for Week 6 in Software Design, highlighting the activity grid.

I’ll continue this because: It makes planning easier for me! And it has all of the key information for the week in one place for the students, including when office hours are and how to access the lab assistants.

2. Sunday night videos

I’m pretty sure I got this idea from Small Teaching Online, by Flower Darby and James Lang. The Sunday Night Video, so named because I often ended up recording and/or posting the video on Sunday night, is a short, 5-10 minute video which presents a high-level review of what we did in class last week and what’s coming up this week. The review and preview focus on how the course activities, concepts, skills, etc. fit into the learning goals and the larger arc of the course. Similarly to the grid, it provides orientation and context within the course — why are we doing this set of activities now? How will this get us closer to achieving the learning goals in the course?

Screen shot of the weekly review/preview video, a.k.a. the "Sunday Night Video"

I’ll continue this because: It’s a quick and accessible way to remind students of how all of the pieces fit together. It shows students how we’re progressing towards the learning goals for the course. It helps them connect the dots.

I might modify this by: Instead of recording a video, I could start off the first class meeting of the week with this content. I don’t know if that’s the best use of limited class time, but I could probably do a variation of this in a shorter amount of time. I may experiment with this in the fall, when I’m teaching a first year seminar.

3. Collaboratively annotated readings

I’ve posted previously about my use of Hypothes.is in my Computer Networks course (also written up here), and I’ve also used Hypothes.is in Software Design. When I first experimented with it, I thought of it exclusively as an asynchronous team tool, for students to label and highlight course concepts together. (For instance, in Software Design I have students apply Steve Krug’s Trunk Test to a web site, finding and highlighting answers to each of the Trunk Test questions.) The more I used it, the more I realized how I could use it to focus students’ attention on key concepts in particularly dense readings, or guide students through reading a recent paper related to course concepts, or (in the case of Computer Networks) walking students through a protocol specification. The example below shows my annotations in our online textbook for a particularly tricky topic.

Annotated text using Hypothes.is, explaining the finer points of TCP Congestion Control in a Computer Networks course.

In turn, students can add their own highlights, comment on my annotations, and so on — which leads to a dialog about the material before we even get to class!

I’ll continue this because: It’s an effective way for me to communicate how students should read a particular selection and what to focus on, and help them be more effective readers of technical content. It allows students to communicate with me as they are reading so that I can get a clear sense of what’s confusing and what’s piqued their interest. The act of annotating a reading also serves as a valuable check to me — I can hone in on what’s really important, and cut out sections that I may have assigned in the past but that don’t carry much weight in terms of student comprehension of a particular concept.

4. Using Google Docs during small group activities

When we moved to online teaching, I lamented the loss of in-person group work and of teaching in my favorite classroom space, a large room with tables and walls of whiteboards. How would I reproduce the collaborative brainstorming, the collective question-answering, the creation of communal artifacts, and my walking around the room to answer questions and redirect the wayward group?

Answer: collaborative editing of Google Docs.

Example of a collaboratively edited Google Doc from Software Design, where teams analyzed different websites.

Collaboratively-edited Google Docs allowed me to reproduce the spirit of all of those things. Student teams either had their own document to edit, pre-populated with the discussion questions and prompts, or had a section of the document to edit, also pre-populated with the questions / prompts (shown in the example above). I’d send student teams to breakout rooms after setting up the activity. Sometimes I’d travel from room to room, but because I found this more disruptive than helpful, I’d usually just monitor the activity on the document(s). If I wasn’t seeing any typing for a while, I’d stop by the room. If someone in a team wrote a particularly interesting, insightful, or good point, I’d add a comment. I also used comments to ask guiding questions if a group seemed to be heading off-track or in the wrong direction. The document(s) provided a record of class discussion, which students could revisit or, if they’d missed class for whatever reason, use to catch up. (This was particularly valuable when I had students literally on the other side of the world for whom class met in the middle of the night and who rarely attended synchronous class meetings because of that.)

I’ll continue this because: In addition to providing students with a record of what each group produced, this provides me with a record of what each group produced. Even when I walk around the room, I miss things.

I might modify this by: having students take pictures of the whiteboards and post those to Google Drive, when we use the whiteboards in class. (It might also be an interesting learning activity to have teams annotate the pictures after the fact, as a way to consolidate their learning from a particular class session!)

5. Instructional videos / walkthroughs

I tried, as much as possible, to avoid lecturing in synchronous class meetings, instead opting to record smaller-sized lectures and posting those along with targeted readings. As the pandemic wore on, I found other valuable uses for instructional videos:

  • Walking through worked examples of problems.
  • Providing feedback on things that many students missed on an assignment or exam, to help students who wanted to revise figure out how to approach the revisions.
  • Walking students through the steps of a lab activity — showing them how to do something, and then asking them to stop the video and do a particular section of the lab (shown in the picture below).
  • Providing feedback to individual students and/or teams on an assignment, when it was easier to show them where they went astray instead of trying to put it into words.
Screen shot of a video walking students through a lab on Flask.

I’ll continue this because: Not every student is going to catch everything in a lecture or demonstration the first time around. Allowing students the opportunity to review and rewatch things at their own pace provides more opportunities for real learning — particularly if the students work the example, step through the problem, etc. along with the video. And the students who received video feedback indicated that they found this form of feedback particularly helpful, because they could see what part of the assignment particular pieces of feedback matched.

I might modify this by: finding ways to record the lecture / problem examples portion of class, maybe not all the time, but when I’m teaching a particularly difficult concept.


In reading over this list, I’m struck by the fact that all of these pedagogical practices increase transparency. They expose how students approach and apply the course concepts, and the work of small teams. They give students a glimpse into how I think about the pieces of the course and my expectations for their learning and engagement. They make more of the construction of the learning process visible. And hopefully, by being more transparent and not assuming students know why I’m doing what I’m doing, I’m also being more inclusive.

If you’ve taught during the pandemic, what new practices do you plan to continue?

Midterm … ish … update

We’re currently in Week 7 of 10 of Spring Term, and the only good thing I can say about this state of affairs is THANK GOD the administration moved fall term registration, and advising, to the summer, because if I had to meet with all of my advisees on top of everything else going on this week, I would probably run away to join the circus.

No one is ever at their best at this point in our academic year. Every other institution in the universe (it seems) is out for summer, and we’re all sick of each other and exhausted and cursing our calendar. This year those feelings are amplified. I poll my class every Wednesday (anonymously and when I remember) to see how they’re doing, and this week over half the class responded with some level of “not great”. A good number of my students are dealing with some pretty serious stuff. The other day one of my colleagues said “I wish we could just give everyone an A and send them home at this point.” Which, to be honest, sounds like an excellent strategy.

I have to say that I’ve mostly struggled through the term, too. Work continues to be a firehose, and I continue to work more hours on weekends than I’d like. There are difficult growing pains connected to my leadership role. My course grader went MIA for a good chunk of the term. Both kiddos are really struggling. I’m dealing with a level of exhaustion I haven’t experienced since I-don’t-know-when.

And yet.

I’m fully vaccinated, as is my partner, as are many of my close friends here. I’ve hugged people I don’t live with, for the first time in over a year! And one of my kids is now vaccine-eligible, and is hounding us to schedule their appointment ASAP.

I’ll be hosting students IN MY RESEARCH LAB, PHYSICALLY in a few short weeks.

My Software Design students are awesome and a lot of fun to teach. I am having a blast.

I submitted an article to a journal earlier this month! Something I’d been thinking about writing for a while and then struggling to complete for months. I convinced one of my favorite staff people to coauthor, and writing with her was one of the high points of this academic year. And I’m currently working on another paper, on work I did with students a couple of years ago, which I hope to get out for review by mid-summer.

I was elected to the college’s tenure-and-promotion committee, a 3-year stint. This is super important (and hard!) work, particularly as we figure out what faculty reviews and evaluation look like post-COVID. I’m humbled that my colleagues trust me to be a thoughtful voice in these discussions and deliberations.

Most importantly, despite everything else going on, I feel a rare sense of … calm. A sense that all of the important stuff will get done, maybe not quite on the timeline I’d like, but still, done. That the stuff that doesn’t get done wasn’t really important in the first place. That the current state of affairs, no matter how frustrating or difficult, is temporary. This is a rare state for me in normal circumstances, but especially during the spring, where my depression and anxiety are typically at their worst. Perhaps all that hard work in therapy is starting to pay off.

I hope this week, despite whatever else is on your plate, that you are able to find some small bit of calm among the chaos.

And we’re off and running (well, limping) in Spring Term

Monday marked the start of Spring Term at Carleton — a gorgeous, sunny, record-breaking warm day, full of hope and promise and springtime and all the feelings that an especially warm March day brings.

As I write this, for the record, it’s in the 20s and windy — a miserable weather change that matches the change from “yay, a new term!” to the sinking reality of 10 more weeks of slog.

Spring Term, as I’ve written before, is the time we all hate the quarter / trimester system. Fall Term? Love it, because we get to enjoy all of August before starting up. Winter break? Especially love it, because we get a full break for the November and December holidays. Spring break? Fun for students, not at all a break for faculty, who frantically work to submit Winter Term grades before turning around to frantically prepare for Spring Term. Spring Term is when the reality sets in that we’re in the middle of a 6 month slog towards summer, and that when the majority of US institutions end their academic years in May, we’ll be at the midpoint of the term.

I’m heading into the term with an even emptier tank than usual. While I’m usually able to take a bit of a break during spring break (a day or two off at least), this wasn’t in the cards this year — and work even bled into both weekends. And a confluence of obligations means that I am completely swamped through the end of next week — and will be working the vast majority of this coming weekend as a result. Plus, the world is still a dumpster fire in many respects, and many of us are dealing with various forms of trauma.

The good news (?) is that I completely recognize that I am at / over capacity right now, and unlike Previous Amy, I recognize that this should not mean that I push myself even harder and beyond my limits. I also recognize that, while things won’t magically get all the way better when the confluence of obligations ends at the end of next week, I will at least regain more control over my time and to-do list. And, as I find myself saying often these days, that’s not nothin’.

The other good (?) news is that I’m taking this as an opportunity to triage, not just my own list but what I expect of my students. When putting together this week’s course activities, I removed one activity (developing a team contract) from the list and moved it to Week 3, because I knew that I didn’t have the energy to shepherd my students through that process this week and that the world would not end if students worked for a couple of weeks without a team contract. (And, in fact, there may be benefits in applying some of the tenets of iterative development that we’re discussing in class this week towards evolving team rules and norms.)

I then realized that there’s likely value in removing one thing from each week of the term. I do this when I write exams (in courses where I give exams). I draft the exam, take the exam and time myself to see how long it takes me, tweak the questions based on my experience taking my own exam, re-take the exam — and then I remove one question altogether. I do this to give students extra breathing room, so that they are not worried about finishing the exam. I also find that there’s always one question that may be a very fine question, but really doesn’t add anything to what I’m trying to assess. The same concepts are assessed elsewhere, or I realize that I could slightly modify a different question to assess the same concept. It stands to reason that there’s likely at least one activity I’m assigning or introducing each week that’s nice and all, but probably not strictly necessary for student learning. And if that makes everyone’s lives easier — my students, to make their loads more manageable; and mine / my course staff, to reduce the time spent assessing the activity and answering questions about the activity — well, then, that also benefits learning.

What are you triaging this week, either for yourself or your students? How are you preserving your own energy for the things that matter?

Extending the “central question” experiment to Software Design

In my Fall Term course, Computer Networks, I experimented with designing the course around a central question: should the Internet be considered a public utility or a private good? Students produced reflections at the start and end of the term around this question: the start of the term’s reflection focusing on how they understood the question at present, and the end of the term’s reflection utilizing evidence from the course to demonstrate how their answer did (or did not) evolve.*

The experiment proved so successful that I now plan to do this in as many courses as I can. I like how it focuses the students, succinctly, on the core of what we’re learning and reminds them that what they learn in this course has broader impacts beyond the content. At the same time, the central question helps me focus on what’s really important in the course, which helps me make decisions about what content to include or exclude, what to triage, and how to structure course activities.

This spring, I’m teaching Software Design — the same course I taught a year ago. Software Design is an interesting course in that we cover a lot of ground and a number of seemingly disparate topics loosely united by the theme of “these are things we think our majors should know about how to write effective software”. Things like: how to work effectively in teams. Best practices in function and class design. Code style and commenting. A bit of user interface design and accessibility. How to shepherd a project from idea to deployment. Iterative design. Ethics. Design patterns.

I’ve worked with my colleagues who also teach this course regularly over the past couple of years to streamline the story the course tells. I came up with a “layer cake” diagram to show the students how the topics unite and where various concepts fall in these layers. In my “week in review/weekly preview” videos last spring, I included this diagram to indicate what layer(s) we’d hit the previous week and in the coming week. I think this went a long way towards making the course feel less disjointed to the students.

Three layers of Software Design topics: Professionalism at the top, Design and Architecture in the middle, and tools at the bottom.
The “layer cake” model of Software Design topics. In retrospect, I missed an opportunity to make this look more like a cake.

And yet…this didn’t quite get us all the way to where I wanted to be. There’s still a lot going on in that model. Plus, I feel strongly that a huge part of “writing effective software” involves ethical and social reflection. How might this software cause harm, intentional or otherwise? Whom does this leave out? When, and why, might we choose not to bring a piece of software into the world? Do our teams embrace and interweave diverse perspectives and life experiences? In what ways can software development be an act or a practice of social justice?

So, back to the central question. Given all that’s going on in this course, what should that central question be?

The answer I settled on:

What are our responsibilities, as software developers, when putting software out into the world?

I’d like to use the same initial/final reflection assignment I used in the fall, which means I’ll need to shuffle around the first week’s deliverables (not a huge deal) and modify the current reflection I have students do at the end of this course (where they reflect on the process of software development they experienced over the term). And I think this question lends itself well to a first-day-of-the-course activity framing the course for students. (It’s more holistic than the exercise I’ve used forever, which has students reflect on examples of good and poor design in software and systems they use and work through the design outline of a mythical system.)

More importantly, I believe the question tightly ties in those ethical and social justice issues that I want students to grapple with. It reinforces the idea that software design and development is not a neutral activity. We don’t have the luxury of NOT critically examining ALL the things we bring to the process: our biases, life experiences, world views, identities, and beliefs. And this critical examination is as much a part of the software development process as using GitHub effectively, or writing solid unit tests, or constructing tightly cohesive functions, or gathering requirements.

I’m interested, and eager, to see how this experiment plays out — and I’m already looking forward to my students’ initial and final reflections on this central question.

*In a nod to universal design and flexibility, students chose the modality for this reflection. Many wrote a classic essay, some recorded videos, and others produced and narrated slide decks. My rubric accounted for these various modalities.

Looking forward

This week marks the end of Winter Term at Carleton. The day this posts is the last day of classes; finals end on the 15th. It’s been a long, tough term, every bit the slog we expected (and then some), and not that there’s much of a break before the start of Spring Term classes on the 29th, but it’s a break nonetheless that we all sorely need.

There’s a lot to be anxious about, to be sure — we’re not out of the woods with COVID just yet, and there’s the fear we’ll ease up too early on restrictions before enough of us can get vaccinated. One kid is back in school full time (and has already had a 2-week all-school shutdown because of COVID spread in the school) and the other goes back in just over a week. The continued violence against Asian-Americans worries me, both as a decent human being and as the mom of an Asian son. The trial of Derek Chauvin looms large over everything around here, too, making an already difficult week even more so for many members of our campus community.

And yet.

I find myself more hopeful lately, more willing to look ahead to what we might be able to do in the future. I’m looking forward to more things, with fewer qualifiers — more “when”, less “if”. More outright planning, less contingency planning.

Here are some specific things that I’m particularly looking forward to, in no particular order.

  • In person research with students. While we’ll still have restrictions and a community covenant in place, we received word yesterday giving the go-ahead to host students in our lab spaces this summer! I plan on giving my students the choice of in-person or virtual research this summer so that I can be as flexible as possible — and honestly, I’ll likely give that option to students from now on, pandemic or no. I am positively giddy that I will be able to work side-by-side with students this summer, scribbling on whiteboards together and talking face to face. We’ll finally get to use our brand new research spaces, too!
  • My Spring Term course. I’m teaching Software Design to what looks to be a big group (40 students, plus or minus a few). I adore teaching Software Design. I’ll still be teaching fully online. I taught this course online last spring, and it went fine. But I’ve learned so much since then, and I’m super eager to pour what I’ve learned into redesigning the course for the upcoming term. Luckily, we’re talking tweaks and not wholesale changes, but I suspect they’ll make a huge difference into the class flow.
  • Getting vaccinated! Unlike some states, higher ed faculty and staff in MN are not classified as “essential workers” for the sake of vaccination priority, and because of my age and my relatively good health status, I’ll be in the last priority group for vaccination. That said, I am signed up several places for “please call me if you have open vaccine that you need to get in someone’s arm by the end of the day”. And by all accounts, MN’s vaccination rate is accelerating. I’m on track for a summer vaccination, but with any luck, I might even be vaccinated before my research students start their work this summer. Fingers crossed!
  • Summer gatherings. To be honest, I think it will be a long time before I’m comfortable in someone else’s indoor space mask-free. But the improving weather opens up more opportunities to gather, carefully, outside, with a wider swath of people. I’m excited to see friends “in 3-D” that I’ve only seen on Zoom for months. And maybe this summer we’ll actually be able to use the season passes to a nearby amusement park that I bought in late summer 2019…

As spring arrives and as more possibilities open up, what brings you hope? What things are you looking forward to doing?

5 Lessons from Fall Term

Winter Term is underway (more on that next week)! Yet I still find myself processing and attempting to make sense of Fall Term. To be honest, I find myself dealing with what I can only describe as lingering and persistent trauma — not just over Fall Term, but over the state of the world more generally. It’s hard to process and analyze when everything feels so uncertain and impossibly hard.

On balance, Fall Term went…surprisingly well, given the circumstances. I had a small, engaged class of 15 students. No one unexpectedly disappeared, and everyone passed the course. My course revisions mostly worked, save for a project that went off the rails due to undocumented conflicts in different minor versions of Python. And I managed to make some forward progress on research and various other projects.

In thinking about the term, I found myself returning to five lessons I learned, or re-learned, over the course of the term.

Lesson 1: Everyone is struggling. And it’s ok to acknowledge that publicly.

Fall Term was hard for lots of us, for a variety of reasons. Time zone differences. Health, including mental health, issues. Worries over the election. Concern over the risk-taking behavior of other students. Racial trauma. Isolation and loneliness. Caregiving responsibilities. And while Carleton was not fully online, many of its courses were at least partially online, which meant everyone (students, faculty, and staff) spent much of their days interacting online — difficult even in the best of circumstances. In short, no one’s at their best.

I made checking in with my students a priority. I borrowed an idea from a staff colleague and started each synchronous class meeting with the same anonymous poll, asking them how they were doing. Originally I just summarized the responses, but as the term went on I started displaying the results as a percentage of respondents. I commented briefly, adding (truthfully) where I fell among the options, acknowledging the mindspace we collectively occupied that day, and reminded those who were struggling of various ways to reach out and seek help. Students indicated that they found this helpful — both to see that they were not alone wherever they fell on the continuum that week, and that I was honest about my own struggles. This is definitely something I will continue, including whenever we return to in-person instruction.

Poll window asking "how are you doing today?" with multiple choice options
Zoom editor view of the check-in poll I used at each synchronous class meeting.

Lesson 2: Teaching online is easier the second time around

Don’t get me wrong: Teaching online still feels unnatural, weird, and hard. But it felt way less so than it did in the spring. I was able to tap into the lessons I learned about organizing a week, a lesson, a class meeting, an explanation, and apply them to a very different course. Everything seemed to flow much better — even the project that went off the rails. It also helped that students had a term of online learning under their belts, and knew what to expect — from the modality, from each other, and from me.

I also appreciated even more all of the pedagogical work I put in this summer, and the pedagogical workshops I attended. It was time very much well spent and definitely made a huge difference in how the class ran, and worked.

Lesson 3: Specifications grading helped…a lot

Based on my reading of Specifications Grading and Grading for Equity, I completely revamped my course grading. Did it work? Hell yes!

I found this new-to-me style of grading freeing. Rather than agonizing over “is this exam answer worth 4 points or 5 points?”, I only had to ask “does this answer meet the expectations for the learning objective or concept?” Turns out, in most cases that’s a much easier question to answer. And knowing that students could revise and resubmit any summative work, I found it easier to make these judgment calls. Weirdly, I actually kind of enjoyed grading!

Most students took advantage of the revision opportunities — some multiple times. I found that a subset of the students were really invested in improving their learning through the revision process — and that this freed up some of them to take risks they might not have normally taken. Which, of course, is exactly what I want to happen in my courses! That said, from a grading management perspective, in the future I will likely limit the number of revisions, probably through some kind of token system, to prevent my workload from spiraling out of control.

I never quite figured out how to get Moodle to play nicely with this grading system. I ended up converting the expectations scale to a 4.0 scale and averaging things within categories to calculate the course grades. It was hard for students to figure out their own course grades because the averaging was somewhat opaque and was done outside of Moodle. In the future, I will invest the time to bake this into Moodle so that students have a better sense of how they’re doing in the course.

Lesson 4: Online pedagogy allows for some new collaborative learning opportunities

Computer Networks (the course I taught this fall) is conceptually tricky and often dense. In an in-person class, I make heavy use of office hours and class time to help students extract the important points of a concept, technique, protocol specification, or algorithm from the seemingly overwhelming details. After some success using Hypothes.is, an online annotation tool, in the spring, I experimented with Hypothes.is for some of the denser readings in the course. For a few of the daily targeted readings, I had students answer the reading questions in their small groups by annotating the reading with their answers. For a few others, I pre-annotated the reading to focus their attention on the main points, and had students comment on the annotations and/or add their own. I really liked how this worked out overall, and I think the students got more out of those readings. I plan to continue this practice in the spring and likely beyond. I could see it working really effectively for Intro CS and for Data Structures (our CS 2), where it’s really easy for students to get lost in the details of a reading.

Moving things online wasn’t always neat and contained, but sometimes that’s ok. I usually run an in-class simulation of Internet routing, where students act as autonomous systems in small teams: creating routing tables, entering into peering agreements with each other, and ultimately attempting to “route” data. What normally takes one class period in person spread over several days online. It was messy, and chaotic — and probably taught students about the messiness of real-world Internet routing more effectively and deeply than anything else I have attempted in my 17 years of teaching this topic.

Lesson 5: It’s really, really hard to troubleshoot virtually

When I can’t figure something out, I need to sit down and play around with it. When teaching in person, I spend a lot of time running to the computer lab so that I can see what the students see, in their coding environment, with the same tools and version of Python and all that good stuff.

When the rogue project went off the rails, I found myself flying blind. What version of Python were the students using? Were they all using the same version of Python? Is it the same as mine? Why does the code sometimes work when we ssh in to one of the servers, but not consistently? How do I help Windows users — most of my students — when I have a Mac? Ultimately, I was limited in how much troubleshooting I could do. I’m still not sure what I could have done better, other than perhaps requiring the students to run and develop the code within a virtual machine of some sort. But it’s something I continue to reflect upon how to improve — and particularly, how to better support Windows users in my courses.


I have a lighter teaching load this term — just our capstone, to make room for the heavier workload of my administrative role this term. But I’m already thinking ahead to how I can capture, consolidate, and integrate these lessons into my spring term course — the same course I taught last spring. I look forward to seeing how much better and more effective I can make that course based on what I learned this term.

Planning for Fall (a story in pictures)

I’m overwhelmed.

Fall term classes don’t start for another week and a half, and I’m already at the stage where I’m semi-catatonic by the end of the work day. (Yesterday I gave up and took a nap. At 4:30pm.)

This time of year is usually full to the brim anyway — the mad rush to finalize the syllabi, helping advisees navigate changes in their schedules, setting priorities for the year for STEM at Carleton, meetings meetings meetings (and, hey, more meetings!), … the list goes on. This year, it’s that … times a thousand.

Yesterday as I navigated through various windows and apps on my laptop, I marveled at the juxtaposition between my “normal” workflow of preparing for the term and the additional preparations for a pandemic term. At the end of the day, I took some screenshots of some of the apps and sites I used throughout the day, to put together a mini photo-essay highlighting a “day in the life” of a professor preparing for the upcoming COVID-influenced term.

  • Checklist containing items to complete for preparing a course for the start of the term.
  • Mind map of a computer networks course.
  • Backward design worksheet with learning outcomes and evidence.
  • Class meeting times schedule.
  • Moodle landing page with course listings
  • Screen shot of part of the faculty COVID-19 FAQs
  • Teaching toolkit, pandemic edition: iPad, pencil, headset

(I did, however, spare you the screenshots of the multiple Zoom meetings I’ve participated in over the past few days. And of the firehose of emails. And of the various ways my family interrupted me mid-meetings. You’re welcome.)

Looking at these pictures, it strikes me that even though everything seems completely out of whack, the basic things I do to prepare for a term — wrangle with Moodle, finalize my learning outcomes, assemble my teaching toolkit — remain largely unchanged. The details may look different, but the broader strokes resemble what used to pass for normal. And that provides me with a teeny bit of comfort as I head into what promises to be a strange and stressful term.

How does preparing for the upcoming term/semester look for you? What new things are juxtaposed into your normal workflow?

Rethinking assessment

When we moved online and moved to mandatory S/Cr/NC grading (basically, Carleton’s version of pass-fail) this spring, I vastly simplified the way I graded projects and other major course assessments. Here’s what I wrote in my syllabus:

Each assessment that you hand in will be evaluated against a checklist related to one or more of the course learning objectives. I will rank each learning objective, and the overall submission, according to a three-point scale: Does not meet expectations; Meets expectations; Exceeds expectations. If an assignment does not meet expectations overall, you (and your team, where applicable) will have the opportunity to revise and resubmit it to be re-evaluated.

… You will earn an S in the course if at least 70% of your evaluated work (after revision, if applicable) is marked as “Meets expectations” or “Exceeds expectations.” You will earn a Cr in the course if between 60 and 70% of your evaluated work (after revision, if applicable) is marked as “Meets expectations.” You will earn an NC in the course if less than 60% of your evaluated work is marked as “Meets expectations.”

CS 257, Spring 2020 syllabus

I’d heard the term “specifications grading” and I knew that what I’d be doing in the spring was in the general spirit of specifications grading (if you squint hard enough). And it worked surprisingly well. Students knew exactly what they had to do to earn a particular grade in the course, and on individual assignments thanks to targeted rubrics. Allowing revision on any major assessment meant that students could recover from the inevitable hiccups during a pandemic term (and a term marked by grief, loss, and protests over George Floyd’s murder). And at the end of the term, when some students could just not give any more to their studies due to all that was happening around them, the system extended some much-needed grace — if they’d already met the threshold for an S, they could bow out or step back from the final assessment, assuming their teams were on board with their decisions.

I wondered: what would it take to do something like this during a graded academic term? I wanted some more guidance.

And so, I did what I always do when I want to learn more about something: I hit the books. Two books, in particular: Specifications Grading: Restoring Rigor, Motivating Students, and Saving Faculty Time, by Linda B. Nilson (2014); and Grading for Equity: What It Is, Why It Matters, and How It Can Transform Schools and Classrooms, by Joe Feldman (2018).

Both books tackle the same general problem: grades and grading are imperfect, biased, and measure lots of things other than how well students achieved learning outcomes. Nilson solves the problem with a straightforward up-or-out approach: work is either acceptable, or it’s not. Feldman’s solution is a bit more nuanced: work is somewhere on a (short!) continuum between “insufficient evidence” and “exceeds learning targets”, but nothing resembling a formative assessment and/or “life skills” gets a grade.

Specifications Grading is faculty-centered in its approach, at its heart. A key goal of specifications grading is to save faculty time while still maintaining high quality feedback to students. The specifications grading approach is two pronged. First, all individual assessment grades are pass-fail. The assignment either meets the standard of acceptability, or it does not. No partial credit, no wrangling over how many points something is worth. The standards of acceptability are spelled out in a detailed rubric, or checklist, so that students know exactly what constitutes an acceptable submission. Second, a student achieves a particular course grade (A, B, etc) by completing either a specified set of activities (“bundles” or “modules”), or by demonstrating more advanced mastery of the course learning outcomes (“jumping higher hurdles”). The bundles/modules/hurdles are spelled out in detail in the syllabus, so that it’s crystal clear how a student earns a particular grade. In my spring course, for example, the bundles were simply percentages of course assessments acceptably completed. In a graded course, a bundle is often more complex: extra assessments, for instance, or more challenging assignments. While setting up the bundles/modules/hurdles seems like a really time consuming process, it is front-loaded, done before the course starts, so that the grading itself during the term is more streamlined. Basically, the instructor decides what constitutes meeting learning outcomes, and constructs the assessments and bundles/modules/hurdles accordingly. At the end of the course, then, the grade more closely indicates the level of mastery of course learning outcomes than a traditional partial-credit focused grade.

Grading for Equity is, I would say, more student focused. (And more K-12 focused, although I certainly found enough in the book worthwhile to consider for the college context.) Grading for equity is based on three pillars. First, grades should accurately reflect student achievement towards learning outcomes. This means grades should not include things like formative assessments (homework, in-class activities), extra credit, behavior, or “soft skills” — they should only reflect the results of summative assessments, and only the most recent result of a summative assessment. Feldman also cautions against using the typical 100-point scale, which is skewed towards failure, in favor of more compact scales (a 4 point scale, for instance, or a minimum score). Second, grades should be bias-resistant. They should not reflect a teacher’s impression of student behavior, which is flawed for many reasons, nor reflect a student’s life circumstances (for instance, their ability to complete homework outside of school hours). Third, grades should be motivational. It should be transparent to students what counts as mastery of a learning objective and how to achieve a particular grade. Formative feedback should not penalize mistakes, because this promotes a fixed mindset rather than a growth mindset. For the former, Feldman is a fan of detailed rubrics and the four-point scale (something like “Exceeds expectations”, “Meets expectations”, “Partially meets expectations”, “Insufficient evidence”).

Both books agree that students learn at different rates, and any summative assessment should take this into account. Both systems, thus, allow for retakes and redos. Specifications grading puts some limits around redos to make things easier on the professor, recommending some kind of “token” system where students have some limited number of redos/late passes over the course of the term/semester. Grading for equity favors as many retakes (up to the end of the term/semester) as a student needs or wants in order for them to meet learning targets. (Theoretically, anyway; the book acknowledges that there could be a snowball effect particularly when later work depends on earlier work, and suggests that time limits on retakes would be appropriate in this context.) Grading for equity argues that later assessments should replace earlier grades rather than, say, averaging them, It gets into the weeds a bit on the freedom of faculty to count anything that demonstrates a learning objective as an appropriate assessment of that objective, including things like discussions in office hours. I get the spirit of this, but it seems like something like this would be ripe for bias.

So, how am I using what I learned from these books about assessment as I plan my fall course, a CS elective? And what am I struggling with?

Plan: Retain the meets/exceeds expectations scales, with minor changes. I really liked the ease and clarity of the three-point scale in the spring. Grading for equity makes a compelling argument for the inclusion of a “not yet demonstrated” category, allowing teachers to differentiate between “handed in and not sufficient” and “not handed in”. So I may move to a 4-point scale for some assessments (“insufficient evidence”, “partially meets expectations”, “meets expectations”, “exceeds expectations”). Roughly, “partially meets” in my head equates to C-level work, “meets” to B-level work, and “exceeds” to A-level work. Moodle likes to convert everything to percentages, which is not as useful for this type of grading. I need to figure out how to hack Moodle to show students something closer to this scale rather than “you’ve met expectations so you’ve earned 50% on this assignment”.

Plan: Allow for revisions and be flexible with deadlines. We’re still in the midst of a pandemic. We still live in a white supremacist society. And the 2020 elections….well, need I say more? Fall will be tough emotionally and mentally for many of us. Extending flexibility and grace to my students, being willing to meet them where they are, is the least I can do. And while I’ve used revisions on exams previously with pretty good results, I’m eager to extend that to all major assessments, as I did in the spring, with later grades replacing earlier grades. I still need to figure out what revision looks like for my “deconstructed exam questions”, though.

Struggle: Not grading homework. While specifications grading allows forms of preparing for class to count towards a bundle, grading for equity adamantly opposes the idea — even just giving points for students completing the homework before class, regardless of correctness. (Which has been my policy for years.) Again, the argument is compelling — homework is formative, not summative; grading homework for correctness penalizes making mistakes in the learning process; there are many good reasons students can’t complete homework outside of class. But I still want students to take preparing for class seriously, so that once we get into class we can be an effective learning community, ready to engage with ideas. Feldman indicates late in the book that keeping track of homework submission can be valuable in pointing out effective and less effective learning strategies to students, and that awarding a small percentage of the overall grade to homework is not horrible. So I think I will compromise and continue to grade homework for completion only, but reduce the percentage it’s worth (maybe from 10% to 5%?).

Struggle: Bundles and modules and objectives, oh my! I’ll admit that I had to put specifications grading down for a bit and come back to it later once it got into specific examples of bundles. Ditto when I tried to wrap my head around deconstructing my usual assessments around course learning outcomes, as grading for equity describes. I got stuck on how I’d translate this to my elective. On reflection, it will take a lot of up front work, but the increased transparency will be worth it. I plan to use the “higher hurdles” approach from specifications grading, measuring hurdle height with the 4 point scale from grading for equity. I’m still not sure if I can achieve complete separation of learning objectives when an assessment covers several of them, grade book wise, so I may have to let that go for now and try separating those out more cleanly in the grade book in a future term.

There are other struggles, of course — grading for equity has me puzzling over my approach to grading group work, for instance — but these are the key ones on my mind as I piece my course together. I’m eager to continue my experiments with assessment and curious to apply what I’ve learned from my spring experiences and from these two books.