Table of Contents
Use LaTeX and the KCSS Style
Before you do anything else for your thesis work, you should get the technical issues for writing your thesis out of the way. That is, you should have your advisor create a Git repository for your thesis, familiarize yourself with LaTeX and the KCSS style, and adapt/fill in the KCSS thesis template for your needs. This way, you can fill your thesis with contents as you work along on your thesis topic, instead of keeping notes in various ways and having to consolidate it all later.
Our shared repositories are managed with Git. The files associated with the thesis should be kept in the group's Git installation, as a separate repository that your advisor will create for you. The main purpose is to prevent loss of data, but it also facilitates access for fellow group members if needed. If you haven't used Git yet, there's a few excellent introductions to be found on the internet, for example:
- The Git book
- The excellent Git tutorial, written by the guys at Atlassian
- The Git page in our KIELER Wiki: Using Git
The main tex file for a thesis should be
<name of repository>.tex (see also Git/Structure for the canonical naming scheme). E.g., the bachelor thesis of user xyz can be found in a repository named
xyz-bt in the Theses project of our Bitbutcket system, in a file named
xyz-bt.tex. If there is a talk to "defend" the thesis (Bachelor-Kolloquium, Disputation), the talk should also be included in this repository, and should be named
<name of repository>-talk.tex (e.g.
xyz-bt-talk.tex). In case your thesis should be made available on-line, the same names should be used, e.g.,
See also the notes on preparing a paper, e.g. regarding which files should be kept in Git and which shouldn't.
Prof. von Hanxleden would recommend Emacs as a very flexible and powerful editor for LaTeX (and everything else). But probably you belong to a post-Emacs generation, so here are some alternatives:
- On all platforms, including Mac, texmaker is a fine editor.
- Atom and Sublime have plug-ins that provide LaTeX syntax highlighting and an integrated compilation workflow.
- Kile is a LaTeX IDE which runs on KDE and is powerful and reasonably easy to understand and to use
The ToDo Notes Package
When writing your thesis, you will often want to make a note of something you need to add or change. The
todonotes package makes this easy. It lets you add placeholder graphics and notes in or next to the text. To include the package, add the following line to your document:
You can find a short manual over here.
Proper bibliographies in LaTeX are built using bibtex, which allows you to store information about publications in so-called bib files with identifiers that you can use to reference them from your main LaTeX document. In a desperate attempt to keep everything neat and tidy, we have a central bib Git repository which contains bib files we use and occasionally add to:
- cau-rt.bib: The main database which contains publications we reference, but have not written ourselves.
- pub-rts.bib: The database containing our own publications.
- rts-arbeiten.bib: The database containing the theses produced by our students. Yes, we actually do reference those from time to time.
The recommended workflow is to clone that repository locally and tell bibtex that it can find bibliography databases there (google for BIBINPUTS). If you belong to our group's staff, feel free to add to the databases if you're missing a reference. If you are a student, the recommendation is that you collect the items you would add in a separate bib file in your thesis directory and merge those into cau-rt.bib at the end of your tenure.
Publishing the thesis on-line
If your advisor has agreed that your thesis should be made available on-line, and you have signed your consent, then you can publish this as follows. Say your thesis is xyz-bt.pdf. ("bt" for Bachelor theses, "mt" for Master theses, "diss" for dissertations.) To upload this, use the command
scp xyz-bt.pdf biblio@…:/home/biblio/public_html/downloads/theses
If you don't have the right permissions to do this, ask your advisor or the System Administrator to publish this for you.
Then, check that your thesis is indeed available under the URL
Note: The name of this file should follow the canonical naming scheme used in subversion (Subversion/Structure ), even if your thesis is for some reason not in the subversion system.
Von Ihnen im Laufe der Arbeit entwickelte Software (oder Hardware-Beschreibungen) sind Teil Ihrer Arbeit. Dies bedeutet: es sollte eine Übersicht über die Software in geeigneter Form gegeben werden, z.B. in Form von Klassendiagrammen mit Erläuterungen. Hinweise zum Einbinden von Code in LaTeX finden sich in dem Beispieldokument (s.o.).