Although the majority of my advisees are now undergrads, I still have an occasional graduate student advisee. As it happens, I met with one of my advisees this week who is in the Masters program in computer science. He and I have met multiple times, mostly before he started taking classes at DePaul, and I’ve enjoyed our conversations a great deal. During our meeting yesterday we talked about the algorithms class he’s taking. Like a non-trivial number of our Masters (and, frankly, undergraduate) students, he’s struggling with algorithms. It was clear in our meeting that he’d done a lot of soul searching about what had gone wrong and what he could do differently next time. But it was also clear that he needed a little reassurance, since this was the first graduate-level (e.g. not introductory) class he’d taken.

So I told him that a lot of students struggle with algorithms. It’s abstract and difficult, and it makes sense that people find it challenging. I also told him about my big failure as an undergrad, which was with architecture and assembly, not algorithms. That was the only class in which I failed a midterm. I did much better in the latter part of the class, but the poor midterm made it one of two classes in which I earned a B as an undergrad. I told him that struggling with one area of computer science doesn’t mean anything about your ability in the field. It just means that you have to work harder at that topic, as I did with architecture.

I think it had the intended effect, which was to encourage him in his efforts to pass the class, either this time or the next time he takes it. He wrote the following in an email after our meeting:

Thanks for today’s conversation. I honestly was a bit embarrassed and had a hard time to admit my experience in [the algorithms] class.

I especially appreciated your sharing your own experiences with your Architecture class, and other students’ experience with Algorithms.


The experience made me realize that talking about my failures in computer science can, at the right time, be something encouraging for others. I wonder how often computing educators do that. Whatever the answer, I think we need to do it more.