Archiv der Kategorie: Studium

Erfahrungsbericht: Mein Informatik-Studium an der TU Braunschweig

Das Studium ist ein neuer Lebensabschnitt und gewöhnlich bereitet einem die Schule nur sehr bedingt darauf vor. Um potentiellen zukünftigen Informatik-Studenten an der TU Braunschweig eine bessere Vorstellung zu gewährleisten, habe ich meine Erfahrungen mal zusammengefasst. Ich stelle weder den Anspruch auf Vollständigkeit noch auf Korrektheit, sondern gebe nur eine subjektive Einsicht.

Vorkenntnisse:

Ich persönlich hatte nie Informatik-Unterricht. Java habe ich mir in der Zeit nach Schulabschluss und vor Semesterbeginn selber beigebracht. Diese Sprache müsst ihr in eurem Bachelorstudium beherrschen (C und C++ werden später auch verlangt, aber nicht so intensiv). Ein gutes Buch für den Java Einstieg ist ‚Grundkurs Programmieren in Java von Ratz et al.‘.

Offiziel müsst ihr keinerlei Vorkenntnisse zum Studienbeginn haben, aber die Mathematik wird euch vermutlich sehr fordern und bereits Programmieren zu können wird euch den Einstieg bedeutend einfacher machen. Die Mathematik in der Hochschule unterscheidet sich sehr stark von der Schulmathematik und ich denke nicht, dass man sich alleine darauf richtig vorbereiten kann. Falls du es doch versuchen willst, kann ich das Buch ‚Mathematik für Informatiker von Teschl und Teschl‘ empfehlen. Es ist gut lesbar, aber richtig vorbereitet hatte es mich trotzdem irgendwie nicht. Das soll dir aber keine Angst machen: Es ist anders und es ist schwerer (Keine Kunst, Schulmathematik ist nicht sonderlich anspruchsvoll), aber es ist auch bedeutend besser und schöner.

Aufbau:

Das Studium besteht aus Pflichtmodulen, die für einen Informatiker unerlässlich sind, und Wahlpflichtmodulen, die in eine bestimme Richtung vertiefen. Module sind meistens Vorlesungen, aber es gibt auch Praktika/Teamprojekte etc.. Vorlesungen werden meistens mit einer benoteten Klausur in der vorlesungsfreien Zeit abgeschlossen und du wirst etwa 5 Prüfungen pro Semester machen. Prüfungen haben eine Durchfallquote von meist etwa 30% (aber auch 95% u.Ä. sind in Pflichtmodulen schon vorgekommen). Du darfst eine Prüfung aber 3 Mal wiederholen und wenn dir die Note nicht gefällt hast du sogar einen zweiten Verbesserungsversuch (nur wenn du das erste mal bestehst, beste Note wird gewertet). Insofern du aber vernünftig lernst und nicht ganz talentlos bist, solltest du aber nie Durchfallen.

Die ersten Semester sind hauptsächlich Pflichtmodule wie Programmieren 1+2, Lineare Algebra, Analysis, Diskrete Mathematik, Logik. Dies sind Vorlesungen mit teils über 200 Teilnehmern und dementsprechend anonyme. Später werden die Vorlesungen aber deutlich kleiner, sodass die Professoren/Dozenten teils die Namen der Studenten kennen. Es gibt allgemein keine Anwesenheitspflicht und man kann auch einfach mit dem Material lernen. Dies ist im Allgemeinen aber nicht zu empfehlen, ausserdem sind Vorlesungen keine langweiligen Schulstunden.

Neben der Informatik wirst du auch noch ein Nebenfach wählen müssen. Dieses macht aber nur einen kleinen Umfang des Studiums aus (2-3 Vorlesungen). Ich persönlich habe Mathematik gewählt.

 Mein Studienverlauf

Dein Studienverlauf kann vollkommen anders aussehen. Dozenten wechseln zwar nicht häufig, aber es kommt vor.

Ich habe mein Studium in Regelstudienzeit und ‚mit Auszeichnung‘ abgeschlossen. Ich bin ein begeisterter Informatiker und fühle mich inbesondere in den mathematischeren Gebieten (Insb. Algorithmik) besonders wohl. In diesem Bericht gehe ich davon aus, dass du ähnliche Ambitionen hast.

Ich bin das erste Jahr noch gependelt (~3 Stunden pro Uni-Tag) und bin erst dann in mein erste eigene Wohnung in Uninähe gezogen. Die Wohnsituation ist für günstige Studentenwohnungen in Uninähe durchaus anstrengend, aber nicht hoffnungslos. Ich zahle 160Euro(Kalt) für eine 18.49$m^2$ Wohung  mit Balkon ins Grüne. Die Selbstständigkeit ist eine wichtige Erfahrung, aber eine Pantryküche und Party-Studenten als Nachbarn keine sonderlich schöne.

