Aufgefallen: Regelmäßig erfolgreich

Die Bachelorprüfungsordnung für den Studiengang B.Sc. Informatik an der Uni Bonn sagt in § 11:

(6) In Lehrveranstaltungen (mit Ausnahme von Vorlesungen), in denen das Qualifikationsziel nicht anders erreicht werden kann, kann der Prüfungsausschuss auf Antrag eines Lehrenden die regelmäßige/erfolgreiche/aktive Teilnahme als Voraussetzung für die Zulassung zur Modulprüfung festlegen. Dabei ist zu definieren, wann eine regelmäßige/erfolgreiche/aktive Teilnahme vorliegt. Die Entscheidung ist gemäß § 6 Abs. 6 bekanntzugeben.

Das funktioniert also folgendermaßen: Die Lehrperson stellt einen Antrag an den Prüfungsausschuss. In diesem Antrag steht, was die Studierenden tun müssen, um zur Klausur zugelassen zu werden. Etwa einen bestimmten Anteil an Übungsaufgaben lösen und vorstellen. Und dann wird das begründet, in der Regel mit „Sonst lernen die Kleinen keine Softskills und würden sich wissenschaftlich fehlverhalten“1.

Manche Informatikmodule werden jedoch von Professoren der diskreten Mathematik2 gehalten. Die Mathematik in Bonn, muss man wissen, ist gar überaus exzellent. Nur merkt man das nicht immer.

Blicken wir noch einmal auf obigen Absatz 6:

[…] Dabei ist zu definieren, wann eine regelmäßige/erfolgreiche/aktive Teilnahme vorliegt. […]

Und nun auf ein Paar Studienleistungen aus dem letzten Wintersemester.

Prof. Dr. Stefan Hougardy
Modul: BA-INF 107 Einführung in die Diskrete Mathematik

Erforderliche Studienleistungen gemäß § 11 (6) PO:
50 % der Übungspunkte, sowie regelmäßige, aktive Teilnahme an den Übungsgruppen. Die Bearbeitung der Übungsaufgaben kann in Gruppen bis zur Größe 2 erfolgen. Bei Abgaben in Gruppen muss jeder Teilnehmer in der Lage sein, alle abgegebenen Lösungen seiner Gruppe zu erklären.

Die regelmäßige/erfolgreiche/aktive Teilnahme liegt also vor, wenn man regelmäßig, aktiv teilnimmt. Und 50 % der Punkte erreicht. Genial! Und so exzellent definiert.

Was verlangte denn sein Kollege?

Dr. Nicolai Hähnle
Modul: BA-INF 106 Lineare und ganzzahlige Optimierung

Erforderliche Studienleistungen gemäß § 11 (6) PO:
50 % der Übungspunkte, sowie regelmäßige, aktive Teilnahme an den Übungsgruppen. Die Bearbeitung der Übungsaufgaben kann in Gruppen bis zur Größe 3 erfolgen. Bei Abgaben in Gruppen muss jeder Teilnehmer in der Lage sein, alle abgegebenen Lösungen seiner Gruppe zu erklären.

Huch! Sehen wir hier beim exzellenten Mathematiker etwa eine ungekennzeichnete Textübernahme3? Natürlich nicht. Die maximale Gruppengröße ist schließlich 3, nicht 2. Eine insgesamt ebenbürtige Studienleistung.

Generell hat die Mathematik in Bonn ein laxe Herangehensweise an Studienleistungen. Auf der Webseite der Mathematik steht aktuell zu lesen:

studienleistungen-mathe-2016

Was auch immer „erfolgreich“ heißt. Immer noch besser jedenfalls als das, was dort noch im letzten Jahr4 zu lesen war:

studienleistungen-mathe-2015

Jaja, die „erfolgreiche“ Teilnahme, bei der man aber nicht sagen will, was „erfolgreich“ heißt. Sehr lustig. Wenn wir uns im Kindergarten befinden. Bei einer Behörde im Sinne des Verwaltungsverfahrens- und Verwaltungsprozessrechtes wirkt diese Yolo-Attitüde was Studienleistungen angeht allerdings eher befremdlich.

Das mit der „erfolgreichen Teilnahme“ fanden die Mathematikerinnen und Mathematiker so toll, dass sie es sogar in ihre Prüfungsordnung von 2012 geschrieben haben (§ 11):

(6) In Lehrveranstaltungen (mit Ausnahme von Vorlesungen), in denen das Qualifikationsziel nicht anders erreicht werden kann, kann der Prüfungsausschuss auf Antrag eines Lehrenden oder Modulbeauftragten die regelmäßige/ aktive/ erfolgreiche Teilnahme als Voraussetzung für die Teilnahme an der Modulprüfung festlegen. Dabei ist zu definieren, wann eine regelmäßige/ aktive/ erfolgreiche Teilnahme vorliegt. Die Entscheidung ist vom Prüfungsausschuss gemäß § 6 Abs. 9 bekanntzugeben.
Da das Verständnis für mathematische Sachverhalte nur durch gemeinsames Lernen und aktives Lösen von Aufgaben im Austausch mit anderen Studierenden und dem Dozenten optimal erreicht werden kann, wird bei allen Übungen, die zu Vorlesungen gehören, eine erfolgreiche Übungsteilnahme als Zulassungsvoraussetzung für die Klausur oder Mündliche Prüfung verlangt.

