Diese Website verwendet nur technisch notwendige Cookies. In der Datenschutzerklärung können Sie mehr dazu erfahren.

Zum Hauptinhalt springen
Logo, Startseite der Hochschule der Medien
Veranstaltungsbeschreibung

113490a History of Programming

Zuletzt geändert:20.09.2023 / Soller
EDV-Nr:113490a
Studiengänge: Medieninformatik (Bachelor, 7 Semester), Prüfungsleistung im Modul History of Programming in Semester 4 6 7
Häufigkeit: unregelmäßig
Dozent: Stephan Soller
Link zur Veranstaltung / zum E-Learning-Kurs: History of Programming Ilias-Kurs
Sprache: Deutsch
Art: -
Umfang: 4 SWS
ECTS-Punkte: 5
Prüfungsform: RE
Beschreibung:

Ziel von History of Programming ist es die Vergangenheit anzuschauen um für die Zukunft zu lernen. Welche Dinge haben wir als Programmierer versucht, was hat funktioniert, was ist explodiert und was ist draus geworden. Mit etwas Glück erweitert es die eigene Perspektive und man fällt nicht mehr auf jeden Hype-Train herein der altes wieder nur neu aufwärmt und an den gleichen Problemen scheitert wie davor. Oft gibt es in der Geschichte auch sehr gute Ideen und Lösungen die einfach in Vergessenheit geraten sind (weil man z.B. nur 16 KiByte Arbeitsspeicher hatte) und nur darauf warten noch mal genauer angeschaut zu werden.

Dabei geht es aber nicht nur um die Technik. All zu oft spielt die Gesellschaft außenrum, Business und Profit, Politik oder schlicht die grenzen des menschlichen Geistes eine große Rolle. Programmierer sind auch Menschen die anfällig auf Werbung und Mode sind, ihre eigenen Glaubenskriege austragen oder manchmal einfach profitgierig sind. Alles Aspekte die wir viel zu gern als "nicht-technisch" ignorieren aber oft darüber entscheiden ob eine Technologie sich verbreitet oder nicht.

Zeitlicher Ablauf der Vorlesung

  • 2 Wochen Team- und Themafindung, Vorlesung und Diskussion zu diversen historischen Themen¹.
  • 5 Wochen Fragerunden zur Präsentationsvorbereitung, Vorlesung und Diskussion zu diversen historischen Themen¹.
  • 4 Wochen Präsentationen von Studenten: Jedes Team hält seine Präsentation.
  • 3 Wochen Vorlesung und Diskussion zu aktuellen Herausforderungen in der Programmierung².

¹: Einige Themen stehen zur Wahl, von Steampunk-Computern von 1830 bis zu den BrowserWars oder Multithreadding. Je nach dem was die meisten interessiert.
²: Ziel ist es mit dem Wissen aus der Vergangenheit zu überlegen wie wir aktuelle Probleme in der Programmierung lösen können. Evt. bekomme ich auch einige externe Bekannte organisiert die erzählen wie es momentan für Nicht-Programmierer ist mit Programmierern zusammen zu arbeiten und was man daraus lernen kann.

Der Rest der Zeit ist Puffer, kein Plan überlebt den Semesterstart. ;)

Struktur der Präsentation

In den ersten 2 Wochen werden Teams gebildet (2-4 Studenten pro Team) und jedes Team pickt sich eine Frage aus einem Fragenpool raus. Benotung ist normalerweise als Gruppennote, geht bei Bedarf aber auch als Einzelnote. Die Fragen drehen sich oft um aktuelle Themen aus der Programmierung, Technik, Gesellschaft, Umwelt, usw. Sie ist als Orientierung für die Recherche gedacht so dass man das Kernthema nicht so schnell aus den Augen verliert.

  • Im Team recherchiert man dann die Geschichte zu dieser Frage. Was wurde probiert, was ist wirklich passiert und raus gekommen. Ziel ist es hier die Perspektive von den Personen damals zu verstehen.
  • Normalerweise ist ein Thema viel zu umfangreich um es komplett zu recherchieren, sucht statt dessen nach interessanten Stories oder Aspekten dazu (und was man aus diesen lernen kann) und beschränkt eure Rechere dann auf den dafür relevanten Inhalt. Das ist am Ende eure eigene Interpretation der Geschichte, sowas wie eine "objektive" Geschichte gibt es nicht.
  • Recherchiert evt. andere Gebiete die mit ähnlichen Problemen zu kämpfen hatten und was da passiert ist. Oft gibt es da Ähnlichkeiten die wir gern in unserem Tunnelblick vergessen (z.B. zwischen Programmierung von Multi-Core CPUs und Koordinierung von Menschen in Teams und Organisationen).
  • Beantwortet die Frage mit dem was ihr bei eurer Recherche gefunden habt.
  • Erarbeitet Handlungsempfehlungen wie andere Programmierer das Problem lösen oder gar vermeiden können. Das ist der Teil bei dem wir aus der Vergangenheit lernen um die Zukunft besser zu machen.
  • Wichtig ist dass ihr nicht nur sagt was ihr irgendwo gelesen habt sondern selbst über das Thema nachdenkt. Ihr seit nicht mehr in der Schule, sonder hier um selbst zu denken und nicht gedachtes wieder zu geben. ;) Bringt dabei gern eure eigene Lebenserfahrung mit ein (Umfeld, Ausbildung, Praxissemester, usw.).

Wenn ihr Ideen für eigene Themen habt können wir da in den ersten 2 Wochen auch eine Frage draus basteln. Ihr müsst eure eigene Frage dann aber genauso tief recherchieren. Einfach eine Liste von historischen Ereignissen zu erzählen bringt niemanden viel, das kann man auch bei Wikipedia nachschauen. Wichtig ist was wir draus lernen können. ;)

Die Vorlesung wird jedes Semester auf Basis von Feedback umgebaut. Daher unterscheidet sie sich teils sehr stark vom vorherigen Semester. Also nicht wundern wenn es nicht genau das ist was euch andere Studenten erzählen. Außer Katzenbilder, manche Dinge ändern sich nie. ;)

Internet:

Wird in der Vorlesung besprochen. Ausschnitt der Möglichkeiten:

  • Wikipedia (guter Einstieg um relevante Quellen zu finden)
  • Alte bzw. relevante Paper
  • Vortäge (z.B. Videoaufzeichnungen)
  • Bücher (wenn man eines zum Thema findet)