1. Semester

Im ersten Semester wirst du vermutlich nur Vorlesungsmodule hören, die alle mit einer schriftlichen Klausur abgeschlossen werden. Bei mir waren es die folgenden:

  • Programmieren 1 (6CP, Pflicht): Hier wird mit Java und objektorientierter Programmierung angefangen. Diese Vorlesung hat einige theoretische/mathematische Elemente, die man nicht unterschätzen sollte. Es gibt Programmier-Hausaufgaben, die aber schnell gemacht sind. Die Klausur beinhaltet Fallen, aber dafür sind die alten Klausuren ins Netz gestellt.
  • Lineare Algebra (10CP,Pflicht): Abstrakte Mathematik die weit über das Vektorrechnen aus der Schule hinausgeht. Am Anfang des Studiums scheint einem das vielleicht ein wenig nutzlos vorkommen, aber das Zeug ist wirklich wichtig und wird euch immer wieder begegnen. Hier gibt es keine verpflichtenden Hausaufgaben, aber es empfiehlt sich an den Übungen teilzunehmen.
  • Diskrete Mathematik (5CP, Pflicht): Ein Rundumschlag über die für Informatik wichtigen Disziplinen ausserhalb von Linearer Algebra und Analysis. Die Klausur ist nur Anwendung und es werden keine Beweise oder Ähnliches verlangt. Da ich das Material aber auf Verständnis gelernt habe und nicht auf Anwendung, wurde dieses Fach meine schlechteste Klausur (3.0). Dafür sitzt es aber immer noch tief und fest. Dies ist nicht bei jedem so und man stolpert später auch mal über Studenten die den Induktionsbeweis nicht ganz richtig verstanden haben, aber glauben dies zu tun. Tatsächlich hatte ich schon mal (im 6. Semester) eine Auseinandersetzung mit einer Gruppe Studenten, weil ich einen von einem Studenten vorgeführten falschen Induktionsbeweis nicht akzeptiert habe. Ich war nicht in der Lage mich durchzusetzen, erst später gab man mir dann Recht.
  • Theoretische Informatik 1(5CP, Pflicht): Einführung in Automatentheorie, Formale Sprachen u.Ä.. Eigentlich erst für das dritte Semester vorgesehen, kann man aber vorziehen. Die Hausaufgaben sind gewöhnlich sehr fordernd und auch die Klausur ist nicht einfach. Ist aber ein sehr interessantes Fach. Wirklich zur Sache geht es aber erst in Theoretische Informatik 2. Obwohl die Vorlesung einige Voraussetzungen aus den ersten zwei Semestern hat, habe ich als einer der besten abgeschlossen.
  • Algorithmen und Datenstrukturen (8CP, Pflicht): Algorithmen und Datenstrukturen ist der Werkzeugkasten des Informatikers. Die Vorlesung legt viel Wert darauf, solide Grundlagen zu legen. Wenn dir, wir mir, der Inhalt zu interessant ist und du bereits zu Beginn die Bücher verschlingst, wird dir die Vorlesung aber zu langsam sein. Obwohl die Algorithmik nun mein Spezialisierungsgebiet ist und ich mich bereits damals sehr viel weiterführend damit beschäftigt habe, habe ich die Klausur nur mit einer 1.7 abgeschlossen.

 2. Semester

  • Programmieren 2 (6CP, Pflicht): Hier geht es in gleicher Manier wie in Programmieren 1 weiter.
  • Analysis (10CP, Pflicht): Ähnlich zu Linearer Algebra nur das jetzt das Thema anders ist.
  • Theoretische Informatik 2 (6CP, Pflicht): Hier geht es jetzt aufbauend auf Theoretischer Informatik 1 richtig zur Sache. NP=P-Problem, Entscheidbarkeit, etc. sind die anspruchsvollen aber extrem interessanten Themen dieser Vorlesung. Eine der wichtigsten Vorlesungen in meinem Studium.
  • Logik (5CP, Pflicht): Eigentlich als Vorspiel zur Theoretischen Informatik gedacht und dementsprechend fiel mir dieses Fach leicht. Es ist trotzdem sehr interessant und nützlich. Wer sich mit dem Stoff vernünftig auseinandersetzt, kann die häufig im Netz schwirrenden Logikprobleme relativ einfach lösen. Aber auch sonst im Leben und insbesondere in der Informatik ist Logik sehr nützlich.
  • Grundlagen der Technischen Informatik (5 CP, Wahlpflicht): Eine freiwillige (Wahlpflicht) Vorbereitung auf Technische Informatik. Die Vorlesung ist ansich nicht schlecht, aber ich hätte doch lieber etwas anderes gehört. Die mathematischeren/theoretischeren Fächer liegen mir einfach mehr.
  • Stochastik (5CP, Mathe-Wahlpflicht): Wähle zwei aus: Stochastik, Numerik, Algebra, Statistik. Stochastik war mein erstes Mathewahlpflichtfach. Hier werden die Grundlagen der Stochastik durchgegangen. Gar nicht so weit von der Schulmathematik entfernt wie die anderen Mathematik-Veranstalltungen. Nützlich, aber wenn ich Stochastik brauche muss ich trotzdem nachschlagen.
  • Computernetze 1 (5CP): Nur halbherzig gehört und Prüfung wieder abgemeldet (bis zum Abend vor der Klausur möglich). Verschoben auf 4. Semester.