(Hervorhebung von mir)

Was unter der „erfolgreichen“ Übungsteilnahme zu verstehen ist, steht da aber natürlich nicht.
Die persönliche Anwesenheit der Studierenden kann es schon einmal nicht sein, da das Hochschulgesetz seit 2014 explizit verbietet, so etwas in einer allgemeinen Regel festzulegen5. Ein Teil der Begründung hierfür ist bemerkenswert, wenn man ihn mit dem markierten Teil von § 11 Abs. 6 vergleicht:

Mit der Regelung6 soll zudem die Eigenverantwortlichkeit der Studierenden gestärkt und der Umstand unterstrichen werden, dass hochschulische Lehre in einer Gemeinschaft der Lehrenden und Lernenden stattfindet; Anwesenheitsobliegenheiten sind mit diesem Prinzip der Gemeinschaftlichkeit grundsätzlich nicht verträglich.

Aber was kümmert uns schon, was in irgend einer Gesetzesbegründung steht, gell.

  1. Eigentlich kann man jede Studienleistung mit „Haben wir schon immer so gemacht“ oder „Ich will das halt so“ begründen. Es gibt seltenst „die“ eine Studienleistung, die die beste ist.
  2. oder von ihren Doktoren
  3. Der Volksmund spricht hier lapidar vom „Plagiat“
  4. Ja, der Screenshot zeigt den Stand vom vorletzten Jahr. But trust me!
  5. Siehe HZG NRW mit Begründung, § 64 (2a) / PDF-Seite 261
  6. Die Regelung, auf die sich hier bezogen wird, verbietet Anwesenheitspflichten grundsätzlich. „Grundsätzlich“ im juristischen Sinne heißt, dass es sich um den Standardfall handelt, von dem es begründete Ausnahmen gibt.

Die Beitragsentwicklung des Studierendenwerks Bonn in einer handlichen Grafik

Das Studierendenwerk Bonn wird demnächst den semesterlichen Beitrag um bis zu 10 € erhöhen1. Anlass genug, sich einmal mit der Geschichte der Beitragserhöhungen des Studierendenwerks Bonn zu beschäftigen.

Nach archäologischen Ausgrabungen in den amtlichen Bekanntmachungen der Universität Bonn und tiefgehender Analyse der zutage geförderten Dokumente entstand die folgende farbenfrohe Grafik.

stwbeitragsentwicklung

Was gibt es hierzu zu sagen? Beginnen wir in der Vergangenheit. Die älteste Beitragsordnung die ich fand ist von 1999, regelt aber die Beitragspflicht „ab Wintersemester 1991/92“. Damals zahlte man 50 Deutsche Mark im Semester für allgemeine Zwecke. Hinzu kamen wohl2 noch 50 Pfennig für die „Darlehenskasse der Studentenwerke im Lande Nordrhein-Westfalen e. V.“, 40 Pfennig für die „Unfallversicherung im Privatbereich“ und zwei Deutsche Mark „für die Unterhaltung der Psychotherapeutischen Beratungsstelle des Studentenwerks“. Macht summa summarum 27,50 € im Zeitraum 1991 – 2000, wenn man der Ordnung denn glauben darf. Zum Wintersemester 2000/2001 gab es dann eine kleine Erhöhung um 10 DM auf 60 DM3.

Für das Wintersemester 2003/2004 wird vom Verwaltungsrat des Studierendenwerks im Dezember 2002 eine neue Beitragsordnung beschlossen. Diese setzt den Beitrag auf glatte 50 €4. Eine eher starke Steigerung – sollte der Beitrag in den 90ern aber tatsächlich neun Jahre lang gleich geblieben sein, war sie bestimmt gerechtfertigt.

In der Folge steigt der Beitrag alle zwei bis drei Jahre um etwa 10 €. Die Entwicklung von 2003 bis 2016 entspricht einer jährlichen Steigerung von 4,5 %. Zum Vergleich: Die durchschnittliche Inflation im Zeitraum 2003 bis 2014 in Deutschland lag bei lediglich 1,6 %. Falls ich mich nicht verrechnet habe natürlich5.

Ob man die neuerliche Erhöhung um 10 €6 nun gut findet oder nicht, dürfen alle für sich selbst beantworten. Auf jeden Fall bewegt sie sich im Rahmen dessen, was in den letzten Jahren üblich war7.

Beitragsordnungen und -sänderungen

  1. Quelle: Internet Verwaltungsrat. Und ja, bis zu 10 €.
  2. zumindest verstehe ich die Ordnung so
  3. plus die diversen Sonderabgaben für besondere Dinge.
  4. Das sind hundert Mark!
  5. Hast du etwa Prozentwerte gemittelt?!!! (Nein.)
  6. Ihr glaubt doch nicht ernsthaft, dass es weniger wird?
  7. Das haben wir schon immer so gemacht!!!

Serien-PDFs mit Inkscape erstellen

