I take teaching introductory programming seriously, and I do my absolute best to be inclusive and encouraging in the classroom. But it’s hard for me to judge the kind of job I’m doing, and like most people I tend to focus on the things I get wrong more than the things I get right. So getting feedback from former students means a lot to me. Yesterday I got the following (slightly edited to remove identifying information):
I was one of your Python students a couple years ago and I’ve been meaning to send a data point for how well I think you handle newcomers to the programming world. When I took your course I was a music major who had a reinforced lack of self-confidence in math and anything computer related, but you were the first educator I ever had that presented these topics with the subtext that anyone can pursue these topics with the right interest and intention to practice. Had I taken this course in more of a “programming gatekeeper” scenario, I think I would have shrugged and moved on from it all.
I didn’t technically leave DePaul with a CS degree (stuck with music), but I found a love for programming, ended up a C++ developer for <company in location>, and I would not have started on this path without the way you presented the realm of computing.
I might not get everything (or on some days most things) right, but I do sometimes and for some students make a difference. That’s good to know.
Let me start off this post by admitting that I’m exhausted. Last week was the 2018 SIGCSE Technical Symposium, which is a long run of fun and exciting things that keep all of us who volunteer for SIGCSE busy and not sleeping nearly enough. Final exams for winter quarter at DePaul are just around the corner. And winter isn’t done with Chicago yet, so grey skies have rolled in again. All of this makes maintaining a positive attitude more of a struggle than it would be fully rested under blue skies.
Today I was a presenter at an event for high school women hosted by College Connect, an organization at DePaul that works to encourage high school students to go to college. At the event I was supposed to talk about careers in computing, and thanks to NCWIT and my college’s web page I had a lot of great things to mention. During the question session afterward, the College Connect organizer asked me to name a barrier for women in computing. I told her that confidence was a big problem, that women with high GPAs drop out of computing programs when men with lower GPAs stay. And I specifically mentioned the tendency of men in computing classes to ask questions and make comments as a way to show off, since it can contribute to the lack of belonging that women feel by eroding their confidence.
I came home from the event to work and the first thing I saw was a report about a study of technical recruiting sessions. The study found that the very phenomenon I was talking about this morning, men showing off via questions and comments, was something seen in recruiting sessions for technical companies. They also found all sorts of behavior that is highly discouraging for women (and frankly some men).
And my first reaction, in my tired state, was to be discouraged myself. Even if we’re successful in getting some of those women at the event today to major in the School of Computing and to complete their degrees, they might face the very same behavior I was warning them about when they go to interview. I want to believe that what I’m doing makes a difference. It’s just hard on days like today.
Most of the time this blog is about my personal experiences and not about broader topics. But this month’s Communications of the ACM had two articles that I think everyone needs to read, so I’m going to write a post pushing them.
The first is an article by Mark Guzdial talking about bias in student course evaluations. Because I’m at an institution that values teaching and because course evaluations are standard practice for evaluating instructors, I’ve spent a lot of time reading both my evaluations and the evaluations for people coming up for promotion and tenure. Mark makes some very good points about why we might want to re-evaluate the idea of student evaluations as a metric for teaching and also pointing out that doing so would be difficult.
The second article that caught my attention was one by Jodi Tims who is the current ACM-W chair. In it she talks about the idea that improving gender equity in computing needs to be an effort made by all people in the field, not just those organizations focused on the topic and most especially not just by women in computing themselves. Jodi makes very specific suggestions for what individuals can do, but I also urge everyone to join a more organized group focused on gender equity. It’s a tough problem, and tough problems need to be solved through a large collective effort.
Today is a cold, dark January day, and I most certainly didn’t want to get out of bed. I even hit the snooze this morning, something I almost never do. I spent the first 30 minutes of my day grumbling about how I had to go to work, until I reached my inbox and found this message from one of my Java students:
Professor Amber, I GOT IT TO RUN!
Thank you so much for the help! That was really satisfying getting it to run after numerous trial and errors. I hope you don’t mind me bothering you with homework like this. I am very thankful and happy you helped and got it to run successfully!
I exchanged easily a half a dozen emails with this student yesterday, and he was reporting back that he had finally gotten it done. And it reminded me that this is precisely why I get up on January days to go teach.
Although I teach very introductory programming classes where the focus is on the basics of how to program, I try as much as I can to share with students other issues that will be useful to them as they mature as programmers. We talk about object-oriented design as much as is possible with the limited knowledge they (and, let’s be frank, I) have. I discuss the importance of debugging and being willing to ditch a program that is poorly structured, even though most of their programs are too small to require such things. And perhaps most importantly I try to discuss how their choices as programmers make using the software they write either much better or much worse. Again, it’s hard to seriously address user interfaces in the classes I teach, but I think making them aware of it is crucial.
It always helps to have examples of poor interfaces, and I’m sorry to say that the systems we have to use at DePaul too often deliver in this regard. Most recently we had to switch from an internally-developed college advising system to a university-wide system. There are many things to hate about the university advising system, but let me just pick two from today:
- When I have a student listed on a page and click on a link to see their degree progress I have to re-enter their ID number. This is despite the previous page listing their ID number and the page being dedicated to them.
- When making an appointment with a prospective student, I have to know their home zip code to make the appointment. Seriously.
I miss the system my home college had so much. As in, I miss it literally every day. On the other hand, this system will provide me with endless examples of how user-interface designs can make what is otherwise a useful system feel horrible to use. I suppose that makes for many future teachable moments.
I’m fortunate enough to be at an institution on the quarter system, and one that starts early enough in September that by this time of year grading is a distant memory. But many of those I know aren’t so lucky. I was talking to my brother on the phone this weekend and the subject of his not-yet-finished grading came up. Always trying to make the best of things my brother started a Dr. Seuss-like rhyme about it. I burst out laughing and promised him that I would expand on his idea as a blog post. So I give you my tribute to Dr. Seuss started and inspired by my brother and dedicated to all those struggling with final papers, exams, and projects.
There they sit.
The final exam. The final project. The final paper.
Grade me, they speak. Grade me, they sing. Grade me, they suggest.
I do not want to grade I say.
I do not way to grade today.
I do not want to grade on the train.
I do not want to grade on the plane.
I do not want to grade in the house.
I do not want to grade with a mouse.
I do not want to grade as I walk.
I do not want to grade while I talk.
I do not want to grade before lunch.
I do not want to grade after brunch.
I do not want to grade in the sun.
I do not want to grade everyone.
I do not want to grade as I sit.
I do not want to grade even a tiny bit.
But my students wait for me.
So while I clearly disagree.
I will grade them all, one, two, three.
It’s been a particularly difficult quarter for me. Fall quarter is usually busy, but I’ve had two or three fairly significant service tasks added to my already full plate that pushed me into a bit of overload. What little research I’ve done is also on tough things like teaching programming and student retention, which at times can feel more discouraging than inspiring.
Luckily, twice this quarter I got notes from students that helped boost my morale. The first was a thank-you note from a student who recently graduated. I found in my mailbox when I finally checked it this quarter after a long summer away. His note is below:
The second morale-booster was a note that one of my programming students wrote on her final exam notes yesterday:
Obviously, reading these two notes is wonderful. But what is especially helpful for me is that I don’t recall doing anything special for these students. In both cases I think I was just doing what I normally do when I teach, and yet it so positively impacted these students that they wanted to let me know. When I get discouraged it helps to think that while I can’t make a difference for every student, I can help some.