3. Semester

  • Software Engineering (5 CP, Pflicht): Wie baut/verkauft/beschreibt man Software. Also Diagramme, Charts, Pflichtenheft und Ähnliches. Die Prüfung habe ich unter Krankheit abgelegt, weil ich das Unwohlsein als Prüfungsangst fehlinterpretiert habe. Anschließend lag ich für über eine Woche halb tot im Bett (und ich konnte mich auch nicht mehr wirklich an die Klausur erinnern).
  • Relationale Datenbanksysteme 1 (5CP): Daten in Tabellen und wie man mit diesen Daten arbeitet. Sollte jeder Informatik-Student können, aber begeistern kann ich mich für SQL nicht. Die Prüfung ist sehr berüchtigt und du kannst einige lustige Geschichten hören und lesen. Aufgrund von Krankheit im 4. Semester geprüft.
  • Algorithmik-Praktikum (5CP, Wahlpflicht, unbewertet): Hier haben wir external Memory Algorithmen für die Wiselib programmiert. Sehr nützliche Erfahrung.
  • Geschichte der Mathematik (5CP, Schlüsselqualifikation, unbewertet): Unterhaltsame Vorlesung mit Abschluss durch Hausarbeit. Ich habe mich mit Cantor und seinen Beiträgen zum Verständnis der Unendlichkeit beschäftigt. Tatsächlich ist diese bedeutend weniger intuitiv als man denken mag (Unendlich ist nicht gleich Unendlich, z.b. Gibt es genauso viele natürliche Zahlen wie rationale Zahlen, aber mehr reelle Zahlen als natürliche Zahlen). Eng verflochten mit der Theoretischen Informatik.
  • Teamprojekt (5CP, Pflicht, unbewertet): Hier haben wir eine Roboterlokalisierung über eine Kamera implementiert. Es sind einige Marker auf DIN-A4 ausgedruckt mit bekannten Positionen auf dem Boden verteilt. Sobald der Roboter eine solche Markierung sieht, berechnet er die relative Position des Markers und damit seine eigene Position. Auch wenn der Marker relativ weit entfernt war und die Auflösung nicht so gut, funktionierte dies doch erstaunlich genau (maximal wenige cm Abweichung). Double-Werte haben sich hier für mich zum ersten Mal als zu ungenau herausgestellt.
  • Betriebssystem (5CP, Pflicht): Hier es um die Probleme, die ein Betriebssystem lösen muss (etwa wie es 5 Prozesse auf einem Prozessor ausführt und alle glauben, sie wären alleine). Ein Betriebssystem selber schreiben kann man anschließend aber nicht.
  • Programmieren für Fortgeschrittene (5CP): Hier geht es um Funktionale Programmierung und den generellen Eigenschaften die Programmiersprachen haben können. Interessant, aber aufgrund von Krankheit nicht geprüft. Da ich keine Credit-Probleme hatte, habe ich die Prüfung nie nachgeholt.
Hiwi

Ich habe dieses Semester als Tutor für Theoretische Informatik 1 gearbeitet. Dies beinhaltet das Leiten einer kleinen Übung in der Hausaufgaben besprochen werden, das Korrigieren von Hausaufgaben, Mithilfe in der Korrektur der Klausuren. Die meisten Teilnehmer in meiner Übung waren im selben oder gar höherem Semester als ich. Dementsprechend fehlte es mir an Selbstvertrauen und ich wurde meinen eigenen Anforderungen nicht gerecht. Trotzdem habe ich hieraus Erfahrungen gesammelt und weiß wie man es nicht machen sollte.

