November 20, 2022

Lectures aren't for listening to. They're for re-teaching.

Lectures seemed useless to me: I usually fell asleep in lecture, and when I didn't, I took notes on slides I didn't understand, in a notebook I'd never open again. Here's the fix — how to actually leverage lectures.

For starters, I absolutely hated classes in my undergraduate. In fact, I still hate classes. This is mostly because I found 20 weekly deadlines — across homeworks, projects, labs, etc. — stressful. I realize now in retrospect that this was aggravated by another serious problem: I was sitting through hours of lectures and labs, furiously taking notes that I didn't understand or would never revisit. This created a dual problem: I (1) not only lost the many hours of my day, spent in lecture halls, but (2) I also felt drained at the end of the day. There was a third small issue — I perhaps felt somewhat accomplished after taking a dozen pages of notes. I didn't need to work more after that, right?

Lectures and talks don't always need to be this way. In industry now, I have the fortune to be able to pretty aggressively cull meetings I don't find useful. I decline meetings without a clear purpose and skip talks that don't interest me. Despite this, I still end up with maybe 3-4 hours of "lecture"-like environments several days of the week — either I'm learning from a speaker or sitting in a large group meeting. Despite this, I do find those several hours very worthwhile. This self-selection mechanism has an important implication for all the talks I do attend: I know in advance what I'm attending the talk for.

Note: There are a multitude of resources that teach how to take notes, so I won't cover that here. Instead, I'll cover the tactics beyond notes that make lecture much more useful. Your mental model and ability to relate different concepts can make or break your digestion of lecture during lecture itself.

🔗Find out why this topic is important.

Some of the most popular lectures in my undergraduate classes were review sessions. We all knew in advance why this lecture was important: It would in theory cover exam material. We could apply this mentality to every lecture—that every lecture could be on the exam—and instructors certainly leverage this. However, I personally find this trite to the point of ineffectiveness.

Instructors also know this and try a number of techniques to mandate lecture attendance for a grade: iClickers to track in-lecture poll participation, Google Forms for attendance, and a myriad of other techniques. These techniques all fall in the first grade-boosting bucket of importance. However, I would separate this from a second bucket of importance: why this topic is important. There are several ways to determine the importance of the topic and how it relates to the rest of the content:

  1. Skim the introductory paragraph in advance. The goal is specifically to identify the motivation for that lecture. Take just a few minutes to read the introductory paragraph of the lecture notes. If notes for your semester aren't available, find notes from previous semesters. If notes for the course aren't available, search for the topic online.

  2. Go to office hours and ask the instructor for the motivation. I'm sure instructors would enjoy answering a higher-level question like yours, "What is the motivation for topic X, and how is it related to the course topic Y?". At the bare minimum, your instructor should be enthusiastic about and understand the importance. For example, the first note introduces "Propositional Logic" by saying this lecture introduces notation you'll need later on. However, after discussing with the instructor, you may find a broader motivation: This particular course trains you to form rigorous arguments and poke holes in incorrectly-built arguments. As a first step, you need a way to translate arguments into math. This way, you can easily identify argument flaws by recognizing a mathematical pattern.

  3. Skim the note for references to other notes. The last resort is to skim the entire note and see which other topics it references. Understanding how the different topics interact can help you establish the topic's importance on your own.

For an example of a motivating example in an introductory paragraph: the "Stable Matching Algorithm" note opens with the following, which states that this lecture simply introduces a new problem to apply what you've learned, to:

In the previous two notes, we discussed several proof techniques. In this note, we apply some of these techniques to analyze the solution to an important problem known as the Stable Matching Problem

Note: The examples in this post use notes from the course Discrete Mathematics and Probability Theory (CS70) at UC Berkeley.

Since we don't have the luxury of picking lectures we're interested in, the least we can do is to determine why the lecture is needed at all. Do this as often as you can, so you understand the relationship between what you're learning today, with everything you learned previously.

Note: It's worth noting that a common piece of advice is to read the lecture notes in advance. That way, you go to lecture with question in hand. This is certainly ideal, but it's a little too idealistic. I often didn't have time to do this, so instead of recommending a 2 or 3-hour pre-lecture commitment, I'm instead recommending a short 5-10 minute pre-lecture skim.

In addition to assigning a purpose to every talk, I also found that my approach to attending talks has completely changed. The key idea: Listen as though you're going to re-teach lecture.