Gelegentlich komme ich in Situationen, in denen ich automatisch PDF-Dokumente erzeugen lassen möchte, die sich nur an bestimmten Stellen unterscheiden.

Das können Namensschilder mit Design sein, bei denen lediglich die Namen von Schild zu Schild unterschiedlich sind, oder Preisschildchen, oder Bauchbinden1 und so weiter…

Oft greife ich dann zu einer Kombination aus Inkscape und einer Skriptsprache, um ans Ziel zu kommen. Die Idee funktioniert folgendermaßen:

  • Zunächst wird ein Template mit Platzhaltern erstellt
  • Die Platzhalter werden mit einer Skriptsprache durch die echten Werte ersetzt und dann in einer separaten SVG-Datei gespeichert
  • Diese SVG-Dateien werden schließlich in PDF-Dateien umgewandelt

Warum das Ganze? Nun, PDF-Dateien lassen sich so schwer bearbeiten. SVG-Dateien hingegen bestehen nur aus Text. Buchstaben, Zahlen und Klammern. Darin lässt es sich ganz leicht herumeditieren.

Für alle, die mehr auf grafische Darstellungen stehen:

pdfpipeline

 

Wir beginnen mit unseren Daten, die wir ins Template einfügen möchten. Als Beispiel nehmen wir hier Deckblätter für Bekanntmachungen in der AKUT extra2. Die benötigen ein Veröffentlichungsdatum, eine laufende Nummer und natürlich einen Titel.

datum;nummer;titel
17. Juli 2016;6/2016;Satzung der Fachschaft … Bonn
11. Juli 2016;5/2016;Wahlordnung für die Wahl …
31. Juni 2016;3/2016;Änderung der Satzung …

Zu Demonstrationszwecken speichern wir diese Daten in einer Datei namens data.csv.

Als nächstes erstellen wir mit Inkscape das SVG-Template, in das die Werte eingefügt werden.

Dort, wo aktuell VARDATUM, VARNUMMER und VARTITEL steht, werden später die echten Werte eingesetzt. Der Rest ist Zierde.

Comic Saaaaaaanns!3

Dort, wo aktuell VARDATUM, VARNUMMER und VARTITEL steht, werden später die echten Werte eingesetzt. Der Rest ist Zierde. Da der Titel auch mal länger als eine Zeile werden kann, nutzen wir einen Textkasten, in dem der Text automatisch umgebrochen wird.

Das Template speichern wir als template.svg.

Als letztes Puzzlestück fehlt nur noch ein Skript, das die Werte aus der CSV-Datei nimmt und sie ins Template einfügt. Ich habe mich hier als Beispiel für Python entschieden, das Prinzip lässt sich aber mit so gut wie jeder anderen Skript- und Programmiersprache umsetzen.

(Hinweis: Zeilen mit # am Anfang sind Kommentare, die den Programmfluss nicht beeinflussen.)

#! /usr/bin/env python3

import csv
import subprocess

# csv-Datei einlesen
data = []
with open("data.csv", "r") as csvfile:
    reader = csv.DictReader(csvfile, delimiter=";")
    for row in reader:
        data.append(row)


# Für jede Zeile aus der csv-Datei: 
# - Template laden
# - Variablen ersetzen
# - als neue SVG-Datei output-i.svg speichern

i = 0
for row in data:
    with open("template.svg", "r") as t,
    open("output-{0}.svg".format(i), "w") as output:
        
        # In jeder Zeile wird die Variable (falls vorhanden) durch den
        # entsprechenden Wert ersetzt
        for line in t:
            line = line.replace("VARDATUM", row["datum"])
            line = line.replace("VARNUMMER", row["nummer"])
            line = line.replace("VARTITEL", row["titel"])
            
            # modifizierte Zeile in output schreiben
            print(line, file=output, end="")
    i += 1


# SVG-Dateien mit Inkscape in PDF-Dateien umwandeln

for k in range(i):
    subprocess.call(["inkscape", 
          "--export-pdf=output-{0}.pdf".format(k), 
          "output-{0}.svg".format(k)])

Oben wird data.csv eingelesen. In der Mitte wird immer wieder template.svg geöffnet und die oben verwendeten Variablen (VAR…) werden durch die echten Werte ersetzt. Natürlich können diese Namen beliebig angepasst werden.

Ganz am Ende konvertiert das Skript alle erzeugten SVG-Dateien mit Inkscape automatisiert in PDF-Dateien.

screenshot-result-svgpdf

Juhu! Drei neue PDF-Dateien!

Und das Ergebnis kann sich sehen lassen:

resultat-svgpdf

 

Falls die Inhalte komische Sonderzeichen wie z. B. &, “ oder < enthalten, muss das Skript noch so angepasst werden, dass diese durch ihre XML-Repräsentation ersetzt werden. Wie das in Python geht, steht z.B. hier.

  1. Wobei die als png exportiert wurden, nicht als PDF. Funktioniert aber auf die gleiche Art und Weise.
  2. Das hat ja überhaupt gar nichts damit zu tun, dass ich so etwas ähnliches heute implementiert habe.
  3. http://explosm.net/comics/2301/