4. Semester

  • SEP (7CP, Pflicht, Unbewertet): Das SEP ist ein berüchtigter Zeitfresser in dem man in einer Gruppe ein mittelgroßes Softwareprojekt umsetzen muss. Wir haben einen Raum gebaut in dem 3 Wände mit Beamern bestrahlt wurden und eine 3D U-Boot Umgebung darstellte. Der Raum war weiter mit (drahtlos) vernetzten Objekten ausgestattet mit denen der Nutzer Aufgaben erfüllen musste die das U-Boot am Sinken hindern. Wir hatten ein Haufen Arduinos (mit XBee) und Sensoren, sowie die Raumkonstruktion und mussten ansonsten alles selbst programmieren. Unser Team war mit 11 Leuten (3 Informatiker, 8 IST’ler) sehr groß und bis auf eine Person waren auch alle sehr fleißig und kompetent. Wir haben deutlich mehr geleistet als verlangt war, weil uns unsere Betreuer im Glauben gelassen haben, wir würden zu wenig tun. Trotzdem hat es extrem viel Spaß gemacht und wir haben am Ende den zweiten Platz bekommen (auch wenn die meisten meinen, wir hätten den ersten verdient). Konkret habe ich hier insbesondere die Middleware zwischen Arduinos und Server entwickelt, die ziemlich cool und intelligent geworden ist.
  • Graphentheorie (10CP, Nebenfach Mathematik): Hier geht es um Graphen und deren Eigenschaften. Ein Graph ist eine Menge von Punkten die untereinander verbunden sein (können).  Hier ergeben sich einige interessante Probleme und ich konnte sehr viel Nutzen aus diesem Fach ziehen, da Probleme aus der Graphentheorie auch der Algorithmik zugeordnet werden können. Viele dieser Probleme sind auch NP-Vollständig.
  • Computernetze 1 (5CP, Pflicht): Hier geht es darum, wie ein Computernetzwerk funktioniert. Angefangen wie man Daten über ein Kabel oder Funk sendet bis zu komplexen Netzwerken. Sehr wichtiger Inhalt. Die Vorlesung wird aufgenommen und kann sich auch zuhause angesehen werden. Die Übungen nicht, diese sind aber wichtig für die Klausur. Die Klausur ist dafür aber nicht so schwer, aber nicht unbedingt gut bewertet. Ich habe etwa keine 1.0 bekommen, weil ich die letzten Null-Stellen eines Binärcodes, den ich  vorher bereits als Dezimaldarstellung angegeben hatte, aus Platzgründen mit ‚…‘ abgekürzt habe.
  • Algebra (5CP, Mathe-Wahlpflicht): Mein zweites Mathe-Wahlpflichfach. Hier geht es um Gruppen, Ringe, und Ähnliches. Ich musste mich hier ziemlich durchkämpfen und habe erst später in Kryptologie den Sinn dahinter verstanden.
  • Technische Informatik 2 (4CP, Pflicht): Hier ist der interessante Teil der Technischen Informatik: Wie funktioniert ein Prozessor. Dementsprechend Schaltungslogik und Co..
HiWi

Dieses Semester arbeitete ich als Tutor für Theoretische Informatik 2. Lief bedeutend besser als im ersten Semester, aber lehren ist schwerer als man annimmt.

5. Semester

  • Einführung in Algorithm Engineering (5CP, Wahlpflicht): Diese Vorlesung war keine Vorlesung im klassischen Sinne. Auch gab es keine Klausur. Stattdessen wurden die Studenten (<20) in 4-5er Gruppen eingeteilt und mussten ein bestimmtes Thema wissenschaftlich erarbeiten und ein Paper daraus schreiben. Wir haben einen Algorithmus für RDF-Subgraph-Isomorphismen entwickelt der zu mindestens in unseren Testszenarios und InMemory schneller war als Jena. Ich habe nach der Veranstaltung noch einen weiteren Algorithmus entwickelt der noch mal ein ganzes Stück schneller war. Allerdings ist InMemory für RDF-Datenbanken nicht ganz realistisch, daher ist der Praxisbezug wohl eher gering. Nichtsdestotrotz habe ich in der Vorlesung sehr viel über das Verfassen von Papern und der allgemeinen Arbeitsweise in der Algorithmik gelernt.
  • Information Retrieval and Web Search Engines (5CP, Wahlpflicht, Master-Modul): Diese Vorlesung habe ich aus dem Master-Pool in den Bachelor importiert. Die Vorlesung behandelt eine Fülle von Aspekten und auch eine Menge Machine-Learning (Classifier, Stochastische Modelle, etc.). Hat mir etliche neue Tools geliefert. Die Vorlesung wird mit Multimedia-Datenbanken forgesetzt in der noch weitere (noch nützlichere) Tools vorgestellt werden. Dies war meine einzige mündliche Klausur im Bachelor und ich war etwas zu nervös und obwohl ich perfekt vorbereitet war, reichte es somit nur für eine 1.3.
  • Algorithmische Graphentheorie (5CP, Nebenfach Mathematik): Fortsetzung von Graphentheorie, nur jetzt ging es um das Lösen von graphentheoretischen Problemen. Informatiker haben in dieser Vorlesung einen kleinen Vorsprung, trotzdem war es eine interessante Vorlesung.
  • Technische Informatik 1 (4CP, Pflicht): Kombiprüfung Technische Informatik 1+2 abgelegt. Die Vorlesung zu TI1 war nicht sonderlich berauschend. Hier habe ich von den Problemen der Elektronik in Prozessoren gelernt. Das meiste habe ich mir aber selber mit Büchern beigebracht.
  • Ethnomathematik (5CP, Schlüsselqualifikation, Unbewertet): Eine sehr unterhaltsame Vorlesung, ob ich aber wirklich was für meine Zukunft gelernt habe möchte ich bezweifeln.
  • Seminar (5CP, Pflicht): Im Seminar muss man zu einem Thema eine schriftliche Ausarbeitung und Präsentation machen, die benotet werden (und auch in die Endwertung eingehen). Ich musste diese vollständig in Englisch machen.
