--- title: "On Teaching Algorithms: Lessons from a Decade" description: "Reflections on what works (and what doesn't) in computer science education." pubDate: "Jan 10 2024" image: "https://images.unsplash.com/photo-1509062522246-3755977927d7?w=400&auto=format&fit=crop&q=60" authorImage: "/avatar/avatar1.png" authorName: "Neeldhara" --- # On Teaching Algorithms: Lessons from a Decade Ten years of teaching has taught me more than any textbook could. ## Start with Why Students don't care about O(n log n) until they understand why their code is slow. Real problems first, theory second. ## The Power of Visualization Abstract concepts become concrete when visualized. Every algorithm should have a picture. ## Failure is a Feature Let students struggle. The struggle is where learning happens. But know when to throw a lifeline. ## Assessment Philosophy Test understanding, not memorization. Open-book exams with novel problems beat closed-book regurgitation every time. ## The Joy of "Aha!" Moments There's no feeling quite like seeing a student's eyes light up when a concept clicks. That's why we do this.