🔗Ask "How would I teach it?"

Throughout lecture, actively ask yourself: "How would I teach this?" This forces you to realize when you don't truly understand the lecture. An even easier litmus test is: Prepare a response for your friend, who asks "What did they cover in lecture today?" Instead of preparing a 30-second response, ask yourself how you would spend 10-minutes summarizing lecture. This forces you to add detail and explain ideas rather than mention topics. In preparing to re-teach lecture, use the following tactics to maximize the cohesion of your summary:

  1. Understand the takeaway first and foremost. The most important time to do this is when you're lost in a proof. It's okay to be lost, and don't get hung up on line 2. Try to determine how this proof is related to the rest of the lecture. Knowing the takeaway is far more important. Once you've established the takeaway, understand how this fits into your outline.

  2. Anticipate the next step or concern. Again, especially during a proof or a multi-step solution, try to anticipate the next step. This is precisely what you'll be doing on an exam or for a problem set, so might as well practice here in lecture. Granted, you're learning the topic for the first time, but even if your guess is wildly off, providing any guess at all will improve the stickiness of the actual next step your instructor takes.

  3. Organize a hierarchy of topics for that lecture. As lecture progresses, construct a written or mental model of the lecture's outline. Fortunately, if your lecture is accompanied by lecture notes, the notes already provide a basic outline. This gives you a better idea of your misunderstanding: Is it just an example proof? Or is it a key idea for understanding all of lecture? Just knowing where you are in lecture can make a big difference in your confidence. Feel free to modify the outline to your liking; the more you modify the outline to make it your own, the more understanding you demonstrate and the more it sticks. For example, I would use the following outline, slightly distinct from the original Stable Matching Algorithm note.

- propose-and-reject algorithm

    - Setup: Hiring managers and candidates. All managers rank candidates...

    - Steps: Every manager sends offer to top candidate. Candidates...

- (omitted background on SMA)

- properties of algorithm

    - stability: matching is stable if there is a pair...

        - (all the various lemmas for stability)

    - optimality: (define optimal and pessimal pairings)

        - (all the various lemmas for optimality)

There may also be other techniques for extracting value from a lecture — the best way to come up with these techniques organically is to continue walking into lecture with an eye for how you'll re-teach the lecture afterwards. Then, after lecture, there are several steps you can take to solidify the material, outside of working with your notes.

🔗"Use" lecture.

Homeworks and projects are of course designed for you to leverage what you learned in lecture. However, I personally found several other tactics more useful, during my own undergraduate years.

  1. Compile lecture notes for the class. In some of my classes, the instructors didn't have typed notes to release. They did come to lecture prepared — but with written notes that weren't ready to publish. In light of this, I latex'ed notes in class. However, the most important for me was sitting through my latex'ed notes after class. At that point, I would go through proofs and painstakingly justify each step or rework algebra that didn't make sense to me. I did this for several class, including our machine learning (CS189), designing information systems (EE16B), and graduate convex optimization (EE227C) courses. I treated my original set of notes only as a reference, which I used to guide my rewritten proofs. This certainly counts as "reviewing" in the 5 Rs of Cornell note taking; however, specifically for math courses, this is a bit more than just re-reading. This involves reworking solutions and proofs from scratch.

  2. Teach your friends. Your natural next step after lecture is then to actually sit down with your friends and to teach them the topic. Study the notes—both the official lecture notes and the ones you took—to prepare for your own mini-lecture. Believe it or not, your version of the lecture will always be far more useful for your friends. This is because you better understand what your friends already know and what they may be confused by. As you teach, you may stumble on parts you find confusing; this is a great opportunity to identify what you truly understand.

  3. Write practice questions and quizzes. Funnily enough, I did a lot of this as a TA, so you could say that's when I began to truly and deeply understand the material. As you write questions for the material, you'll notice a mental switch into a different mode: You'll start to look for ways to extend existing questions, patterns across questions, and content in the notes that are testable. These are all great practices for "using" lecture.

In industry, "using" a talk often means building a model to leverage that idea, then validate the model for production use cases. For classes, homeworks and projects technically serve this purpose. Since assignments count for a grade however, working on an assignment can devolve into a stressful experience. Some of these lower-stress activities can help you extract value without being blinded by stress.