Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

*Dieses Buch ist immer noch "Work in Progress", aber eines Tages soll es das "perfekte Python Buch für blutige Anfänger" werden, die in Digital Humanities einsteigen wollen.*

Dieses Buch ist für all diejenigen, die blutige Anfänger in Programmierung oder Digital Humanities sind. Bis zum Ende des Buches werden dir all diese Punkte näher gebracht:

  • Die Basics von Programmierung
  • Verschiedene Methoden der Analyse von schriftlichen Werken
    • Wordcloud, Sentimental Analysen mit Neuralen Netzwerken, etc.

Allgemeines Ziel dieses Buches ist es, das Verständnis dafür zu entwickeln, wie wir mit Python Texte analysieren, um wertvolle Erkenntnisse aus großen Textmengen zu extrahieren.

Falls du ein blutiger Anfänger in Python sein solltest, dann lohnt es sich über das Kapitel Grundlagen zu gehen, sonst nutze dieses Buch gerne als Nachschlagewerk und springe zu den Kapitel, die dich interessieren.

Was ist Digital Humanities?

Digital Humanities (DH), oder auch "digitale Geisteswissenschaft" auf Deutsch, ist die Idee moderne digitale Technologien zu benuzten, um im Kontext einer Geisteswissenschaft, wie zum Beispiel der Germanistik, Japanologie, Korea Studie usw. einen Mehrwert zu schaffen. Mit Mehrwert meine ich neue Kenntnisse zu bekommen, Dinge besser oder einfacher, veständlicher zu machen.

Es ist nicht klar definiert wo Digital Humanities beginnt und wo es endet. In diesem buch werden wir Python benutzen, um menschliche, textbasierte Werke zu analysieren, aber wir sind nicht gezwungen etwas zu programmieren, damit man es DH nennen kann. Wir könnten auch Photoshop, Blender oder Adobe Premier benutzen. Auch in Kombination mit der Programmierung, um zum Beispiel 3D Modelle von alten Städten zu erstellen, in der der User rumlaufen könnte, um zu zeigen wie Menschen damals gelebt haben.

In vielen DH Projekten werden Programmiersprachen verwendet, weil die Möglichkeiten, was man alles machen kan, schier unendlich sind.

Vorallem mit dem Fortschritt in AI und LLMs kann man menschliche Texte nochmal viel besser und effektiver analysieren. Zum Beispiel werden wir im Kapitel ROBERTA Analysis LLM Modelle aus dem Internet runterladen, um damit die Gefühlslage einer Produktrezession zu ermitteln, ob es positiv, negativ oder neutral geschrieben worden ist. Oder Im Kapitel Word embeddings werde ich zeigen, wie wir eigene Neurale Netzwerk Modelle trainieren, um Ähnlichkeiten von Wörten vom unseren Trainingsmateriall zu erkennen.

Um einen besseren Eindruck zu bekommen, was alles möglich ist, möchte ich dir ein paar DH Projekte vorstellen.

DemiScript

DemiScript ist eine Annotierungssoftware entwickelt von Koray Birenheide, ehemaliger Student der Japanologie von der Goethe Universität, mit dem Ziel damit alle japanische Werke oder auch Karten zu annotieren. Man kann mit DemiScript auch Touren erstellen, die den User durch das Dokument führen und einen zum jeden Punkt extra Informationen anzeigen kann. Im Grunde genommen wie eine digitale Museumstour.

Emily Dickson Lexicon

Das Emily Dickson Lexicon ist die digitalisierte Version des Webster Lexicons, welches Emily Dickson auf ihren Schreibtisch hatte. Man kann durch alle Gedichte gehen und auf einzelne Wörter klicken, um die Definition von genau dem Lexicon zu bekommen, welches sie damals nutzte, um den Kontext der Wörter zu verstehen, die sie selber damals nutzte.

Und noch viele, viele mehr.

Vielleicht auch eines Tages werde ich hier dein Projekt vorstellen 😃

Was ist Python?

Python ist eine general-purpose language, oder Allzwecksprache auf Deutsch.

Das heißt wir können Python für so ziemlich alles verwenden. Zudem ist Python auch high level. "High level" kann man auch als "einfach" übersetzen. Programmierer kategorisieren Computersprachen in zwei Kategorieren: "high level" und "low level". "low level" bedeutet, dass etwas sehr nah an der "Maschine" ist. Sprich wenn ich "low level code" schreibe, dann könnte das bedeuten, dass ich mir mehr Gedanken machen muss, über Syscalls (Exekutionen die das Betriebssystem macht) oder ob etwas im "Stack" oder "Heap" vom RAM (Random Access Memory) gespeicher wird. Wenn du gerade nichts verstanden hast, dann ist das vollkommen ok, weil wir Python Code schreiben werden und weil Python "high level" ist, müssen wir nichts von diesen Sachen beachten und können, ohne komplette Computernerds zu sein, Code schreiben!

In anderen Worten: Low level = schwierig und High level = einfach.

Im Laufe des Buches werden wir uns auf Textanalyse, ein Teil von Digtial Humanities, konzentrieren, aber wir können mit Python auch Mobileapps, Videospiele, usw., so ziemlich alles, sogar Webseiten programmieren. Alle Skills, die du in diesem Buch lernen wirst, kannst du somit auch auf andere Bereiche anwenden und somit dein Horizont "ganz einfach" erweiteren und vielleicht sogar eine Karriere aufbauen.

Weil es nicht schaden kann, hier noch ein paar Fakten zu Python von Wikipedia:

  • Python wurde 1980 von Guido van Rossum erfunden.
  • Python ist Open Source, sprich komplett kostenlos
  • Python ist die beliebteste Sprache für Datascience und Machine Learning und dementsprechend auch perfekt für Digital Humanities

Ein großer Vorteil von Python ist, dass der Code sehr an der normalen englischen Sprache erinnert und somit einfach verständlich ist, auch für diejenigen, die noch nie programmiert haben.

# Eine Liste von Zahlen erstellen
numbers = [1, 2, 3, 4, 5]

# Gesamtwert initialisieren
sum = 0

# Schleife durch jede Zahl in der Liste
for number in numbers:
    # Hinzufügen der Zahl zur Summe
    sum += number

# Ausgabe der Gesamtsumme
print("Die Summe der Zahlen ist:", sum)

In diesem Codebeispiel rechnen wir das Ergebnis aller Zahlen zusammen und geben das Ergebnis in einer Konsole aus.
Hier ist der Output des Codes:

Die Summe der Zahlen ist: 15

Vielleicht verstehst du nicht alles sofort von diesem Codebeispiel. Darum geht es auch gar nicht. Das werden wir in den nächsten Kapiteln noch lernen. Mit dem Codebeispiel wollte ich dir nur mal zeigen wie leicht verständlich Pythoncode auch für totale Programmieranfänger sein kann.