This quarter at least part of Fridays are spent grading, since assignments for one of my classes are due on Thursday nights. So this morning I logged onto the course management system to download the submissions, and I saw this comment from a student:
I spent hours trying to figure out solutions for this assignment and I’m now a firm believer that programming is not for me. [...] I seriously dislike strings and lists and can’t wait for this class to be over so I don’t have to touch another programming language again.
To say it was a bad start to the day would be an understatement. As an instructor of introductory programming classes, I’m used to students deciding that programming isn’t for them. I know that programming isn’t everyone’s cup of tea, and I’ve learned to not internalize it too much. But the comment above bothers me. Partially it’s because I’ve told them to contact me after not making progress for more than an hour, a policy that is so standard for me that I call it the one-hour rule. Whenever students ignore that advice it makes me sad, since struggling too much in a programming class can be very discouraging. That’s precisely why I created the one-hour rule. But it’s more than his not having reached out for help. He’s a good student, someone who had a high grade after the midterm. It makes me profoundly sad when strong students, people who could be good programmers, get so unhappy that they don’t continue. I can’t help but wonder if there’s anything I could have done differently in the class that would have prevented him from turning away, because I hate it when for whatever reason I don’t reach them.
Although I didn’t think about the consequences at the time, overscheduling my summer has led to a dreary fall. I started out tired, which has left me ill-prepared for the rush that characterizes every October. I’ve dragged my way through the things I had to do, and being as tired as I am I’ve found myself focusing more on the negative than usual. The students who don’t listen, the colleagues who complain, the mini crises that populate every week, and especially the Academic Integrity cases have left me feeling drained.
So I was in for a surprise when I started talking with my mother about the students in my accelerated Python class yesterday. I’ve had some great classes before, including one who inspired me to write a thank-you note, but I hadn’t consciously thought about this group much this quarter. I had certainly recognized that they are bright, which is hard to miss when seven students attain perfect scores on the (not easy) midterm exam. But as I described them to my mother, I started to realize how extraordinary they are, and for more than their intelligence. I have nearly perfect attendance every day, and most of them show up with laptops. But I never noticed that they’re distracted by their computers. I can’t remember a single class in my entire 20-year career who has made eye contact so frequently and so consistently as they do. They’re engaged and interested, and perhaps most strikingly, excited by the material. We’re moving more slowly than previous sections, but it’s not because they couldn’t go faster. They just have too many questions to ask, and it means that we spend more time discussing the material in depth. Just thinking about them energizes me, which is precisely what happened during my conversation last night.
At that point I felt a bit like the person who walks past something beautiful every day but fails to notice it because her mind is elsewhere. I couldn’t believe that I had spent the entire quarter standing in front of a gift like that class without seeing what was in front of me. Now that I’ve finally opened my eyes I plan to appreciate every day I have left with them.
Part of the fun of remembering the 2014 SIGITE/RIIT conference has been in looking at the pictures that Jim Leone took and shared with me. I decided I shouldn’t be the only one to appreciate them, so this post is all about images from the conference.
SIGITE Executive Committee meeting
Richard Helps (BYU), Mihaela Sabin (University of New Hampshire) and Rob Friedman (UWT)
Randy Connolly (Mount Royal University), Richard Helps (BYU), Mihaela Sabin (University of New Hampshire)
Amber Settle (DePaul University), Terry Steinbach (DePaul University), Barry Lunt (BYU), Randy Connolly (Mount Royal University)
Rick Homkes (Purdue University)
Deborah Boisvert (University of Massachusetts Boston), Edward Sobiesk (USMA), Mark Stockman (University of Cincinnati)
Terry Steinbach (DePaul University), Arto Vihavainen (University of Helsinki), Amber Settle (DePaul University)
Terry Steinbach (DePaul University), William Wesselman (IIT), Maya Embar (IIT), Amber Settle (DePaul University)
Flavio Villanustre, VP Technology Architecture & Product for LexisNexis and HPCC Systems
Thanks again Jim for taking and sharing these photos with me!
Now that I’m beginning to emerge from the work hole that threatened to swallow me, I’m spending more time reflecting on the SIGITE/RIIT 2014 conferences. I wrote last week about the connection that being program chair made me feel to all of the work presented. But the conferences also made me realize that while it’s a ton of work, being program chair may be my favorite service gig ever. And there’s one big reason for that: I love presenting people with best paper awards.
I almost never have pictures on this blog, but this post requires some. In the first photo you see my program co-chair, the winner of the SIGITE 2014 best paper award and me.
In the second photo you see my program co-chair, the winners of the RIIT 2014 best paper award, and me. (Many thanks to Jim Leone for the photos).
What the photos don’t capture very well is how completely and utterly thrilled I was to be presenting these awards. The other program co-chair spent several hours laughing at me because I was so jazzed up prior to the plenary session in which the awards were presented. Having received two paper awards before, I can honestly say that I was more excited to be presenting these awards than I was to receive my own. To begin with, presenting people with awards is fun because they enjoy it, and sharing in other people’s joy makes me happy. But more so than with other awards, being able to present people with a best paper award is satisfying. You know, because you’ve read their paper and many (many) others against which it was compared, that the work is highly deserving. Being able to conclude the (perhaps overly) extensive review job that I did this summer by giving out awards to excellent papers made all the work seem worthwhile. Now I just have to try to remember the pain as well as the joy the next time someone asks me to be a program chair.
This week I’m at SIGITE/RIIT 2014 in Atlanta. I’ve been at the SIGITE conferences continually since 2010, but this is the year that I served as program co-chair. The work of putting together the program ate a large portion of my summer, and the exhaustion that I’ve complained about so much recently is directly related to that. In my exhaustion I have to admit that I wasn’t looking forward to attending the same way I have in the past.
Now that the conferences are taking place and I’m attending sessions and roaming through the poster session, I’ve discovered something amazing. I first got to know this work in July, at which point all of it was just text on the screen. My fellow co-chair and I shaped all the submissions into sessions, found chairs for the sessions, and set the authors to work finalizing their submissions. In the months between when we constructed the program and now, the memory of it faded a bit. As I now attend the sessions, it feels like a dream I had coming to life. Watching the session chairs and authors work together to present the work and seeing people stand by posters with incredibly familiar material is astonishing and deeply satisfying. None of the work is mine, but I feel an incredible connection to all of it. I’ve never been so engaged in any conference as I am right now. And I have to say that watching it spring to life is worth every minute I’ve spent.
For a very long time October was my favorite month. I think it started when I began at the University of Chicago in the early 90s, where the fall quarter didn’t even begin until October. The month meant fresh starts, cooler (but not cold) weather, and new energy. Even after I moved to DePaul where the fall quarter begins in September, October was still a happy time for me. Halloween is my favorite holiday, I love walking on brightly colored leaves, and while the amount of sun is waning it’s still bright enough for me to feel cheerful.
But somehow over the past four years, October has become the month of crushing pressure. It started when I attended the SIGITE conference for the first time in 2010, the same year I was first elected to the SIGCSE board. The SIGITE conference is always in October as are the SIGCSE board meetings, and traveling twice in a month automatically makes it stressful. Once I started on SIGITE conference organization and became the SIGCSE treasurer, the workload grew. Add in research projects, midterm exams, academic progress reports, and advising, and suddenly the month of October is a pressure cooker. Even the smallest additional tasks, like Academic Integrity violations or recommendations, is enough to make it feel like I can’t possibly get it all done. To be fair, I almost always do finish everything in October. But it’s draining, and with the stressful summer I had I’m finding it hard to maintain anything remotely resembling a positive attitude.
So I’m making a vow to try to find a way to make October fun again. I’m not sure that 2015 will be the first year I can implement this plan, given that we’re hosting the SIGITE conference in Chicago. But I will work to find ways to relieve the pressure or at the very least to be more prepared for the push. I want my favorite month back.
For at least the past decade my main teaching focus has been introductory programming. The language and context have differed as our curriculum and the courses I taught shifted, but I primarily spend my time teaching relatively inexperienced people to program. For the most part I love it. There is something special about being a student’s first programming instructor, which is partially why I think many of my students are so enthusiastic when they see me in the hallways or at events. It’s also a challenging enough task that I don’t ever find myself bored, which means I’m generally quite happy about what I do.
But I also have to admit that developing and teaching the accelerated Python course was a revelation for me. It has been historically unusual for me to teach people who have successfully learned a (different) programming language before, and there were a lot of things I didn’t anticipate about it. To begin with, they always get and laugh at my jokes, which seems trivial but is in fact a lot of fun. More significantly, they pay rapt attention to more esoteric things like a discussion of how Python treats objects and memory. They really want to know why it is that an assignment of a variable to a list acts differently than an assignment of a variable to an integer, and you can see it in their eyes and their body posture when you draw pictures of the representations on the board. It’s also easier to give them general hints on assignments and have them run with your vague ideas to produce working solutions. Perhaps more importantly, when they get working results they get genuinely excited about it. For example, I made a suggestion to a student about modifying a nested loop on this week’s assignment, and I got the following response:
Ohhh okay, thank you! I just sat and fiddled with it for awhile after getting it to work in order to fully understand what was actually happening after your hint, and when I realized that the range in the second for loop was getting smaller as the first for loop iterates I kind of exploded. That’s so coooool!
People learning their first language are a little too overwhelmed to experience giddiness rather than relief, so seeing a student so happy about discovering why and how his solution is working is such fun. I enjoy teaching novices too much to completely give it up, but having a class where I interact with more experienced programmers is a good balance and something about which I’m grateful.