Mittwoch, 29. Oktober 2025

Keltenlinks

Wegen dem anstehenden Halloween gibt es zur Zeit viele Medienbeiträge mit Kelten-Verweisen. Arte hat am letzten Samstag sogar eine neue 90minütige Doku zum Thema „Halloween - Mythos der Kelten“ angeboten. Online ist die Doku noch bis 22. Januar 2026 verfügbar. Bis 13. Dezember 2025 kann man bei Arte zudem noch auf eine vor ein paar Wochen gesendete Doku-Wiederholung über „Die Druiden - Mächtige Priester der Kelten“ zugreifen.

In der Zeit als ich meinen Text über die „Mehrfachschanze im Loh bei Oberhaching“ geschrieben habe, hatte man kurz zuvor die Ausgrabungsergebnisse aus dem Oppidum von Manching vorgestellt. Das Oppidum von Manching müßte in der Keltenschanzenwelt bis zu seinem Niedergang einen politischen und wirtschaftlichen Mittelpunkt dargestellt haben.

Der Pressetext gibt für die Errichtung der Stadtmauer von Manching die Zeit um 140/130 v. Chr. und in der Folge einen allmählichen Niedergang an: „Um die Mitte des 1. Jahrhunderts v. Chr. verlor die Siedlung allmählich ihre Bedeutung. Mit dem schrittweisen Rückzug der Bevölkerung endete das urbane Leben.“ In der Wikipedia ist der Niedergang etwas ausführlicher beschrieben: „Zwar könnte der Marsch der Kimbern und Teutonen gegen 120 v. Chr. zu einer kriegerischen Auseinandersetzung geführt haben. Das Ende von Manching ist jedoch durch den Zusammenbruch der Wirtschaftssysteme ausgelöst worden, der mit den caesarischen Eroberungen in Gallien einherging.“

Wesentlich dramatischer klingt demgegenüber das frei lesbare Intro des Geo-Bezahlartikels „Vom Alltag in der Kelten-Metropole“: Die Mauer ist ein „Symbol der Macht – und der Angst“. „ Doch um 105 v. Chr. ist Manching offenbar derart in Gefahr - vermutlich durch Germanenstämme, die raubend durch Süddeutschland ziehen -, dass die Bewohner eine Fallgrube ausheben, die die Zufahrt fast vollständig versperrt.“

Ohne diese Dramatik kommt dagegen ein an die noch bis 9. November in Iphofen stattfindende Ausstellung „Kelten in Franken“ angelehnter komplett freier Geo-Artikel unter dem Titel „"Von den Germanen aufgesogen": Der schnelle Untergang der Kelten“ aus. Er beschreibt das Verschwinden der Kelten als Assimilationsprozess: „Offenbar lebten zugewanderte Germanen und alteingesessene Kelten zunächst getrennt nebeneinander – und vermischten sich dann.“ Der Niedergang Manchings wird hier wieder als Folge von verlorenen Handelsverbindungen beschrieben.

Bei den Oppida von Manching und Kelheim konnte eine große wirtschaftliche Bedeutung archäologisch belegt werden. Im Fall des Oppidums Finsterlohr-Burgstall wurde keine derart prosperierende Siedlung nachgewiesen. Nebst der Möglichkeit, daß dort eine Keltensiedlung bestanden hat, man die aber nicht mehr auf gewohnte Weise nachweisen kann, kann es auch sein, daß die Befestigungen tatsächlich nur für den Verteidigungsfall entstanden sind.

Ähnlich Finsterlohr-Burgstall kommt mir das flächenmäßig riesige Oppidum Heidengraben vor. Hier konnte man die Siedlung zumindest in einer wesentlich kleineren inneren Befestigung verorten. Ich habe es seit einem Kurzbesuch vor mehr als 15 Jahren nicht mehr auf die Hochfläche des Oppidums geschafft. Mittlerweile wurde aber mit dem Heidengrabenzentrum ein neues Keltenmuseum eröffnet, mit dem sich eine ausstehende Erkundung der Wallanlagen ergänzen ließe.

Heidengraben und Finsterlohr-Burgstall wirken von den Funden her nicht so prickelnd, die Gegend um die Heuneburg aber schon. Für den Keltenfan besticht die Heuneburg schon allein durch ihre ikonischen Befestigungsmauern und die umgebenden Großgrabhügel. Seit meinen hier ebenfalls schon lange zurückliegenden Besuchen wurde die Heuneburg selbst durch verschiedene Maßnahmen wie die Rekonstruktion von Steinfundamenten einer Toranlage weiter aufbereitet und in der nahen Umgebung gab es Sensationsfunde wie die alten Burg bei Langenenslingen.

