I’ve just completed my sixth semester at Williams College, and I feel an urge to try and store the material I’ve learned from my computer science and math courses. I want to do this primarily because (a) I know I’ll be incorporating concepts from previous courses into my future research, and (b) I want to minimize the amount of class material I forget.

Yes, I know as well as anyone that this won’t prevent me from forgetting most of what I learn. But I’m trying to find ways to avoid this as much as possible. Professor Calvin Newport suggests keeping a knowledge vault for this purpose. I’m doing something slightly different than what he recommends.

I’m going to try writing a personal book where each chapter corresponds to one of my college classes. (I may later generalize this so that some chapters pertain to other topics, such as nifty Unix tricks.) Part of the current table of contents is shown below.


You can see that I basically have the table of contents, and almost nothing else. I’ve only been able to fill in one chapter in depth — the graph theory one, which isn’t shown in the contents in the previous image since I put the math courses after the computer science courses. You can also see that LaTeX essentially includes “hyperlinks” in the final PDF output, so if I click on a chapter, I immediate arrive at the corresponding page.

As an interesting side note, I included a nice picture of the Hoffman-Singleton graph in that graph theory chapter.


In case you’re wondering, I included this because one of my notorious graph theory midterm questions concerned the upper bound on vertex count in relation to degree and diameter. I was supposed to find two examples of Moore graphs aside from the complete graphs and odd cycles. The Petersen graph was easy enough to obtain, but expecting us to obtain the Hoffman-Singleton graph was just absurd. Fortunately, the professor fully expected no student to answer this question perfectly, which is exactly what happened.

Anyway, it will be interesting to see how my personal book progresses. I usually fail to keep long-term projects running, but I’ll try. After all, if I can maintain a blog for almost two years running, then my knowledge book has potential. Feel free to comment if you have your own ways of constructing a knowledge vault.