Well, so far my least enjoyable class has been Operating System design. The textbook is wonderful (Tanenbaum!), the material is something I’m very interested in, but the professor is absolutely boring. He’s a grad student who doesn’t appear to have taught a class before, so I’m hoping he’ll get better as the semester progresses.
The best thing he’s mentioned is that our first project will be to implement a new system call in Linux, and the second project will be to implement our own process scheduler for Linux. This sounds like a substantial amount of work, but should be fun. He’s alluded to other projects as well… Since I hope to some day submit a useful Linux kernel patch, it’s good that I get to spend class time playing with the kernel.
My algorithms class looks like it’s going to be a lot of work. The first assignment involves some mathematical proofs, some theoretical analysis of algorithms, followed by analyzing an algorithm theoretically, coding the algorithm in a language of our choice, then analyzing the performance of the algorithm experimentally and compare to the theoretical analysis. And this is just the first assignment.
Probability and Statistics is, thus far, terribly easy. The professor promises it’ll get a lot harder. Three semesters of calculus are listed as pre-reqs for the class, so I would hope he’s right.
I still think programming languages is going to be lots of fun. Computability, Automata and Formal Languages is also pretty mathy, but the concepts aren’t too difficult and there haven’t been any assignments so far.
I’ve been trying to get ahead on work so I won’t have to do any while Ben and Amanda are here this weekend. Since it’s still the beginning of the semester, it shouldn’t be too hard.