In this episode, we talk with Colleen Lewis, Associate Professor of Computer Science at Harvey Mudd College. She specializes in computer science education and diversity issues, as well as is the creator of http://csteachingtips.org/, which we at the CS-Ed Podcast post about often.
You can find this episode’s transcription down below!
Listen to us on Apple Podcasts, Stitcher, Spotify, or wherever you get your podcasts.
You can also download the episode directly here.
Be sure to follow us on social media! You can find us on Twitter and FaceBook!
This conversation was a question and answer with Colleen. Our topics included: peer instruction, how she structures her lecture and class, how becoming a better and better teacher is a marathon, cheating on assignments, the pros and cons of splitting students based on prior experience, and where to hold office hours.
Colleen’s “something awesome in computer science” was another podcast, Modern Figures Podcast. It highlights the work of black women in computing. The audience is geared towards teenage girls interested in computer science.
Colleen’s Too Long; Didn’t Listen (TL; DL) was two tips. First, was survey your students and respond to that feedback. The second focused on how your teaching practices should allow for opportunities to see into student thinking and that’s really what active learning is meant to be.
Kristin: Hello, and welcome to the CS-Ed Podcast, a podcast where we talk about teaching computer science, with computer science educators, to learn how they teach and manage their classrooms. I’m your host, Kristin Stephens-Martinez, an assistant
professor of the practice at Duke University. And joining me today is Colleen Lewis, from Harvey Mudd College. Colleen, what is your rank? I don’t actually know what your full title is.
Colleen: Oh! Yeah, that’s probably the most interesting thing about me. No, I’m sorry. I’m an associate professor.
Kristin: Associate professor, okay, just double checking. And can you tell us what classes do you teach? How many students do you have? Let’s get to know you a little bit.
Colleen: Yeah, totally. So, Harvey Mudd is a STEM-focused (Science, Technology, Engineering, & Math) institution. We’ve got about 850 students total. I teach the second-semester CS (Computer Science) course, which uses Racket and Java. It’s kind of a breadth and a little data structures-ee course. That course tends to have like 150 people in it, sometimes split between two sections. I also teach a software engineering course. That’s a project-based course that students take in their junior year, and that, you know, sort of–teams of three to four–and they’re in the fall. I’m teaching that, and I have 80 students split across two sections. I also teach a Social Justice in STEM class. This is just a class that I co-teach with a friend for fun. And that one tends to have sort of 20 to 30 students, so we just meet once a week. It’s only one unit. It’s pretty chill, and we just read a bunch of stuff that should really make you mad. And then, hopefully for our students, they can figure out like, “Oh my gosh, mass incarceration! I need to know all the things about mass incarceration.” So, we hope that they can use the course as a–as a survey and overview, to then see what topics they’d want to dig into more.
Kristin: That’s awesome.
Colleen: Yeah. And we get to do cool things. Like, I’ve taught a writing course for first year students, not computer science writing. It’s co-taught by faculty across the college. And then, I’ve taught computer security. That might be about it.
Kristin: Alright, so, today’s conversation is gonna be a little different than past podcasts: where this is an Ask Me Anything, or more like Ask Colleen Anything. Q and A will go for as long as we feel like going for. So, we have collected a whole bunch of questions from mainly Facebook, and some people filled in the form that I sent out. And I also solicited some questions from people that I knew, that I was hanging out with at the time. So, of the questions that I listed in our Google Doc, Colleen, do any of them speak to you? Do any of them want–you–like you want to tackle first?
Colleen: Oh, you know–know. Mark Guzdial asked a question about how to do peer instruction, and I don’t know that I can answer that specifically, but I certainly am interested in talking about that space. It seems fun.
Kristin: Okay, alright. So, maybe one way to do it with peer instruction–the first question I’m always curious to hear, actually, is: what is your process for peer instruction? Both in the design of the questions, and how you actually do it in the classroom. Because, I thought I was doing peer instruction for like a semester, and then learned I was doing it wrong.
Kristin: And so, I’d love to, like, hear the actual explicit steps that you follow, and like maybe confirm to myself I’m doing it right, now.
Coleen: Yeah, I think, like many people, I don’t do a strict peer instruction. So, actually, I could talk about what is my practice in a really content-heavy class, like the second semester computer science course that I teach, like, what is the structure of my lecture? I can talk you through that, because I feel like that I’ve been iterating over sort of–over the last, essentially, eight years teaching that course, so maybe I’ll tell you about that?
Kristin: Oh, that sounds awesome.
Colleen: Okay, cool. So, here’s–the deal is: I use the homework assignments as real anchors. So, each of the homework assignments, in each of the parts of the homework assignments, enumerate the learning goals that I have for that assignment, and also enumerate any prerequisites for that content, okay? So, you need to understand, or you need to be able to work with arrays, one-dimensional arrays in Java, to be able to do this homework assignment. And this homework assignment is going to help you do blank. Okay, so, I use those homework assignments as anchors, and then I have two lectures that prepare, essentially, for each homework assignment. The lectures are 75-minutes each, and the way I set them up is in sort of 10 to 15-minute chunks. A chunk starts with learning goals. That, actually, is just a slide for students’ notes. So, it lists, in the next five to 10 minutes, here’s what you’re learning. But I use language that students wouldn’t understand before they’ve been introduced to those topics; so, I’m not using a textbook. So, this is my first introduction to the content for students.
Kristin: Okay, wait, real quick question: how long are your assignments? Like, how much time do you give students to do the assignment? And then, is this before you even release the document, or for these two pre-lectures? And like, what’s the logistics, in terms of the timeline, for the assignment?
Colleen: Oh, yeah. Good question. So, I give students about a week to do each homework assignment, depending upon holidays; and I’m assuming it’s taking between sort of 6 to 9 hours for most students to complete the assignment. And then I post the homework assignment as soon as I’ve got it ready. So often, before the last homework assignment is due–
Colleen: I want students to feel empowered to be able to manage their time. It’s going to be harder to do before they’ve seen the lectures, but, you know, if they’re traveling, or have an interview, or whatever, I want them to be able to get started on it early. And then you can imagine that homework is due on Tuesday, and the–the previous Tuesday-Thursday is the lecture content that prepares for that homework assignment. So, probably after Tuesday, they can do most of the homework assignment. And then, after Thursday they can do all of the homework assignment.
Kristin: And then they get another week to finish it?
Colleen: Yeah. So, from Thursday to Tuesday, Tuesday at midnight, or whatever.
Kristin: Okay. So, they basically get the weekend plus a couple days to get it done.
Colleen: But really, they can, you know–one homework assignment is due Tuesday night, and after Tuesday’s lecture, they have most of what they need to, you know–they could probably do half or two thirds of the assignment.
Kristin: I mean, do they actually do a half or two thirds?
Colleen: I think it really varies by student. So, you know, when I was a college student, my best friend in college really structured our life. She was like, “And then we’re gonna go to office hours, and then we’re gonna study for this class and we’re gonna do this homework, and then we’re gonna go to this office hours, and then we’re gonna have lunch–” And I was like, “Oh, great.” I had none of those study skills myself as a college student, but I think some of my students are like my best friend Irene, and they have those study skills. And other ones are more like me, where I need additional structure imposed upon my life.
Kristin: Okay, so that sounds like these assignments are not that big since they’re only really, like, one week out. Another thing that I’m curious about, which we might end up cutting–but I’m curious anyway, because this is a tangent–how is it–if you release it when they’re ready–I’m assuming that means you’re potentially releasing it before the students know everything they need to know to do the assignment–and is there–do you have to get student buy in for that? Because I feel like sometimes–I’ve been warned not to release an assignment until the students can actually like accomplish it, because otherwise they’re just gonna get frustrated at me.
Colleen: Oh, yeah. I think one way to think about it is that every part of my homework assignment lists the prerequisites for that problem. And so, even if I release it in advance, they can still skim through and see if they do have the prerequisites for any of it to dive in. But no, I’ve–I’ve never had students pushback that I released a homework assignment too early. “Colleen, you are too prepared for class today!” That’s not a thing they say.
Kristin: Yeah, well, I think it’s more they would complain that when the assignment was assigned, they didn’t know how to do it. Which is not fair. Like, that’s how I think a student would frame it.
Kristin: But I think your–your response of having those prerequisites, probably, is a way to easily get around that. And I have not worked on my assignments enough to be able to add those yet.
Colleen: And–and I did that over multiple semesters, right? So, one–one, maybe, whole year, I went through and added learning goals and prerequisites to every homework problem. And then the next year I went through and I added learning goals to every lecture slides–every set of lecture slides. So, I think that there’s a lot of narratives around these sort of rock-star, super teachers–that, you know, every semester–they’re revamping their whole course. And I’m like, “Oh, there are a lot of things that are broken about my course.” And I want to bite off a manageable chunk that, I think, is achievable for me– During this semester, and is probably like, the most negatively impactful–like the biggest problem I need to fix–let me bite off some piece of that and try and fix that.
Colleen: But I’m not “throw everything out, restart everything,” like, it’s a marathon, not a sprint.
Kristin: Yeah, it’s a marathon. This coming semester, I’m teaching two different classes for the first time. One is my 101 class, which I’ve done multiple times, the other one is Foundations of Data Science, which has been taught, but I’m revamping this summer. And so, I’m like–I’ve told all of my head TAs that are coming back–we’re just taking the spring version of the class for 101, and rinsing and repeating, like we’re copy-pasting. Because all my attention is gonna be on this other class that I’m like redoing, right now.
Colleen: Yeah, and I think it’s upsetting, because I would love everything to be perfect, but things are sometimes gonna be medium. And I think the–I don’t know–the trajectory I want to be on, is that every semester, every year, I feel like, “Wow, I’m getting better at this job.” And it does make me feel embarrassed about how bad I was at teaching, particularly, particular concepts in my early semesters. But you know what? I’m getting better. And you know? And I’m not making such huge changes–that there’s huge dips, like, “Oh, I really screwed that up, and now it’s worse than my first semester.” It’s never gonna be as bad as my first semester teaching.
Kristin: Yeah. Another thing that I also tell myself is most of the students did fine last semester. So, if I do the same thing this semester, I can’t really screw up that much more.
Colleen: Yeah, yeah, yeah. I think that perfectionism in teaching is something that we don’t talk enough about. And I think it puts a lot of pressure and stress on folks, and particularly then, it makes it harder to respond positively to student feedback. So, I think that being open to student feedback is one of the things that helps me stay on a trajectory where I am improving as a teacher. Sometimes there are–students are gonna give you feedback, or you just want to use like a lot of profanity–
And call it a day. But even–when even in that feedback, I think, sometimes there can be some core that can help me improve as a teacher. So, the way I think about it now is: if I tell them this, “If you think I don’t care about my teaching, and care about your learning, I would–if you told me that–I would be offended.” Do you know what I mean?
I mean, that’s really core to my values, is caring about your learning. But, if you think I’m the worst educator, literally in the world, like, that’s fine. I–I identify as an educator who cares, not as a perfect educator. And so, the extent to which you can tell me ways in which I’m the worst educator ever–like that’s probably going to help me grow. And I think, particularly in academia, there’s not a lot of opportunities to get feedback. Like, my colleagues are like, “Colleen, great, you’re doing great.” Do you know what I mean? Like, they’re just like, very encouraging and supportive, but it doesn’t provide the–I think–growth opportunities that that you would get in industry, or that–at least, when I worked as a software engineer, people were pushing me in particular ways to grow. And I don’t feel that, but my students are willing to help me really grow and improve. Which is awesome. They’re like, “Colleen. That was a hot mess,” and I’m like, “Oh, I’m really sorry-slash-please tell me more. Like, what was so bad about it?” You know?
And I think if we’re not–if we–if we have spent so much time preparing that, then we can’t respond to feedback where students tell us something was really a hot mess, that I–I don’t think we can be on the right trajectory. That’s sort of my take.
Kristin: Yeah, I feel like what I need to do is I need to hand you my evaluations, and then have you translate for me. ‘Cause I–
Colleen: Oh, yeah. That’s also one thing: is you should literally never read your own teaching evaluations. I’m like, “No way.” Do you know what I mean? Because, say you read my teaching evaluations and you’re like, “Oh, Colleen.” And people are digging the–like your enthusiasm–and people are digging this homework assignment, and two people really hate you. Like, I feel like–I’d be like, “Oh, okay.” You know, like–I like–I think it’s easier when someone when someone else filters it for you.
Even–even if they’re overstating how negative those particular students are. I think that you telling me, “Oh, Colleen, two of your students hate you,” would–would stick with me for less time–than their actual comments about how they didn’t like my clothing or whatever.
Kristin: Yeah. So, who reads your evaluations for you? Do you have someone that reads them for you and summarizes them?
Colleen: Yeah, sometimes I have my husband read them, but a lot of us at Harvey Mudd will swap.
Kristin: Okay. Maybe I should institute that–ask if anyone wants to be my buddy on that one. Like, help me read these without taking it personally.
So, I just realized we went on a complete tangent from our how to use peer instruction.
Colleen: Yes, but I do want to tell you about, like, a little bit of a view into what my classroom looks like. Because I think–I think the key piece is that it gets me feedback about what students are understanding. So, I have a slide that lists my learning goals, and then I try and teach them something–some small nugget that I’ve listed in the learning goals. And then, I have them do some task or explain a thing to a buddy, such that if that explanation went well, most of my students are going to be successful on that task. Sort of reviewing, or, you know, demonstrating competency with that new skill. More often than not, that is not the case.
So, as they’re working on that task, I can wander around, see what common mistakes students are making, see ways in which my question was just flawed. So, I was trying to assess their understanding, but it actually was too confusing. And then, what I do is: I print out my lecture slides for myself and I take notes on them during class. That’s like, “Oh, this question was super-poorly worded.” Students thought I meant this, but I meant that, or here were four student common misconceptions that came up, and actually, we had a super fruitful discussion, so like, this one was great. And so, while they’re working on something, I can wander around and be annotating my notes, so that, literally, the two hours before class the next semester, I could be like, “Oh no, this says hot mess on this set of slides, like, I really need to revamp this.” And so, I think it gives me this opportunity to get insight into students’ understanding of a topic and improve semester after semester. And sometimes, it’s so bad that I will go home and make a video that I composed to be like, sheepishly, “I’m very, very sorry. That was very bad.”
Kristin: When you say learning goals, do you mean like a single statement, like one-dimensional arrays? Or do you mean more of an action statement, of “know how to use one-dimensional arrays in the context with strings”? Like, what is the level of detail that you mean when you say learning goals?
Colleen: Yeah, I’m not super consistent in my learning goals, but I–I try and make them–sometimes, actually–will make them facts, and so students know that. You know, classes start with a capital letter. Students will know that a constructor is a method with the same name as the name of the class, and you call it using the keyword new, like that might be a learning goal.
But I–I you know, like, sub-accreditation agency is not enforcing some, like, strict ontology of my learning goals. So, I feel comfortable that they’re a little bit heterogeneous in their content.
Kristin: Huh. Yeah. I think for me, I was just checking to see if my learning goals and what I have is on–on the first one of the first slides–on my slide decks for each day–is like what we’re learning today basically. And then, I have up to four bullet points in there, and sometimes it’s super simple, like sets, and other times it’s a little bit more of a convoluted state, longer statement, of like what we’re going to learn today.
Colleen: Yeah. So, since my learning goals are broken up by sets of slides, one semester I went through and added learning goals through for the whole lecture. But that’s 75 minutes–I think–was pretty hard for students to navigate. So, I print out lecture notes for students, and so then during office hours, I would see them trying to thumb through it. So, it’s like, “Oh, well, slide one says we’re covering sets today, but like, where in here are there sets?” And so now, I am more consistent, about every 5 to 10–oh, I’m sorry–15-minute chunks has like, you know, parallel structure that has one word or a few words that are the topic, and then a list of the learning goals. And so, the word might be set, and then it says like four properties that I want them to know about sets.
Kristin: So, peer instruction. We still haven’t finished talking about peer instruction. So, you pose the question to them, they answer it. Do you follow the normal process of, like, you look at the distribution and so on and so forth?
Colleen: Yeah. So, one semester I was better about doing peer instruction, and like, using the clickers, I found that I was inventing my own questions. And so, I didn’t always have good multiple-choice questions to come up with that did a good job of having distractors and all that jazz; and it–it made it harder for me to ask coding questions. So, actually, for coding questions, what I would do is: I might teach them something, and then want them to practice writing code, and so: they would click A when they got started, B when they had finished writing the base case, C when they had finished. So, sort of these–these checkpoints along the way, that also embedded hints, but then allowed me to monitor pacing.
But I think, like, the–the strict structure of, you know, ask a question, have people vote individually, have people discuss, have people revote as a group, then do a whole classroom discussion, I–I think that there’s reasons that if you were adopting some peer instruction questions that already exist, just like, go for it. If you’re trying to take a course that doesn’t already have peer instructions available, then hopefully we can add just a link to the–that peer instruction in CS. Is that what the URL is? I don’t know–well there’s a URL where you can get tons of peer instruction questions.
So, if you were inventing your own, I actually would say you wouldn’t be ready to do peer instruction in a new class. Say you’re teaching databases, and there aren’t databases ones; I think you would want to start developing multiple-choice questions over the course of a semester, knowing that you wouldn’t have enough to do a full peer instruction. And that’s fine, but in that course of that first semester, start getting better at writing these database questions, you know, so that later on, you could do a fully, peer-instruction sort of course.
Kristin: Yeah, for peer-instruction, I think, I’m very good at writing some kinds of questions, like especially: “What does this code output?” questions–it’s because that’s what I did as my dissertation–but I definitely–it did not occur to me that it’d be harder to write other kinds of questions until I had to sit down and write out, “Alright, what do you think X is?” And then trying to come up with distractors was so much harder, and I had to go to my colleagues and go like, “What is a good distractor for this question?” And they were always able to come up with something useful.
Colleen: Yeah. You know, I’m working with some AP (Advanced Placement) CS Principles, and AP CS-A teachers, and we came up with a long list of non-coding strategies that we could have for students, of you know, “Predict the output,” you know? Have students look at solutions, have students compare code, compare code in their new language to previous language, revise code, modify existing code, to encode scavenger hunt, comment code, identify a bug and code, develop a catalog of bugs that they’ve seen, tinker with code, like, I think there is a lot–there’s a lot of options there, in terms of like, things other than predict output.
Kristin: Yeah. This is just another moment of–becoming a better and better teacher is a process, and it’s a marathon.
Colleen: Yeah. Turns out.
Colleen: I think if you’re not embarrassed about how bad you were as a teacher when you started, you’re like, doing it wrong.
Kristin: I think I did okay as my–for my first three semesters.
Colleen: Yeah, I–I think that you’re not improving enough, if three semesters from now, you’re not embarrassed.
Colleen: Do you know what I mean? Because like, you should be like, in another three semesters, or another three years, you should be a lot better. You should be a much more effective educator, and just like, I think that should be the goal: is that you’re just continuing to grow in that way.
Kristin: Yeah, maybe–maybe in another three semesters, or three years, I’ll probably be like that. Right now, I’m just trying to figure out how to do this whole teaching thing. Without working every weekend for free.
Colleen: Yeah, and it’s not–it’s not that you were bad in your first three semesters, but your goal should be to be getting better, such that, you can see all the weaknesses you had when you started. And–yeah.
Kristin: Alright, let’s try different questions, since we keep, like, veering off into very interesting tangents, but I feel like we’ve mostly answered the “How to use peer instruction” question.
Colleen: That’s legit.
Kristin: Any other ones look interesting to you?
Colleen: I’m up for whatever.
Kristin: So, tell me more about the pros and cons of your Black versus Gold system. When I heard about it–is, I kind of like, gave it a bit of a squinty eye, just because I’m not a huge fan of splitting students based on prior experience, because of the whole potential of students, then deciding that one group must be better than the other and acting accordingly. And that’s–I’m not a fan of such cultures.
Colleen: Well, yeah. Certainly, if you if you get some sort of like, elitist, or like, bad-mouthing of other sections, that gets created within your institution, like, you have to look for negative consequences. But I think the extent to which every student deserves the opportunity to learn computer science, and a course that’s designed for their previous experience level.
So, at Harvey Mudd we have three different levels: students with no experience, students with a little experience, and students with a ton of experience. So, the students with a ton of experience take two semesters in one semester, they actually then aren’t allowed to take a computer science course the spring of their first year, so they aren’t getting ahead. And then the students with no experience and a little experience, they take the same exams, they have access to primarily the same homework assignments. But the students who are who have a little bit of experience can learn this stuff more easily, because they’ve already been exposed to a lot of the ideas, and our strategy there is: we want all of these students with a little and no experience to enter the next class–that’s the one I teach–at about the same level.
And so, what we do is–instead of just taking students at two different levels, and both teaching them and–and then, they’re, you know, and plus zero and plus then X, or whatever they came in with–we take the students with a little bit of experience and we teach them something that they wouldn’t see until an upper division CS class.
Once you get to the upper division courses, it’s a mix. You might have a sophomore in there, you might have a senior in there. That type of–different levels of prior experience is super normal at that level. And so, the goal is to teach them something from one of those courses that’s not going to confer an advantage in the second semester course.
We still have the problem at Harvey Mudd, where that second semester course is the first time that they see Java, and so students who had a little experience–maybe they took AP CS-A in high school–but weren’t ready for the super-advanced, condensed course, did they come to my class, where half the students are learning Java, and they already know Java, and they’re–that second summer semester course is just easier for them? And so, what I do to address that? Is that–if–if you already know Java, I post the lecture slides in advance a few days before class, and I say, “Oh, hey, if you know this already, just fill out this online form and I’ll give you credit for attending class. You’re always welcome to come, but feel free to skip these days,” and I can spell those out in advance.
You know, I did a study at UC Berkeley, that has a similar problem, where the second semester class, their data structures course, is the first time that students see Java. And there was a narrative in the department, that like, “Oh, women do just as well as men in the intro course, in the CS1 course–or maybe a CS 1.5, if you want to be more exact–but in data structures, women are doing less well than men.” And–and people stopped there. There was just, like, “I don’t know what it is about ladies, that they are just not as good at data structures.” But there wasn’t–that it was taking some demographic variable, and treating that as explanatory for their performance, and for this relatively odd performance where they were doing fine in the intro course, but worse in the second semester course. So, what we looked at is: over the course of seven semesters, we found that, actually, whether or not students had seen Java before they take that second semester course predicts their course grades. And so, actually, if you control for whether or not they’ve seen Java, before taking the course, there’s no gender difference.
And so, I think it’s really important that we’re staying attuned to these various courses. In some of my other research, we interviewed students who were in a highly competitive enrollment environment, where they had to apply and have a grade like–the narrative was that they had to have a 4.0 in all the intro courses to get into the major. And there, students explain that students would retake an intro course even if they didn’t need to, so that they could 4.0 it. As the lingo. And then, what they–what students who didn’t have prior experience would explain is that–that course gets calibrated to those students who don’t actually need it.
And so, this course that’s quote-unquote “designed for intro students, or for students who have an experience–haven’t had experience with CS” then becomes super difficult. So, they explained, “It’s like you’re taking an intro language, like human language course, but most of the class are native speakers.” You know, there’s no way that the teacher is going to customize the course in a class of native speakers to you, who’s just first learning that human language. So, I think it creates huge problems. If you’re not separating students out by experience.
I’ve seen it done in creative ways, so we are able to throw faculty at it, so that we have different course offerings. But I’ve seen it in another institution, where if you don’t have experience, you come to every Tuesday lecture, and every Thursday lecture; if you have experience you only come to Thursday lecture. And that way you can have on Tuesday, community building activities, where it’s like, if you don’t know programming, and you haven’t seen this stuff before, and maybe you even think it’s a little bit scary, you are in the right place. Everyone in this room is in that boat, and plenty of you will become computer science majors. So, I think there are really creative ways of creating that cohesiveness and sense of belonging for students, even if you don’t have the faculty resources to split out by experience level.
Kristin: Oh, that’s an interesting thought. For our 101 class, we mainly just tell all the students with a certain amount of experience to just like, go take that next class, don’t–don’t stay here.
And then for those students who have some experience, but the next class doesn’t quite make sense, I’ll tell them, “You’re going to be bored, and I apologize. But at the same time, I don’t apologize, cause this class is not quite for you.”
Colleen: Yeah. Yeah, exactly. And I think that mindset is important, so that you don’t end up sort of auto-tuning the course to their experience level.
Kristin: Yeah, I think that probably, for me, it’s a little bit harder because it’s–it’s–when the mean is skewed, but you’re not aware that it’s skewed, you’re going to start shifting the teach towards the mean and instead, I am trying to focus on just like, “Do you understand these core concepts? And this is my list of concepts, and I don’t deviate from that.” I probably don’t do it super well. I’ll get better at it.
Colleen: It’s tricky, right? You know it, because you do really want to be adaptive to your students and respond to their needs. But not thinking about the ways in which we’re creating structural barriers for students who haven’t had high school access, or–and maybe their high school did have a AP CS, or CS courses, which is more likely to be at affluent high schools–but they might not have been encouraged to participate in those courses, even if their high school did have those because of various demographic variables.
So, based upon their race or gender, they might not be encouraged to take those courses. And right now, across the country, they’re primarily opt-in. And so the role that that parents, and guardians, and school counselors, and teachers play, in encouraging students to take those courses, is really key.
Kristin: Yeah, I think what also helps for me, at least, is I always invite the students, after the exam, to make an appointment with me for 15 minutes, to talk about how the exam went, if they did not go the way they–they thought it would go. And so, connecting to those particular students that are clearly struggling, but also trying, because a student who makes an appointment with me, and then comes to my office–which is always a scary thing to do, because professors are scary–is clearly trying.
And when I look through their exam, and try and understand how things went, it’s almost the same spiel that I give them every time. But it connects me with, like, this is the group of students that this class is for. My–my students who just like, sail through with an A, like, those are not the students that I’m really quite gearing this class for, is how I try and focus it.
Colleen: Yeah, I think those one-on-one moments–when students who are struggling in the class–are really key to helping understand, “What is the complexity of this content that I might not be appreciating?” The other thing I do to get a lot more students to attend my office hours is I hold them in the dining hall, or I hold them in a café, or I hold them in a computer lab. So, I try to hold them in public places so that students could get to my office hours an hour in advance, and then I just show up, or students could leave my–like, stay in my office hours, and I could leave when they end.
And so, I think that seeming more, like, their space is really key for getting students who would be intimidated, potentially, to like, knock on my door, look into my office hours, and having conversations with me.
Kristin: Yeah, I’ve been–I’ve been thinking about that suggestion that you’ve given to me. I’ve heard you’ve said multiple times at this point, and I think for–maybe what I’ll do is–I’ll do like an A-B experiment, where like, oh, I usually have two different, one-hour sessions during the week, and I’ll have one in my office, and I’ll have one, like, farther away somewhere, just to see if students will attend more if it’s a public space. The first–I’d have to figure out where that makes the most sense. I’d probably have to ask my TAs–just because, to most of the TAs where I am, is like, so far to them, like it’s so far away, and I’m like, “Yeah, I’m on the main campus.” I feel like I can’t get any closer but, okay.
Colleen: Yeah. I think the location matters, and then like, the publicness of it matters. And I’ve been really happy holding them in the dining hall, so at Harvey Mudd, we have just one dining hall. And I find that students will stop by for a 30-second question. And it feels so efficient, because like, a 30-second question over Piazza takes way more than 30 seconds, but a 30-second question in the dining hall, like, I will try to get them to sit down and chit-chat with me, joining me, do you know what I mean? Just because I’m like, down to hang out and get to know them better. But none of that would be able to happen over Piazza. And I can, like, address their need super quickly.
Kristin: Okay, maybe I’ll talk to my TAs and ask them, like, “Where does it make sense to have some public space?” Because–yeah.
Colleen: Yeah. And our dining hall lets people come in, even if they’re not eating. So, I just sit near the front door, so that even if students aren’t swiping in to get a meal, they can come and meet with me.
Kristin: Suppose you could give just one tip to the CS education community, what would that to be?
Colleen: I think, survey your students. And, I think–when I survey my students, and I’m getting feedback–sort of separating out, so that I am actually welcoming of feedback, you know, that if they tell me I’m terrible, it’s–it doesn’t disrupt my core value of being an educator. Who cares? Because I think the extent to which we’re surveying our students, and being responsive to their needs, it can just help us identify opportunities for new inclusive practices that we should be adopting, for seeing problems that we didn’t know were–were happening, that we really would like to nip in the bud. So, I think it’s like the teach a person to fish strategy is serving your students.
And then–this one is also related to a current NSF (National Science Foundation) project I have–so, I’m working with the Computing Research Association, they have the Center for Evaluating the Research Pipeline, or CERP, and they offer, for free–to institutions–the Data Buddies survey. So, it’s something like a 30-minute survey, but your students take the survey, and then you get a department report that compares how your students’ responses differ from other institutions that are similar–so, other PhD-granting institutions–your students actually have lower self-efficacy towards computing, and so that–that survey can then say, “Oh, I should like, ask some students about that, and see what changes I need to make within our culture, and our classrooms, and our curriculum to try and improve these patterns.” So, I think surveys–survey–survey your students, and NCWIT also has an experience of the major survey that you can use for free. But, I think you need to be getting feedback from your students and then acting on that.
Kristin: Okay, so let’s start closing out, where we’ll talk about something awesome about computer science, where our guest shares something, or someone, from computer science they think is interesting or awesome, though maybe not necessarily as well-known.
Colleen: Yeah. Maybe I’ll give a plug for another awesome podcast. So, the Modern Figures podcast–so people probably know the movie Hidden Figures. And that’s celebrating the accomplishment of black women in the work at NASA, and the Modern Figures podcast is celebrating the work of black women in computing.
So, one–one person who hosts that podcast, Kyla McMullen, is super rad, and she does this stuff that I like to tell students about. So, working with 3D audio. So, the idea is: she works with doctors–and I’m sure that I’m screwing this explanation up in particular ways. But as surgeons are learning to be surgeons, it’s actually pretty complicated to get practice, because you need real humans. And so, they are able to create virtual environments, by using 3D audio–to reconstruct operating theatres. Is that the right word?
And so, Kyla McMullen collaborates with doctors and medical schools to do this work. And I think that that type of work–that’s at the intersection of human-computer interaction–and partnering for huge social implications, I think is really cool.
And it’s a different audience, so their audience is sort of teenage–so, that might include college students–but sort of teenage girls who are–who might be interested in computing.
Kristin: Ah, okay. Yeah. So, it’s not–I’m not quite the demographic, but it’s a demographic–
Colleen: You’re–you’re–they’re not going to give you teaching advice, typically.
Colleen: But they are gonna be super inspiring. So, I–it’s–it’s not designed–I’m a white woman in my 30s. It’s not designed for me, but I still really enjoy it.
Kristin: Okay, maybe I’ll–I’ll add it to my queue, and try and find time.
Kristin: Alright, last part. So, TL;DL, Too Long, Didn’t Listen. What would you say is the most important thing you would want our listeners to get out of our conversation? Like if–if our listeners decide that they don’t have time to listen to the whole thing and they’re just going to skip the last five minutes. What do you want them to to hear.
Colleen: Okay. Two quick things: you should survey your students and respond to that feedback to try and identify problems in your context; and the second one is: your teaching practices should allow you opportunities to see into students thinking, to see what mistakes they’re making, to see where they’re misunderstanding you, to see where your explanations are bad. And so, a lot of active strategies, “active,” quote-unquote, learning strategies provide that insight into student thinking that can really help you improve your practice.
Kristin: Awesome. That’s–that’s a perfect soundbite.
Kristin: So, with that, thank you so much for joining us Colleen.
Colleen: Yeah, awesome.
Kristin: And this was the CS-Ed Podcast, hosted by me, Kristin Stephens-Martinez at Duke University, edited by Susannah Roberson, and funded by a SIGCSE special project grant. And remember: teaching computer science is more than just knowing computer science, and I hope you found something useful for your teaching today.