HiWi

In diesem Semester war ich als Tutor für Relationale Datenbanken 2 tätig. Lief eigentlich recht gut und ich habe am Ende eine gute Evaluation erhalten. Nebenbei war ich somit für die 3 Aussiebefächer der Informatik HiWi, was ich damals irgendwie cool fand.

Weiteres

Nebenbei habe ich mich mit einem Mitstudenten noch um eine interessante Bachelorarbeit gekümmert. Hier haben wir tatsächlich etwas Zeit in einige Treffen mit dem Professor investiert aber das dieser so viel Zeit für uns gefunden hat, fand ich schon beeindruckend.

6. Semester

  • Bachelorarbeit (15CP, doppelt gewertet): Wir hatten am Ende tatsächlich ein sehr interessantes Thema gefunden, dass mich bis heute begleitet: Schwarmrobotik. Gewöhnlich werden Bachelorarbeiten auch alleine verfasst, aber es ist auch möglich diese zu zweit zu verfassen, insofern man hervorhebt welche Leistungen von wem erbracht wurden. Ich habe mit dem Mitstudenten schon in sehr vielen Projekten zusammengearbeitet und dementsprechend waren wir schon aufeinander eingestimmt. Ausserdem waren wir auf einem gleichen Leistungsniveau und konnten uns gut ergänzen, sodass wir sehr effektiv miteinander arbeiten konnten. Für unsere Arbeit wurden wir später auch ausgezeichnet.
  • Netzwerkalgorithmen (5CP, Wahlpflicht): Mir fehlten noch 3 oder 4 CP, also habe ich noch Netzwerkalgorithmen neben der Bachelorarbeit gehört. Netzwerkalgorithmen hat nichts mit Computernetzen sondern eher mit Graphentheorie zu tun. Aufgrund meines Nebenfachs hatte ich aber einen enormen Vorteil.
  • Knowledge Based Systems (5CP, Master-Modul): Die zu dem Zeitpunkt einzige KI-Vorlesung. Da ich aber die Punkte für meinen Bachelor schon zusammen hatte, habe ich die Prüfung nicht abgelegt, sondern die Vorlesung nur aus Interesse gehört.

 

Ende November gab es dann eine Abschlussveranstaltung mit Urkundenverleihung und Preisverleihung. Sie war aber nur ein optionales Extra. Da ich einen sehr guten Abschluss hatte, bin ich aber hingegangen. Unsere Bachelorarbeit hat tatsächlich einen Preis gewonnen. Wir wurden nicht vorher informiert und mein Mitstudent ist auch nicht zur Veranstaltung gekommen. Ich wäre beinahe auch nicht hingegangen, da mein Anzug doch etwas eng geworden ist. Glücklicherweise bin ich aber doch gegangen und habe den Preis (je ein iPad und ein Abendessen im LaCupola) dann für uns beide angenommen. Das Abendessen fand dann nach Absprache Ende Februar statt. Es war ein vergnüglicher Abend mit der Vorsitzenden der GI Regionalgruppe Braunschweig und ihrem Sohn (auch in der Informatik).

Das Informatik-Studium an der TU-Braunschweig kann ich im Nachhinein nur empfehlen: Die Vorlesungen sind zwar nicht immer so gut wie an den großen Universitäten, aber dafür muss man sich gewöhnlich nicht um Sitzplätze prügeln und man hat einen sehr direkten Kontakt zu den Professoren. Die Studentenzahlen in der Informatik sind in der letzten Zeit gestiegen, daher weiß ich nicht wie das in Zukunft aussehen wird. Aber auch wenn sich die Studentenzahl verdoppelt, werden die späteren Wahlpflicht Kurse nicht viel mehr als 30-40 Studenten haben.

Desweiteren gibt es sehr viele HiWi-Jobs sodass jeder halbwegs talentierte Informatik-Student sich seine Brötchen verdienen kann. Die Bezahlung ohne Studienabschluss liegt meiner Erinnerung nach bei etwa 9Euro die Stunde bei etwa 30-40 Stunden im Monat. Ausserdem lernt man in den meisten Jobs noch eine Menge und ist auch in die Forschung oder Lehre eingebunden.

FAQ:

