Knowledge Management

In my master thesis, I have to learn a lot of new things and keep track of them. With a thesis like this there is the danger of insufficient documentation along the way. When it comes to actually writing the thesis, one might not remember what one spend the last year on in sufficient detail to write a hundred pages.

This I try to prevent by constantly organizing my knowledge along the way. The cornerstone is a mind map:

Scattered through the various branches, there are nodes called "References". There I already note which sources I have used to work with the topics. The naming scheme of the notes is simply "Author-Year-Title_with_Underscores". The same naming scheme is also used for the files in my "Literature" directory:

That same name is also then used in the BibTeX file:

@article{Hasenbusch-2005-Speeding_up_the_HMC_algorithm_some_new_results,
        archiveprefix = {arXiv},
        author = {Hasenbusch, Martin},
        booktitle = {{Proceedings, 23rd International Symposium on Lattice field theory (Lattice 2005): Dublin, Ireland, Jul 25-30, 2005}},
        eprint = {hep-lat/0509080},
        journal = {PoS},
        pages = {116},
        primaryclass = {hep-lat},
        slaccitation = {\%\%CITATION = HEP-LAT/0509080;\%\%},
        title = {{Speeding up the HMC algorithm: Some new results}},
        volume = {LAT2005},
        year = {2006}
}

This way I have the same identifier for a given paper in my mind map, the BibTeX database and the PDF files on my computer.

When I want to write down some part of the knowledge into the thesis, I can just traverse the mind map and expand on the bullet points in there. In case I need to read the relevant papers again, I can just click on the little red arrow to open it. Citing a paper is also very easy, I just copy the identifier into some \cite command.

The mind map also includes all compilation errors that I have encountered so far, as well as the steps needed to get rid of it. This has proved itself useful because I work with multiple projects on multiple computers with various compilers. Today, there are almost 2000 entries in the mind map already.

Freemind is the mind mapping software that I use. There are plenty of alternatives as well. What I often use are the keyboard shortcuts and the possibility to close branches in order to make it easier to navigate.