I. Programmiersprachen: die Sprache der Digitalisierung
2. Programmiersprache
Programmieren oder programmiert werden
(Douglas Rushkoff, Wired Interview 2011)
Die Sprache der Digitalisierung mag zunächst aus 0en und 1en bestehen. Aber keine Sorge: Wenn wir Digitalisierung selbst mitgestalten wollen, müssen wir keine Abfolgen aus 0en und 1en in den Computer tippen. So sind vielmehr Programmiersprachen die eigentlichen Sprachen, mit denen Digitalisierung gestaltet wird.
Aber was ist eine Programmiersprache?
Ein Algorithmus ist die konzeptionelle Lösung für ein Problem. Erst durch eine Programmiersprache wird ein Algorithmus zum Leben erweckt.
- Blockbasierte, eine Form von visuellen Programmiersprachen, verwenden interaktive grafische Benutzeroberflächen. Die Benutzer können die Programmteile grafisch miteinander verbinden z.B. per Drag & Drop. Beispiele hierfür sind Snap! und Scratch. In den nächsten Kapiteln werden wir Blockly als Beispiel verwenden.
- Bei textbasierten Programmiersprachen handelt es sich um Programmiersprachen, die keine grafischen Elemente (Blöcke) enthalten; stattdessen sind sie hauptsächlich auf Text ausgerichtet. Die Benutzer müssen sich bestimmte Syntaxen oder Grammatiken merken, die für jede Programmiersprache spezifisch sind, aber ein gut ausgebildeter Programmierer kann in einer textbasierten Programmiersprache vielseitigeren Code schneller schreiben als in einer visuellen Programmiersprache. Beispiele hierfür sind Python, Java, JavaScript, C++ und C. Wir werden Python in den nächsten Kapiteln als Beispiel verwenden.
Übersicht der wichtigsten Begriffe
Warum lernen Sie die Grundkonzepte des Programmierens?
In den kommenden Modulen dieses Kurses zeigen wir Ihnen Beispiele dafür, wie Algorithmen aus der Data Science und dem Maschinellen Lernen bei der Lösung verschiedener Probleme helfen können. Die Beispiele werden in Python präsentiert.
Da dies ein Einführungskurs ist, müssen Sie selbst noch nicht programmieren. Ein grundlegendes Verständnis der wichtigsten Programmierkonzepte wird Ihnen aber helfen, die Beispiele besser nachzuvollziehen. Deshalb führen wir Sie zunächst in grundlegende Themen der Programmierung ein – etwa Variablen, Bedingungen, Schleifen, Funktionen und Listen in Python. Diese Kenntnisse sind wichtig: Sie helfen dabei, Daten so aufzubereiten, dass sie verständlich und nutzbar werden – ein zentraler erster Schritt in jedem Projekt im Bereich Datenwissenschaft und Maschinelles Lernen.
Da visuelle Programmiersprachen als besonders hilfreich für Programmieranfänger gelten, werden wir auch Blockly einsetzen, um den Lernprozess zu unterstützen.Dafür nutzen wir gelegentlich eine Umgebung, in der Blockly und Python automatisch ineinander übersetzt werden. So können Sie leichter nachvollziehen, wie Programmierlogik in beiden Sprachen aussieht und besser verstehen, wie Python funktioniert. Unser Ziel ist es, Ihnen den Einstieg in Python zu erleichtern – eine der wichtigsten Programmiersprachen für die Entwicklung von Modellen im Bereich Maschinelles Lernen.
Der Computer macht nie das, was wir ihm sagen? Ab jetzt schon! Wir machen gemeinsam die ersten Schritte in zwei Programmiersprachen – und Sie werden sehen: Programmieren muss weder trocken noch langweilig sein. Sie können das Gelernte jederzeit selbst ausprobieren und kreativ werden. In den nächsten Abschnitten schreiben Sie Ihre ersten eigenen Programme – sowohl in einer visuellen Programmiersprache (Blockly) als auch in einer textbasierten Sprache (Python).