Wie sieht es mit Englisch aus? In den ersten zwei Semestern kann man sich vor Englisch noch drücken, aber spätestens im 3. Semester werden Material und Literatur englischsprachig sein. Je weiter man voranschreitet, desto mehr verdrängt Englisch Deutsch. Am Ende des Bachelors wirst du flüssig Englisch verstehen und schreiben können (müssen) oder du hast schwere Probleme in der Zukunft. Mach dir darüber aber keine Sorgen, das kommt schon von alleine.

Muss ich ein Nebenfach belegen? Ja, aber es nimmt nur 15CP von 180CP ein. Ausserdem gibt es interessante Nebenfächer. Du kannst überall reinhören, aber bevor du dich Prüfen lassen willst, musst du dich festlegen.

Bis wann muss ich mich entscheiden, ob ich eine Prüfung ablege? Du musst dich in der Mitte des Semesters anmelden, kannst dich aber bei schriftlichen Klausuren bis zum Abend vor der Klausur wieder abmelden. Falls du dich also überschätzt hast und am Tag vor der Klausur noch nicht 100% fit bist, kannst du dich noch schnell um entscheiden.

Kann man Noten verbessern? Ja, das ist in beschränktem Rahmen möglich. Ein schlechter Tag in der Klausurenphase muss dir also nicht den Schnitt versauen.

Printing Course Slides

The most PDF-Reader do not support good arrangements for slides.
The most PDF-Reader do not support good arrangements for slides.

If you want to print your slides with Linux you have not that much choice how to arrange them. For 4:3-Slides, which should be the most common, 2×4 slides per page would be ideal. Unfortunately the print-menu of the most PDF-Viewer do not have this configuration.
Also it would be nice if there could be some extra space for the punch holes. And since we want to print double-sided to save paper (and to let it look less. It’s hard to motivate yourself with a thick bunch of paper.), the extra space has to be different for the even and the odd pages.

A optimal page usage with extra space for the punch holes. The content of the slides can be ignored. It's simply the first set of slides I found and not the best.
A optimal page usage with extra space for the punch holes. The content of the slides can be ignored. It’s simply the first set of slides I found and not the best.

A simple tool to generate such a printable PDF is pdfnup out of the pdfjam package. The used command is

pdfnup --twoside --nup 2x4 --suffix '2x4' --no-landscape --offset '0.8cm 0cm' --scale '0.95' slides.pdf
  • –twoside
    We want to print two-sided. If your printer does not support that, you can simply print first all odd pages and afterward you put the printed pages back into the printer and print the even pages on their backside.
  • –nup 2×4
    For the 2×4 arrangement.
  • –suffix ‚2×4‘
    The output-file will have ‚2×4‘ as suffix
  • –no-landscape
    If you want to print landscape you can write –landscape but then the 2×4 arrangement would be very bad.
  • –offset ‚0.8cm 0cm‘
    The offset for  the punch holes. 0.8cm for the side with the punch holes and 0cm for the other
  • –scale ‚0.95‘
    Maybe you have to vary the scale if the single slides are too big or small.
  • slides.pdf
    The input file

Getting notified of exam results posted on webpages

Das Warten auf Klausurergebnisse ist meistens sehr anstrengend. Insofern die Ergebnisse auf der entsprechenden Website veröffentlich werden, ist es nicht unwahrscheinlich das man jede Stunde die Seite lädt und das teils für einen verhältnismässig langen Zeitraum. Ich kann mich an eine Klausur erinnern bei der das erwartete Veröffentlichungsdatum unbekannt war und die Veröffentlichung fast 2 Monate brauchte. Die Klausur war, wie uns auch bekannt war, bereits am selben Tag korrigiert worden aber aus irgendeinem Grund wurde die Veröffentlich verzögert. Da das nervöse Neuladen äusserst ungesund ist, wäre es besser seinen Computer für einen auf Updates zu achten und ihn uns benachrichtigen lassen, sobald die Ergebnisse da sind.

Ein Tool zu finden, das in der Lage ist zu kontrollieren, ob ein Update wirklich die Ergebnisse enthält ist nicht so einfach, aber einfache Update-Benachrichtiger gibt es genug. Da es sehr wahrscheinlich ist, dass wenn die Website upgedated wird, wirklich die Klausurergbnisse enthält, sollte uns das ausreichen. Ein einfaches Tool hierfür ist das Firefox-Addon Update Scanner.

