Computer Science Lectures are Failing

Introduction

After two and a half years of undergraduate computer science courses, my expectation of a lecture has 80% of students on their laptops with some portion playing games, another portion doing programming work for the class, and the last portion taking notes on the class. These students face off against the instructors who plead with students to ask questions and respond to the lecture, so they can gage some sense as to were the class is in following them. Often, a lecturer's questions are followed by a period of awkward silence or are quickly answered by one of the 3 students who are certain of the answer. Some professors have adopted a flipped classroom, but are met with few questions during class time, often filling time with a review of the content in the recordings students reviewed before class.

I have a lurking suspicion that professors are loosing ground on students' attentions as I witness them try to engage with students in class. My undergraduate classes are getting worse at teaching students, but why?

Taking Notes

Originally, I had the title of this blog post You Should Try Not Taking Notes. Given how much mindless copying I see in digital note taking, I suspected we as students have found a way to trick ourselves into thinking we are learning in lecture by showing ourselves that we managed to precisely recreate what was said in class. However, after reviewing several studies on note taking in the undergraduate classroom, this stance lacks nuance. There are studies demonstrating the effectiveness of note taking in recalling information (Austin Lee Carr 2004) and improving performance on tests.

Researchers have posited several theories as to why note taking improves recall of lecture material. Throughout my research of these studies, the role critical thinking to filter, condense, and prioritize information in one's notes play's a central role. One theory posits note taking as a two part process of encoding, wherein a student translates invisible ideas into tangible diagrams, and external storage, in which a student can search and review once the original lecture is inaccessible (Kiewra 1985). During a lecture a student must use critical thinking to encode and instructor's slides or oral presentation for better recall to take place. As note taking techniques have improved through the broader use of technologies such as digital stylus note taking and LaTeX, students have been able to get faster at exactly copying slides eliminating the need to translate or prioritize information. In essence, we have gotten so good at taking notes we don't even need to think about them. This change has largely unaffected the role of notes as external storage, but now that is the least important role of notes as all lecture material is available in abundance online. Additionally, without thinking, we have crippled the role of notes as encoding which they do better than ever by ironically not doing at all.

I posit another hypothesis as to why I suspect we do less thinking when taking notes caused by the increased consumption of short form video: Short form video's impact on prospective memory limits one's ability to to perform the background task of critical thinking about the content. Two studies (Francesco et. al. (2023) and Barton, Smyth (2025)) have found a causal relationship between scrolling on short form video and a decrease in prospective memory, or ones ability to remember tasks that they should be doing in the future. The increasing rates of consumption of this content may be driving ineffective notes.

It is an open secret that I do not take notes in any of my classes. I want to think about the processes described by the lecturer, try to find edge cases and make connections, and I care less about recording information to review later. Notes get in the way of what I want to do in lecture, so I don't do them. As an aside, I have been told that computer science is the most Google-able degree, which goes to highlight that the purpose of notes as a way to review can be supplemented or even replaced by the wealth of knowledge online. Maybe note taking is something that you should try doing less of.

Graded Attendance

In a discussion based class such as metaphysics or a McBride class a student's attendance meaningfully impacts the quality of the class because that student's contributions help others see the topics from new perspectives. In a Computer Science class, graded attendance is only a force of extrinsic motivation resulting in students using class time to do the things that they would prefer to be doing like working on other course work or playing games. Neither of these things are bad, but students should be free to acknowledge the fact that they are not going to be listening and not have to show up.

A class filled with 25 students who are all listening is better than a class filled with 50 students, 25 of whom are distracting the ones paying attention. I'll admit that I have been one of the distracters, working away at some programming project, but what am I to do if the instructor is forcing me to come? I have already paid for this class, that should be my incentive to show up.

Live Coding

To learn computer science, students need to put their fingers to the keyboard and implement. A student who has learned about Dijkstra's Algorithm, but has never written code using it has not learned enough to us it in industry. Coding practice makes simple ideas come more naturally and complex problems solvable, without coding practice one has not learned how to program. Live coding is a way for instructors to demonstrate how to code and give students patterns that they can replicate in their own code. Often students are expected to replicate the code shown during the live coding session as part of a larger project or a part of a mini programming assessment. Unfortunately, this usually means that students are frantically copying down character for character what the professor is typing getting none of the critical thinking that comes with programming. I have now heard many complaints that new algorithm students do not know how to code, but if we expect them to consistently copy code then I am not surprized they fail to be able to deal with simple bugs that do not come up in lecture.

I have given one live coding demo for students, where students once again exactly copied what I was typing. Their only questions were whether I could scroll up or down to see code that was off screen and not about what the code was doing. In a sense, live coding represents the worst case scenario for note taking because students are capable of exactly copying the notes with zero critical thinking.

Code written during a lecture should be provided beforehand to free up students to think about the code. Then, the medium of live coding can instead help students to focus on the order in which they should think about the code in addition to spacing out questions about different functions as they are built.

AI

Maybe I will write about how AI is destroying the CS undergraduate experience, but that will be for another time as it dramatically reshapes my degree. I will leave a few points for how AI has made computer science lectures ineffective.

  • AI allows students to cheat on homeworks reducing the value of class time to students.
  • Instructors using AI cheat students out of a high quality lecture reducing the value of a class for students.

Citations

Austin, J. L., Lee, M., & Carr, J. P. (2004). The effects of guided notes on undergraduate students’ recording of lecture content. Journal of Instructional Psychology, 31(4), 314–320

Barton, N., & Smyth, M. (2025). Context-switching in short-form videos: What is the impact on prospective memory? Memory, 33(7), 788–801. https://doi.org/10.1080/09658211.2025.2521076

Francesco Chiossi, Luke Haliburton, Changkun Ou, Andreas Martin Butz, and Albrecht Schmidt. 2023. Short-Form Videos Degrade Our Capacity to Retain Intentions: Effect of Context Switching On Prospective Memory. In Proceedings of the 2023 CHI Conference on Human Factors in Computing Systems (CHI '23). Association for Computing Machinery, New York, NY, USA, Article 30, 1–15. https://doi.org/10.1145/3544548.3580778

Kiewra, K. A. (1985). Investigating notetaking and review: A depth of processing alternative. Educational Psychologist, 20(1), 23–32. https://doi.org/10.1207/s15326985ep2001_4