Friday, January 23, 2009

On Teaching Discrete Mathematics

This semester, I'm TA'ing for a first year discrete mathematics course that covers, among other things, logic, set theory, and graph theory. It's a computer science course cross-listed with math, but many students taking it this semester are actually from engineering. I have to grade assignments and tests, as well as hold office hours, but it's the one hour tutorial I have to lead each week that I want to talk about.

First of all, I want to say that scheduling a math tutorial for first year students at 8:30 on Friday morning is a bad idea. Not just for me, either, because I have to get up early anyway. I still remember how hard it was to get to a 10:00am class after a night of finishing up assignments, let alone 8:30! While there's nothing I can do about how the school's computers make up the schedules, I can try to make the tutorial interesting enough that the students don't start to nod off. More on this later.

This brings me to my second complaint. Last semester, I did tutorials that had 25 people and lasted an hour and a half. This was a great setup since it gave enough time to work on practical things (in this case, on the computers), as well as have some group discussion. There were two TA's in the room, so everyone got a good helping of perosnal attention. This semester, these math tutorials have 50 people in them and last only an hour. This greatly lessens the possibilities of what can be done during the tutorial, leading most people to simply solve problems on the board. A little sleep-inducing so early on a Friday morning, if you ask me.

You have to work with what you've got. We're very fortunate that the professor prepares the questions he'd like covered during the tutorials, giving us TA's a good place to start. My job becomes finding interesting ways to present them. I've only done two tutorials so far, and they were slightly different from each other.

During the first tutorial, I somewhat misestimated how short an hour was (actually, it ends up being only fifty minutes, since five minutes are cut off at the start and end to allow students travel time between classes). I tried to get students to work in pairs on all the questions, after which we shared the answers. While they did get a good feeling for the problems they have to understand, and were able to ask me quesitons, there was almost no time to go through the solutions. They had to look at the answers that were posted online later.

This morning, for the second tutorial, I instead divided the questions and their parts into eight pieces. I then numbered students 1 through 8, thus ensuring they didn't work with who they were sitting beside. (This encourages them to make new friends, but more importantly, it means they are less likely to be distracted by chatting with their current friends.) Since I only had one piece of chalk in the room (argh!), I had them write their answers on the board as they finished. We then discussed whether we thought the answers were correct. Again, there wasn't enough time to go through them all, but we covered much more than the previous week.

So now I need to think of something to do for next week. I like to change it up at least a little bit each week, to keep things unpredictable and interesting. Eventually, this might mean carefully straying from the prepared questions. For example, when they get to graph theory, some CS Unplugged-style activities wouldn't hurt.

If you have any great techniques you've used for math-based courses like this one, I'd love to hear them in the comments!


وليد سعود said...

Gail use real world examples that can be solved with discrete math.connect every concept with it's real world application.I study an introductory course in discrete math and I find it hard to understand because our teacher doesn't use example and he teaches it as pure math

Anonymous said...

It's indeed a good idea. Although I haven't took this course before, examples always make abstract concepts more acceptable and impressive in any case.

I envy you, as a graduated student, have the experience of TA here, which is rare in China. Although sometimes students have to grade assignments and tests, it's just a service for the professors, not formal. So little payment, thus no rights and obligations. So I don't have the chance to do it.

I think you are an excellent TA, responsible for your students. Great.

Gail Carmichael said...

Thanks guys! I agree that real world examples are definitely important. I've been working with questions already given to me and trying to find fun ways for the students to work with them and see solutions, but lately I have been thinking of straying from them a bit more and doing a more explanatory type of tutorial. If I do, I will be able to incorporate real world examples.

وليد سعود said...

hi Gail and thanks in forward
I want to learn discrete math on my own what do you recommend to use.

Gail Carmichael said...

All I can really suggest is finding a good textbook on the subject that you understand... I'm not aware of any really good tutorial websites on the topic (though I'm sure they exist).

Post a Comment

Comments are moderated - please be patient while I approve yours.

Note: Only a member of this blog may post a comment.