This message is shown, if a scanned webpage has been updated.
This message is shown, if a scanned webpage has been updated.
Eine Seite auszuwählen, die regelmäßig überprüft werden soll ist ziemlich einfach. Es muss einfach nur die Seite besucht werden, ein Rechtsklick gemacht und der Eintrag ‚Scan Page For Updates…‘ ausgewählt werden. Anschließend kannst du ein Limit an Zeichen definieren die ignoriert werden sollen (Zum Beispiel wenn die Webseite dynamisch das aktuelle Datum anzeigt). Wenn sie kein dynamischen Inhalt besitzt, sollte du diese Funktion deaktivieren damit du kein Update verpasst.
Chosing a page can be made by a right mouse click.
Chosing a page can be made by a right mouse click.
The configuration after the right mouse click
The configuration after the right mouse click
Nachdem der Scanner für die Seite konfiguriert wurde kann man sich zurücklehnen und auf die Ergebnisse warten. Wenn die Seite verändert wurde, wirst du die Benachrichtigung von oben sehen und die Website wird sich öffnen mit den in Gelb hervorgehobenen Änderung.
The changes are marked in yellow.
The changes are marked in yellow.
Für andere Browser gibt es ähnliche Erweiterungen.

PDFs unter Linux bearbeiten/annotieren

Nicht jedes Vorlesungsmaterial will man ausdrucken, aber doch hat man regelmaessig das Beduerfnis wichtige Passagen zu markieren oder Bemerkungen anzufuegen. Waehrend etliche PDF-Reader unter Windows das von Haus aus koennen, kann unter Linux das leider fast keiner. Im Folgenden werde ich ein paar Linux Tools vorstellen, die diese Funktionalitaet erbringen. Es werden ausschliesslich Tools betrachtet die auch als Reader zu gebrauchen sind, alles andere wuerde die Produktivitaet wohl kaum foerdern.

Der einzige echte Linux-PDF-Reader der Annotationen und Markierungen beherscht ist Okular aus KDE. Zwar bringt dies den Nachteil mit sich, das Teile der KDE-Umgebung installiert werden muessen, jedoch gibt es in der KDE-Welt einige gute weitere Programme und derzeit wird auch wohl die Trennung der Anwendungen vom Desktop vorrangetrieben (Dies habe ich vor kurzem irgendwo mal gelesen. Ob dies korrekt in meinem Gedaechnis geblieben ist, kann ich nicht garantieren.). Okular ist zwar ein wenig langsammer als Evince (Default auf den meisten Systemen), aber bietet einen wenig besseren Nutzerkomfort und kann, wie schon angesprochen, zusaetzlich auch noch Annotieren und Markieren.

Beispiel in Okular
Beispiel in Okular

Okular verfuegt ueber ein paar Tools die sich angenehm per Maus benutzen lassen aber auch per Shortcut mit [F6] zum aktivieren des Bearbeitungsmodus und dann den Tasten 1-9 zur Auswahl des Tools. Die Feineinstellungen fuer die Markierungen lassen sich leider nur einzeln ueber Rechtsklick und Bearbeiten machen und leider ist die unveraenderbar Grundeinstellung fuer Unterstreichen und Ellipse unbrauchbar, da sie den Text unlesbar machen. Der Marker hingegen funktioniert sehr gut und auch die blauen Boxen lassen sich schnell ziehen. Alle Bearbeitungen lassen sich auch nachtraeglich noch veraendern oder wieder entfernen, da sie nicht in der PDF selbst, sondern extern von Okular gespeichert werden. In den neueren Versionen von Okular koennen die Annotionen aber auch exportiert werden. Okular verfuegt auch im Praesentationsmodus ueber eingeschraenkte Malfunktionen.

Xournal ist im Gegensatz zu Okular kein echter PDF-Reader, kann aber PDFs sowohl importieren, als auch exportieren. Es annotiert weniger, als das es ‚Malwerkzeuge‘ in Form von Marker, Stift und Text sowie dafuer Linial und Form-Erkennung. Leider bietet es aber keine Texterkennung, was sauberes Markieren ausserordentlich umstaendlich macht, und zusaetzlich auch keine Shortcuts.

Xournal Beispiel
Xournal Beispiel – Beim gelben Marker ist zu erkennen, dass verschiedene Markierungen interferieren und somit den Text unleserlich machen koennen.

Obwohl die Nutzerfreundlichkeit dadurch gegenueber Okular deutlich geringer ist, hat man aber auch viel mehr Moeglichkeiten fuer umfangreichere Bearbeitungen. Auch die Optionen fuer die einzelnen Tools wie ‚Farbe‘ etc. lassen sich viel schneller wechseln als in Okular. Ein gezieltes Loeschen von Markierungen ist nicht moeglich, dafuer stehen aber Radierer zur Verfuegung. Wer also intensiveres Bearbeiten von wenigeren Seiten vorhat, faehrt mit Xournal vermutlich deutlich besser. Wenn man hingegen einfach nur die wichtigen Stellen in einem laengerem Skript markieren will, der sollte aufgrund der hoeren Benutzerfreundlichkeit und den besseren Reader-Eigenschaften lieber auf Okular zurueckgreifen.

