Die Vorlesung begann mit einer ausführlichen Einführung in den Aufbau der Vorlesung.

Dabei haben wir nebenbei gleich auch ein erstes nützliches Tool kennengelernt: CodiMD. MD steht für Markdown. Beheimatet ist das CodiMD, welches wir im Unterricht nutzen, bei der GWDG. CodiMD ist ein Pad, welches einen raschen und übersichtlichen Austausch ermöglicht. Es können alle, die über den Link verfügen gemeinsam am Dokument schreiben. Weitere nützliche Funktionen sind, dass daraus Folien für z.B. eine Präsentation generiert werden können. CodiMD ist ein bisschen vergleichbar mit GoogleDocs, allerdings wird in CodiMD in Markdown geschrieben und es ist nicht bei Google angesiedelt.

Ein weiteres praktisches Tool, welches wir im Verlauf der heutigen Vorlesung kennengelernt haben, ist Mermaid. Damit können Diagramme erstellt werden. Der Vorteil an Mermaid ist, dass die Diagramme durch Schreiben von Quelltext erstellt werden, die Struktur der Diagramme wird daher dynamisch generiert und so können Inhalte verändert werden, ohne dass man die Struktur (Pfeile, Anordnung der Felder usw.) nach jeder erfolgten Änderung erneut von Hand anpassen und verschieben muss.

Mit Mermaid wurde auch das Schaubild zu den Lerninhalten erstellt. Das Schaubild ist der grobe rote Faden durch das Modul und stellt dar, was wir im Laufe des Semesters ansehen werden und zeigt die Zusammenhänge und Schnittstellen zwischen den verschiedenen Systemen und Softwares auf (leider wurde ausgerechnet dieser Teil nicht aufgezeichnet und ich war nach der Pause etwas zu spät dran, sodass ich nicht alles mitbekam… aber das wird nicht so schlimm sein, dachte ich, das würde sich im Laufe des Semesters bestimmt klären).

Schaubild zu den Lerninhalten Quelle: Skript zur Vorlesung

Einrichten der Arbeitsumgebung: Virtuelle Maschine, Ubuntu, Unix Shell

Nun ging es richtig los mit BAIN und der Einrichtung der Arbeitsumgebung. Um die Software, die wir im Kurs ansehen werden zu installieren, werden wir Linux (Ubuntu) verwenden. Hierin wenigstens die Grundlagen zu kennen und zu wissen, wie eine Shell funktioniert und aussieht, ist nützlich, weil die meisten Webserver laufen auf Linux (dies hat historische Gründe, aber dient auch der Sicherheit). Auch wenn ich selbst wohl kaum je damit arbeiten werde, hilft es im Austausch mit z.B. Kolleg*innen der IT, denn mit gewissen Grundkenntnissen kann ich besser nachvollziehen worum es geht und wir können uns präziser austauschen.

Mittels einer Virtuellen Maschine, die über die FHGR läuft, können wir auf Linux in der Version Ubuntu 20.04 LTS (dieser Zusatz ist wichtig zu wissen, z.B. wenn man etwas zu Linux Ubuntu googeln möchte) zugreifen. Das erste Einrichten und der Zugriff auf die Virtuelle Maschine klappte einwandfrei, insbesondere nachdem auch ich nach längerer Zeit endlich bemerkt hatte, dass ich den Horizon Client ja bereits letztes Semester in einem anderen Modul installiert hatte und somit eigentlich nichts weiter tun musste, sondern einfach nur loslegen konnte.
Die Anleitung für den Zugriff auf die Virtuelle Maschine findet sich zum nachschlagen im Skript.
Leider musste ich, kaum war ich in Ubuntu drin und die ersten Grundeinstellungen vorgenommen, aufgrund eines Notfalls den Kurs verlassen. Aber zum Glück wurde der Unterricht aufgezeichnet, sodass ich mir später alles verpasste in Ruhe ansehen konnte.

Ein nützlicher Befehl: alt + tab
Damit kann zwischen geöffneten Fenstern hin- und her gewechselt werden. Dies macht das Arbeiten angenehmer, besonders wenn nur ein Monitor auf kleinem Laptop vorhanden ist.

Mit der Unix Shell haben wir zwar bereits in einem anderen Modul erste Erfahrungen gesammelt, allerdings scheine ich so gut wie alles verdrängt und vergessen zu haben. Darum war ich sehr froh um den Ausflug zu den Grundlagen der Unix Shell. Die Unix Shell wird übrigens vor allem auch eingesetzt, weil die Eingabe von Kommandos via Kommandozeile statt via grafische Oberfläche viel sicherer ist, da eine grafische Oberfläche Sicherheitslücken enthalten kann. Verwendet man keine grafische Oberfläche, so kann entsprechend diese Sicherheitslücke gar nicht erst entstehen, da ja nicht vorhanden. Um uns mit der Unix Shell vertrauter zu machen, haben wir zwei Kapitel der Library Carpentry Lesson durchgearbeitet. Ich wünschte mir, ich hätte diese bereits in einem früheren Modul gekannt, dies hätte mir wohl einiges erhellt. Darum hier die Links, falls ich später nochmals nachschauend darauf zurückgreifen möchte:

Nicht vergessen: Terminal jeweils verlassen mit exit.

GitHub Pages und Markdown

Unser Lerntagebuch führen wir mit GitHub Pages. GitHub Pages ermöglicht es, statische Webseiten aus dem GitHub Repository heraus zu generieren, dazu werden die Server von GitHub verwendet und es ist kostenlos. Alles was es dazu braucht ist es, sich bei bei GitHub zu registrieren. Die Aufgabe das Lerntagebuch einzurichten hat - zu meiner grossen Überraschung - problemlos funktioniert; also abgesehen davon, dass ich das Theme ändern wollte, was mir zunächst alles verhauen hat. Ich habe dann glücklicherweise herausfinden können, wie ich das rückgängig machen kann: Die Themes werden in die Datei _config.yml geschrieben.

Da zum Schreiben in GitHub Pages Markdown verwendet wird, hier die wichtigsten Befehle, welche ich wohl am meisten verwenden werde; zusammengetragen aus dem sehr nützlichen Markdown Guide.

Markdown Bedeutung bzw. Output
[Text](Link) Link einfügen
# Überschrift Stufe 11
## Überschrift Stufe 2
**Text bold** Text bold
*Text kursiv* Text kursiv
>Blockquote Blockquote
'Das ist Code' Das ist Code
![altText](link) Bild einfügen
<small>Text kleiner</small> Text kleiner
\* Escapen
leere Linie dazwischen lassen Neuer Absatz
mind. 2 Leerschläge gefolgt von return Neue Zeile

  1. Etwas befremdlich ist, dass es die Überschrift der Stufe h1 kleiner darstellt, als h2. (Liegt vermutlich am Theme. Lösung: Keine h1 verwenden, stattdessen h2 und h3.)