ERIK DEMAINE: Hi, I'm Erik Demaine, and I'm a professor of computer science here at MIT. And I'm one of three professors in charge of this class this semester-- 6.046 So I taught about half of the lectures in the class. Srini taught the other half. And Nancy prepared new problem sets. And we all worked together on everything in the class pretty much.
We had, I think, 10 TAs and then another 5 graders. So it's a big teaching infrastructure to deliver algorithms to 300 students. My entire career at MIT, all I have done is taught different forms of algorithms. So 6.046 holds a place particularly dear to my heart. It's a class that's evolved over time, so there's an older version of 6.046 on OCW when algorithms in the undergraduate level was all taught in one semester, which was exciting, but also pretty intense and didn't really go into a lot of depth.
So several years ago, we split that class into two-- 6.006, which is introductory algorithms. And the new 6.046, which is this class, which is intermediate algorithms beyond what you could implement in an hour-- things that you have to think more about and prove theorems about. So 6.046 is sort of the more theoretical counterpart and gets into much more deeper algorithms, and it's exciting.
And all of my research is also around algorithms. So this is me living the dream, teaching the topic that I love. And it's an exciting class. This as an undergraduate class, so the material is stuff that I should know really well. But every time I teach it, I find that I learn it at an even deeper level and understand it better.
Also, because I try to add in new topics that I don't know so well, so I learn them even better. And that, in turn, influences my research. So once I understand the basics really well, I can apply them in new and interesting ways to solve problems I didn't know how to solve before. Algorithms are just so much fun. Sometimes I start the class with I'm Erik Demaine, and I love the algorithms!
It's just such a-- it's really fun material. It's very creative. It's almost like an art form to come up with a beautiful algorithm. And this class teaches so many different algorithms that others have developed. It's kind of like the cream of the crop.
There's zillions out there, so we can't cover all of them. So we take out representative examples and find really cool, really interesting, or really beautiful algorithms. And it's really fun to cover them all and to share that beauty with the students. I think I've taught this class 10 times in some version.
So it's been an adventure. Every time is different. And, of course, the last time is always the best. Next time will be even better, hopefully.