The Programming Historian

Titel
The Programming Historian.
Autor(en)
Adam Crymble (English) / Maria José Afanador-Llach (Spanish) / Sofia Papastamkou (French); et. al.
Veröffentlicht durch
Editorial Board of the Programming Historian
Von
Martin Dröge, Universität Paderborn

Ob Historiker/innen Programmieren können sollten, ist eine Frage, die in der digitalen Geschichtswissenschaft immer wieder Anlass zur Diskussion bietet.1 Es finden sich im World Wide Web viele Möglichkeiten, sich Programmierkompetenzen selbstständig anzueignen – auch speziell für Historiker/innen. Schon seit über zehn Jahren existiert das Projekt „The Programming Historian“: 2008 haben William J. Turkel und Alan MacEachern für das Network in Canadian History & Environment (NiCHE) mit einer Reihe von Tutorials zur Skriptsprache Python den Grundstock geschaffen für die hier zu rezensierende Webseite, die grundlegende Programmierkenntnisse, digitale Methoden sowie den Einsatz digitaler Werkzeuge in der geschichtswissenschaftlichen Forschung – nicht nur – für Historiker/innen vermittelt. Auf der Digital Humanities Konferenz 2012 in Hamburg wurde das Projekt offiziell als akademisches Open Access Journal gestartet und führt daher eine ISSN-Nummer. Mittlerweile betreut ein Team von rund 25 Forschenden und Lehrenden aus sechs Nationen die Autoren, Editoren und Gutachter der Beiträge.2 2016, 2017 und 2018 erhielt „The Programming Historian“ jeweils einen Digital Humanities Award für die beste Blogpost-Reihe.3

Im Bereich der digitalen Geschichtswissenschaft setzt „The Programming Historian“ sowohl in methodischer, inhaltlicher, technischer als auch gerade in didaktischer Hinsicht Maßstäbe. Nicht nur mit der Peer Review der über 80 Tutorials setzt die Webseite als ein internationaler Leuchtturm der digitalen Geschichtswissenschaften Standards, sondern ebenso im Bereich Open Source, denn mit einer offenen CC-BY 4.0-Linzenz können die Beiträge unter Nennung der Herkunft frei nachgenutzt werden. Zudem nutzt das Redaktionssystem des Projekts technisch durchdacht „git“ und „GitHub“, um die kollaborative Zusammenarbeit bei der Erstellung, Begutachtung und Versionierung der Beiträge zu organisieren, sodass die Publikation der Beiträge über einen ineinandergreifenden Workflow realisiert werden kann. Das Projekt lebt zudem vom freiwilligen Engagement der Autoren und Gutachter: Im Sinne eines Community-Building informiert die Webseite ausführlich, wie eine Mitarbeit möglich ist. Zudem berichtet ein eigener Blog über Neuigkeiten des Projekts, über Ideen für die digitale Geschichtsforschung und über Einsatzmöglichkeiten der Tutorials in der Lehre.4 Wegweisend ist auch die Diversity Policy, die sich das Projekt selbst gegeben hat.5

Das Herzstück von „The Programming Historian“ sind die Tutorials, die als „Lessons“ bezeichnet werden. Diese werden drei unterschiedlichen Schwierigkeitsgraden zugeordnet – nur die wenigsten haben die höchste Stufe –, sodass zum einen interessierte Einsteiger angesprochen werden, zum anderen aber auch Fortgeschrittene auf dem Feld der digitalen Geschichtswissenschaft auf ihre Kosten kommen. Der „Lesson Index“, eine Übersicht über die angebotenen Beiträge, ermöglicht verschiedene Zugriffe.6 Zum einen findet sich die Option, die Lessons nach den Phasen des Forschungsprozesses zu kategorisieren: Erheben, Umwandeln, Analysieren, Präsentieren und Erhalten sind die fünf auswählbaren Kategorien. Zum anderen können die Tutorials nach generellen Themen verschiedener digitaler Methoden geordnet werden. Ferner ist es möglich, die Tutorials nach Publikationsdatum sowie nach Schwierigkeitsgrad zu sortieren.

Die Lessons selbst bieten direkt zu Beginn neben dem Titel die Kurzangaben zum Inhalt, den Namen des Autors bzw. der Autorin, aber auch die Namen derjenigen Personen, die den Beitrag ediert und begutachtet haben. Auf diese Weise werden die Qualitätsstandards deutlich und es wird transparent gemacht, wer für das Tutorial (mit)verantwortlich ist. Ebenso wird das Publikationsdatum sowie der Zeitpunkt der letzten Überarbeitung angegeben. Auf das Inhaltsverzeichnis folgt jeweils eine Einleitung in das bearbeitete Thema, das in dem Tutorial vermittelt werden soll. Danach findet sich bei den meisten Beiträgen eine Anleitung, wie die benötigte Software zu installieren ist. In den Tutorials wird dabei ausschließlich Open Source Software genutzt. Der Hauptteil der Beiträge umfasst eine Schritt-für-Schritt-Anleitung, die die Anwendung der Software oftmals unterstützt durch illustrierende Grafiken erklärt oder im Text eingebundene Zeilen des Programmcodes erläutert. Die zu programmierenden Codezeilen können als kurze ausführbare Skripte heruntergeladen werden, damit das Vorgehen und der Ablauf des Programms nachvollziehbar sind. Es empfiehlt sich allerdings, die Zeilen des Programmcodes selbst in einen Editor einzugeben, denn auf diese Weise ist der Lerneffekt höher. Fehler in den Skripten haben nämlich zur Folge, dass die kleinen Programme nicht mehr ausgeführt werden können. Die eigenständige Suche nach diesen Fehlern und die selbstständige Korrektur hilft dabei, die ersten Schritte des Programmierens besser zu verstehen.