In der jüngeren Vergangenheit setzten sich die Fundmeldungen aus dem nahen Althayingen und Riedlingen fort. Den großen Knaller soll es allerdings bei der „Heuneburg-Aufbereitung“ geben: das bei der Heuneburg liegende landwirtschaftliche Anwesen Talhof soll nach einem Umbau zum Museum und zur Forschungsstätte Teil der „baden-württembergischen Kelten-Erlebniswelt“ werden: „Der Talhof bei der Heuneburg auf dem Weg zur Kelten-Erlebniswelt“.

Mittwoch, 15. Oktober 2025

Der Kurs „Python for Beginners“ hat begonnen

Am 8. Oktober 2025 startete der in meinem letzten Blogeintrag empfohlene Kurs „Python for Beginners“ bei OpenHPI. Das Kursmaterial ist gegenüber dem mir schon bekannten Python-Einführungskurs der Referenten Christian Drumm und Stephan Jacobs bei openSAP von 2022 neu ausgearbeitet, aber das grundlegende Schema scheint mir sehr vergleichbar geblieben zu sein.

Das Kursmaterial der zweiten Woche wurden heute (15. Oktober) freigegeben. Die Aufgaben, für die in der ersten und in der zweiten Kurswoche Punkte für den Leistungsnachweis vergeben werden, sind bis 24. Oktober zu erledigen. Man hat also für die erste Woche eine verlängerte Frist und kann auch noch in der nächsten Woche ohne zwangsläufigen Punktverlust in den Kurs einsteigen.

Der Kurs sorgt für ein notwendiges Python-Basiswissen und übt dieses Wissen mit zahlreichen meist sehr kleinen Programmieraufgaben ein. Das über den Kurs hinaus angestrebte Ziel ist, daß man möglichst viel und regelmäßig programmiert. Wenn man nicht mehr in einer Programmiersprache programmiert, ist es ziemlich normal, daß man sich irgendwann nicht mehr so gut an die syntaktischen Spezialitäten der Sprache erinnert. Aber wenn man die Herangehensweise an eine Aufgabe mehrfach geübt hat, kann man sich auch schnell wieder in die seinerzeit verwendeten Sprachmittel einlesen und auch schneller verstehen, wie man die Aufgabe in einer anderen Sprache löst.

Wie schon in meinem ersten Text erwähnt, setzt man auf Python und Jupyter Notebooks auf, beides ist also zu installieren. Das wird auch in einem vorangestellten Welcome-Teil erläutert und man darf im Forum nachfragen, wenn etwas nicht funktioniert. Für die bepunkteten Programmieraufgaben muß man nichts installieren, da klickt man sich einfach in ein vorbereitetes Umfeld bei CodeOcean ein. Dort darf/soll man ebenfalls bei Problemen fragen, in dem Fall richtet sich die Frage an die Lerngemeinschaft. Mit ihrer Aufgabe fertig gewordene Kursteilnehmer kriegen dann ab und zu noch eine Frage eines anderes Kursteilnehmers an die Gemeinschaft angezeigt, die sie beantworten können. Man sollte solche Möglichkeiten nutzen. Es mag Holprigkeiten geben, unter denen alle leiden, oder Unverständlichkeiten, die auf der Verwendung von für Anfänger schwer verständlichen Formulierungen beruhen.

Der Kurs legt zwar wie gesagt Grundlagen, die können aber schon zu sehr mächtigen Ergebnissen führen. Man kann das selbst sehen, wenn man die mittlerweile auf der Kurswebseite veröffentlichten „Course Contents“ gegen die passive Stimmung am Ende der dreiteiligen Doku „Die Odyssee der Zahlen“ hält. In der Doku wird abschließend ein Verschwinden der Zahlen so wie wir sie kennen für denkbar gehalten. Die Zahlen werden für uns verarbeitet, wir können sie zunehmend weder wie früher selbst nutzen noch mit ihnen umgehen.

Im Kurs beschäftigt man sich in der ersten Woche mit „variables, input/output, data types, and conditional statements“, also wie gelange ich zu einem einzelnen Wert, wie wird er im System aufgenommen, wie verarbeite ich den, frage ihn ab? In Woche 2 geht es mit „Lists and Loops“ potentiell schon um die in der Doku passiv erlebte Massendatenverarbeitung. Man packt seine Daten in Listen, gegebenenfalls in Listen von Listen und arbeitet die dann in Schleifen über die Listen ab, gegebenenfalls in verschachtelten Schleifen. „Complex Data Types“ in der dritten Woche verfeinert die Frage, wie man seine Daten darstellt, beispielsweise könnte man Namen mit Telefonnummern zusammenfassen wollen. „Reading and Writing Data“ in der vierten Woche gibt eine Vorstellung, wie man externe Massendaten in sein Programm einlesen, sie ändern und wieder speichern kann. Die „Functions“ in Woche 5 zeigen, wie man seine verarbeitenden Programme zusammenfassen kann. Seine Einzel- oder Massendaten übergibt man dann seiner selbsterstellen Function. Diese selbsterstellen Functions bereiten auf die in der letzten Kurswoche behandelten „Libraries“ vor. Bei größeren Programmieraufgaben werden regelmäßig „Libraries“ eingesetzt werden. Unzählige Libraries sind im Python-Universum für unterschiedlichste Einsatzzwecke verfügbar und können in das eigene Programm eingebunden werden. Sie stellen ihre Funktionalität durch zahlreiche aufrufbare Functions zur Verfügung, die man nach dem in der fünften Woche bekanntgemachten Schema nutzen kann.