Fuer Bearbeitungen die weit ueber das Markieren hinaus gehen sollen, sei auch darauf hingewiesen, dass Inkscape das OpenSource Pendant zu Adobe Illustrator, auch PDFs bearbeiten kann. Allerdings wird man hiermit keinesfalls mehr als eine Seite bearbeiten wollen, da es keinerlei Reader-Eigenschaften aufweist.

Wer einfach nur seine Vorlesungsfolien zur Klausurvorbereitung auf das wesentliche kuerzen will, indem man die unwichtigen Folien die man bereits auswendig kann entfernt, wird vermutlich auch mit pdfshuffler gluecklich werden. Mit diesem kann man sich bequem die Folien ansehen und nach belieben Loeschen/Drehen/Verschieben. Auch wenn der Viewer eigentlich nur zur Auswahl der Folien dienen soll, kann er dank der Zoom-Funktion auch als Reader benutzt werden, wobei hierbei leider die Schaerfe etwas zu wuenschen uebrig laesst. Dafuer lassen sich auch 1000+ Folien nach ein wenig Ladezeit ruckelfrei ansehen.

PDF-Shuffler mit Zoom auf 3 Seiten
PDF-Shuffler mit Zoom auf 3 Seiten

to be continued…

Siehe auch meinen Artikel zu Vorlesungsfolien auf EBook-Reader

Vorlesungsfolien auf E-Book Reader Kindle

Etliche Vorlesungen werden heute nichtmehr mit Skript und Tafel gefuehrt, sondern nur noch mit Folien ala PowerPoint. Da die Anzahl der Seiten dieser jedoch teils sehr hoch sein kann (Teils 1000+) und sich am Computer nur bedingt lernen laesst, habe ich mir ein Amazon Kindle geholt, welches mit damals 99Euro bereits recht guenstig war (Wenn man das WLAN deaktiviert und nur USB benutzt ist man auch von Amazon ‚befreit‘).

Auch wenn das E-Ink Display wirklich extrem angenehm ist und das 4:3-Verhaeltnis optimal fuer die Vorlesungsfolien im selben Format sein sollte, so macht die Fortschrittleiste des Kindles doch Probleme, da durch diese eine Seite nichtmehr ganz auf das Display passt und Kindle eine Folie auf zwei Seiten spaltet. Alternativ kann man natuerlich einfach im Hochkantmodus bleiben, aber dann nutzt man nur die Haelfte des Displays. Dies war fuer mich nicht aktzeptabel. Ich wollte eine Seite fuer eine Folie und den kompletten Display benutzen. Gluecklicherweise ist dies mit leichten Modifikationen der PDFs moeglich.

Wenn wir die Folieseiten einfach um 90Deg drehen, stellt das Kindle die Folien im Hochkantmodus wie im Seitwaertsmodus dar, ohne sie zu spalten. Dies kann pdftk recht einfach und ohne das die PDF gigantisch gross wird (Dies war bei meiner ersten Idee, das Folienformat anzupassen, der Fall). Der Befehl hierfuer ist:

pdftk folien.pdf cat 1-endE output folienKindle.pdf

Falls ihr Dozent pro Kapitel einen Foliensatz macht, ist es eventuell noch ganz praktisch, die zu einer PDF zusammenzufuegen. Auch dies kann pdftk problemlos:

pdftk 1.pdf 2.pdf 3.pdf cat output 123.pdf

Vorlesungsfolie auf Kindle

Mit diesen beiden Tricks stellt ein E-Book Reader die perfekte Moeglichkeit dar, fuer eine Vorlesung zu lernen. Jede Seite fuehlt sich an wie eine grosse Karteikarte, nur das man das komplete Semester in der Jackentasche verstauen kann um im Bus nochmal die letzte Vorlesung zu rekapitulieren.

Anmerkung:  pdftk ist auch fuer Windows und Mac verfuegbar.

Fuer speziellere Beduerfnisse bietet sich auch pdfshuffler an. Fuer automatisiertes Vorgehen (automatischer Download und Konvertierung und Uebertragung der neusten Folien aufs Kindle) ist dieser zwar nicht geeignet, dafuer lassen sich gut die ‚unwichtigen‘ Folien aussortieren.

Zerlegen einer 2x1-PDF in die urspruenglichen Folien
Zerlegen einer 2×1-PDF in die urspruenglichen Folien mit pdfscissors

Sollten die Vorlesungsfolien nur ‚Druckfertig‘, also z.B. 2 Folien pro Seite, angeboten werden, so kann man die PDF mit pdfscissors, einer Java-Web-Applikation die sich u.A. mit icedTea(OpenJDK) ausfuehren laesst (einfach die .jnlp Datei downloaden und ausfuehren), in entsprechende Teile zerschneiden. Dies funktioniert erstaunlich schnell und die erzeugte PDF ist kaum groesser als das Original.