Die Tutorials bieten zum Schluss hilfreiche Links und weiterführende Literatur. Die Bereitstellung einer vollständigen Orientierungsgrundlage in Form von ausführlichen Anleitungen, gezielten Hilfestellungen und zusätzlichen Denkanstößen unterstützen zielführend und problemorientiert das Erlernen und das Einarbeiten in digitale Tools und Methoden. Die kleinteiligen, schrittweise vorgehenden und gut erklärten Lessons von „The Programming Historian“, die teils aufeinander aufbauen und sich aufeinander beziehen, ermöglichen somit einen guten Einstieg in die digitale Geschichtswissenschaft – auch die englischsprachigen Texte stellen dabei kein Hindernis dar. Auch für versiertere digitale Historiker/innen ist die Webseite eine Fundgrube für neuere Verfahren, Methoden und Anwendungen, die die Forschung mit größeren digitalen Datenbeständen erleichtert.

Das Spektrum der inhaltlichen Themen, die aufgegriffen und vermittelt werden, ist sehr breit gefächert. Neben grundlegenden Einführungen in den Gebrauch der Kommandozeile oder in die Skriptsprache Python und Anleitungen für einfach einzusetzende Tools wie Omeka, Wget und Markdown sowie Versionierungstools wie git und der dazugehörigen Plattform GitHub finden sich anspruchsvollere Tutorials zur Stylometrie und Sentiment Analyse, aber auch Themen wie Distant Reading, Web Mapping und Web Scraping werden vermittelt. Weitere Lessons befassen sich mit den Möglichkeiten von Linked Open Data ebenso wie mit Fragen des Datenmanagements oder der Manipulation und der Transformation von Daten. Ferner werden der Einsatz digitaler Strategien in der Netzwerkanalyse sowie die Anwendung von Geoinformationssystemen thematisiert. Diese Aufzählung vermag nur einen kurzen Eindruck zu geben, welche thematische Bandbreite „The Programming Historian“ abdeckt. Eine vollständige Auflistung und Diskussion der Inhalte aller Tutorials würde den Rahmen der Rezension sprengen. Wichtig ist jedoch festzuhalten, dass die Vielfalt der angebotenen Tutorials weiter wächst – nicht nur, weil immer mehr Beiträger/innen sich beteiligen, sondern auch, weil das Projektteam die Nutzer/innen dazu auffordert, Wünsche zu äußern, welche inhaltlichen, methodischen und technischen Themen in einem Tutorial noch umgesetzt werden sollten.

Ein Punkt, der sicherlich erforderlich wäre und unverständlicherweise bislang noch nicht geschehen ist, ist die Überarbeitung der grundlegenden und einführenden Lessons zur Skriptsprache Python, die sich noch auf die Version 2.7 beziehen. Obwohl diese Version von Python zwar noch immer vielfach in Anwendung ist, sollten diese Tutorials – da lediglich kleinere Anpassungen vorgenommen werden müssten – auf die mittlerweile bereits existierende Version 3.7 aktualisiert werden. Ein zweiter Aspekt der hilfreich wäre, bestünde in moderierten Kommentaren bzw. einem FAQ-Forum zu jedem einzelnen Tutorial, in denen die wichtigsten und wiederkehrenden Nachfragen gebündelt werden und dort von den Usern direkt eingesehen werden können.

Ist neben einer spanischsprachigen und einer französischsprachigen Version auch eine deutsche Übersetzung von „The Programming Historian“ wünschenswert? Ja, weil dann eine weitere Verbreitung digitaler Kompetenz und Programmierkenntnisse unter deutschen Historiker/innen möglich würde. Nein, weil die Beiträge in englischer Sprache sehr gut verständlich sind. Allerdings wäre eine stärkere Beteiligung von Historiker/innen aus dem deutschsprachigen Raum bei diesem länderübergreifenden Gemeinschaftsprojekt sicherlich wünschenswert. Müssen Historiker/innen nun Programmieren können? Nein, das müssen sie nicht unbedingt – es ist aber in vielen Fällen sehr nützlich und es kann tatsächlich Spaß machen.

Anmerkungen:
1 Siehe dazu Mareike König, “Der Historiker von morgen wird Programmierer sein oder es wird ihn nicht mehr geben” #dguw15, 3. April 2015, https://dguw.hypotheses.org/98 (21.08.2019) und die Kommentare zum Blogpost.
2 Adam Crymble, A Decade of Programming Historians, 23. März 2018,
http://niche-canada.org/2018/03/23/a-decade-of-programming-historians/ (21.08.2019)
3 Vgl. https://programminghistorian.org/posts/dh-award-2016; https://programminghistorian.org/posts/DH-Award-2017; https://programminghistorian.org/posts/premio-hdh-2018 (21.08.2019).
4 Vgl. https://programminghistorian.org/blog
5 Vgl. https://programminghistorian.org/en/about
6 Vgl. https://programminghistorian.org/en/lessons/

Redaktion
Veröffentlicht am
Beiträger
Redaktionell betreut durch