Freitag, 26. September 2025

„Python for Beginners“

Die MOOC-Plattform OpenHPI bietet ab 8. Oktober 2025 eine kostenlose 6-wöchige Einführung in die Programmiersprache Python für Programmieranfänger an („No prior programming experience required“). 2022 habe ich auf openSAP an einem gleichnamigen Kurs der beiden Referenten teilgenommen. Den Kurs fand ich sehr gut und empfehlenswert und will deshalb wegen dem Bedarf an Python-Kenntnissen auf ihn hinweisen.

Vor einem Jahr hatte ich im letzten Abschnitt von „Der Oberhachinger Kyberg“ einen Hinweis auf einen startetenden openHPI-Python-Kurs in einem Blog mit zeitlichem Schwerpunkt von grauer Vorzeit bis Spätantike mit der Wichtigkeit von Python für die Digital-Humanities-Leute motiviert. Im Grunde sind aber der Phantasie über die Einsatzmöglichkeiten von KI-Anwendungen auf Basis von künstlichen neuronalen Netzen keine Grenzen mehr gesetzt. Und die zugehörigen Bücher über Maschinelles Lernen scheinen alle die notwendigen Algorithmen mit Python zu illustrieren. Man kann einwenden, daß die KI die menschliche Programmierkunst überflüssig machen könnte. Aber zum einen sind solche KI-Grundlagenbücher darauf ausgelegt, mittels den Algorithmen überhaupt zu verstehen, wie die KI funktioniert. Zum anderen programmiert man derzeit noch mit der KI, und das wird bei derzeit erscheinenden Bücher über das Thema gern auch wieder anhand von Python gezeigt.

Wenn man also eine Programmiersprache lernen will und keine Gründe für eine andere Programmiersprache hat, kann man mit Python nicht viel falsch machen. Und da es im Kurs „Python for Beginners“ um die Grundlagen geht, wird man da nur Sachen lernen, die man später immer wieder in den Programmen sehen wird. Das „In this course, we’ll use Jupyter Notebooks to teach Python“ in den aktuellen Kursinformationen bedeutete 2022, daß das im Vortrag vorgestellte Python mit Jupyter Notebooks näher erläutert wird. Jupyter Notebooks dienen dabei als Entwicklungsumgebungen, mit denen die Effekte der vorgestellten Operationen gut gezeigt und von den Kursteilnehmern über heruntergeladene Notebooks nachvollzogen werden können. Wegen der guten Kombinierbarkeit von Dokumentation und Code und der leichten Austauschbarkeit der Notebooks begegnet man Jupyter Notebooks auch in professionellen Umgebungen, sie sind etwa wie in den Kursinformationen beschrieben ein „tool of choice for data scientists“.

Mit sechs Wochen sind wie üblich ein paar Stunden pro Woche für die Vortragsvideos und die Programmieraufgaben gemeint. In meinem Leistungsnachweis wurden mir „5-7 hours of learning effort per week“ bescheinigt. Für reine Programmieranfänger habe ich den Kurs damals eher als happig empfunden. Wer sich wirklich ohne Programmiererfahrungen durchgekämpft hat, hat meinen Respekt. Mit Internetquellen oder einem Einführungsbuch und etwas mehr Zeitaufwand sollte es aber machbar gewesen sein. Das schnelle Punktesammeln auf den letzten Drücker (Abgabezeitpunkt) war aber auch mit viel Programmiererfahrung riskant, man konnte gern mal wegen unbekannten Eigenheiten längere Zeit hängen bleiben und nicht das gewünschte Ergebnis bekommen.

Das gewünschte Ergebnis zählte dann, da war die Bewertung ziemlich menschenprogrammiert und wollte nicht die Eleganz der Ausführung berücksichtigen. Man holte sich diese Programmierpunkte für den Leistungsnachweis über eine eigene Webplattform, in der man entweder direkt die notwendige Programmsequenz entwickelte oder sie aus Jupyter Notebook herüberkopierte und dann in der Webplattform startete und bewerten ließ.