Chris Martin

Kernel, vectors, graphs

It occurred to me that this OS Design course has put me past a certain point of no return in life. The first assignment was to make a Linux kernel module to add a simple /proc entry. And the moment I compiled the kernel source... I became one of those guys who has compiled the Linux kernel. This is not the sort of thing that you can undo.

I think it’s awesome.

This is shaping up to be my favorite semester. All good professors, mostly all good classes. The maths are nice - Since I’ve been at Tech, I haven’t actually taken very much math. Calc 2, 3, and Combinatorics are the big ones. I’m currently taking AVS and Graph Theory. None of it is conceptually new to me, but it’s proof-heavy and more in-depth, and stuff is making a lot more sense the second time around.

I’m convinced that an essential part of learning maths is to be exposed to higher-level concepts you may not understand yet. Some teachers seem to have this fear that mentioning a new, unknown word will startle students enough to send them running away in a terrified confusion. So we hide the majority of mathematical concepts in the dark as if ashamed of them. Just as my first grade class denied the existence of numbers less than zero, high school refused to acknowledge the existence of a vector space of dimension greater than two (or perhaps three). We did algebra “exercises” in field of real numbers, but never once heard the word “field.” Sometimes an equation’s solution is a set, but we didn’t even have a well-defined notion of “set.” The mere mention of things you don’t fully understand can be enough to begin to see the bigger picture.

I write about Haskell and related topics; you can find my works online on Type Classes and in print from The Joy of Haskell.