Ich will Programmieren lernen

Programmieren lernen ist keine schlechte Idee, vor allem dann, wenn Dein Berufswunsch in Richtung IT geht. Aber wie mache ich das? Muss ich dafür Geld bezahlen? Dieser Blog-Artikel hilft Dir dabei, einen aller ersten Einstieg zum Selbststudium zu finden, ohne Geld dafür ausgeben zu müssen.

Einführung

Programmieren lernen ist im Prinzip ganz einfach. Du benötigst einen Computer, einen funktionierenden Internetanschluss und eine gehörige Portion Motivation.

Tja, und dann sitzt Du vor Deinem Bildschirm und fragst Dich, was genau Du denn nun machen sollst? Der erste Reflex ist wahrscheinlich “Googeln”. Eine Suche nach z.B. “Programmieren lernen” ergibt unzählige Ergebnisse, beginnend mit Anzeigen für zumeist kostenpflichtige Kurse oder Trainingsprogramme. Oje… (Die Motivation ist leicht am Sinken).

Der folgende Blog-Artikel versucht Dir ein wenig Starthilfe zu geben und einen kleinen Überblick über gute und kostenlose Angebote im Internet zu verschaffen. Ich gebe dabei meine Sichtweise der Dinge wieder, die natürlich subjektiv und schon gar nicht umfassend ist.

Also, das mit dem Computer, dem Internetanschluss und der Motivation ist ohne Zweifel richtig, ich möchte aber gerne ein paar ergänzende Anmerkungen machen.

  • Es gibt unzählige Programmiersprachen und Technologien, die sich stets weiterentwickeln oder manchmal auch langsam an Bedeutung verlieren. Wenn Du bisher noch gar nichts mit Programmierung am Hut hattest, macht es Sinn eine Programmiersprache zu lernen, die den Einstieg besonders einfach macht. In diesem Zusammenhang wird häufig die Programmiersprache Python genannt. Der Syntax von Python ist einfacher zu verstehen als bei vielen anderen Sprachen, alle benötigen Software-Tools sind frei verfügbar und das Angebot an Einführungskursen ist riesig. Python ist momentan sehr populär und wird auch für professionelle Software-Projekte gerne genutzt.

  • Ein alternativer Weg ist ein lösungsorientierter Ansatz. Möchtest Du beispielsweise Deine eigene Webseite programmieren, dann wirst Du es mit einem Mix aus verschiedenen Sprachen zu tun bekommen. Das sind zunächst einmal die drei klassischen Web-Technologien HTML (eine Auszeichnungssprache), CSS (eine Formatierungssprache) und JavaScript (eine Programmiersprache). Klingt komplizierter als es ist. Gerade am Anfang musst Du nicht jeden Aspekt von HTML, CSS oder JavaScript erlernen. Der Charme dieser Herangehensweise liegt darin, dass Du ein konkretes Ziel verfolgst, nämlich das Erstellen Deiner wunderbaren Webseite. Ein anderes mögliches Beispiel wäre die Programmierung einer mobilen App, z.B. ein kleines Spiel für Dein Smartphone.

  • Es gibt einige gute kostenlose Einführungskurse in Programmiersprachen wie Python oder JavaScript auf Deutsch. Das Angebot an englischsprachigen Kursen ist allerdings deutlich größer. Und je tiefer man in die Welt der Programmierung eindringt, desto wichtiger wird die englische Sprache. Generell kann man sagen, dass die Fähigkeit Englisch zu lesen und zu verstehen ab einem gewissen Punkt unabdingbar ist. Sollte Dein Englisch noch etwas holprig sein, keine Panik, durch regelmäßiges Lesen oder Hören englischer Texte zum Thema Programmierung kommst Du relativ schnell auf ein Niveau, dass für das Verständnis von IT-Texten ausreicht. Du musst ja schließlich keine Gedichte auf Englisch schreiben.

Python lernen

Fangen wir also mit Python an. Python ist eine objektorientierte Programmiersprache mit einem eleganten Syntax, der das Lesen und Verstehen von Code-Zeilen vor allem für Anfänger leichter macht. Laut TIOBE-Index ist Python die momentan (Stand: Juli 2022) beliebteste Programmiersprache weltweit.

Das Hasso-Plattner-Institut in Potsdam betreibt die Lernplattform openHPI mit vielen interessanten und vorallem kostenlosen Kursen zu IT-Themen an. Speziell für Schüler:innen ab 12 Jahren wird der interaktive Kurs Programmieren lernen mit Python zum Selbststudium angeboten. Der Kurs ist gut gemacht, mit einer Mischung aus kurzen Videos und Testaufgaben, die Du direkt in Deinem Web-Browser programmieren kannst. Es sind keine Vorkenntnisse nötig.

Das Institut für Geschichtswissenschaften an der Humboldt-Universität zu Berlin hat eine Einführung in Python speziell für Historiker:innen entwickelt. Ja, ich weiss, nicht jeder von uns hat Geschichte studiert, aber ein Python-Kurs für Nicht-ITler:innen ist grundsätzlich eine gute Sache. Die Webseite ist ein Mischung aus Text und interaktiven Elementen.

Wer eher die klassische Buchform mag, der kann es mit dem frei verfügbaren Buch Python 3 vom Rheinwerk Verlag probieren. Unter dem Label Rheinwerk <openbook> bietet der Verlag eine Reihe von Büchern zu digitalen Themen als kostenlose HTML-Versionen an. Der einzige kleine Nachteil ist, dass dies meist etwas ältere Auflagen sind.

Englischsprachige Lernangebote für Python gibt es natürlich en masse. Hier zwei Beispiele:

Ich will aber kein Python lernen

OK, ok, Du hast Dich vielleicht schon für eine andere Programmiersprache entschieden oder willst zunächst Deinen Blick schweifen lassen. Es folgt eine Liste von sprachübergreifenden Lernangeboten, sowohl auf Deutsch als auch auf Englisch:

  • Die bereits erwähnte Lernplattform openHPI bietet kostenlose Onlinekurse an zu den Themenbereichen Informationstechnologie (IT) und Innovation. Die Kurse sind teils auf Deutsch, teils auf Englisch.

  • Das Portal W3Schools bezeichnet sich selbst als The largest web developer site on the internet. In der Tat ist W3Schools sehr umfangreich und bietet kostenlose Tutorial, Referenzen, Übungen und Videos zum Selbststudium an. Dabei werden vor allem Themen Rund um die Web-Programmierung behandelt, also z.B. JavaScript, HTML und CSS.

  • Das Portal MDN Web Docs wird von Mozilla betrieben und ist ebenfalls eine Mischung aus Referenzen und Leitfäden zur Web-Programmierung. Ein möglicher Startpunkt ist Learn web development

  • Das Portal web.dev wird von Google betrieben und hat das gleiche Zielpublikum wie das eben erwähnte MDN Web Docs. Der Startpunkt hier wäre Learn.

  • freeCodeCamp ist eine Non-Profit-Organisation, die es sich zur Aufgabe gemacht hat, das Erlernen von Programmiertechniken und -sprachen für jedermann frei zugänglich zu machen.

  • Die Khan Academy ist eine nicht-kommerzielle Webseite mit Lehrmaterial aus den Bereichen Mathematik, Naturwissenschaften, Informatik, Geschichte und Wirtschaft. Der Startpunkt für Programmierbegeisterte ist hier.

  • The Odin Project bietet einen freien und quelloffenen Lehrplan zum Thema Web-Programmierung.

  • Sabe ist ebenfalls ein Portal mit kostenlosen Kursen und Tutorials rund um die Programmierung.

  • Microsoft bietet auf seinem Portal Microsoft Learn viele Kurse und Tutorials zur Programmierung mit Microsoft-Technologien an.

  • Eine der bekanntesten Lernplattformen überhaupt ist, TrommelwirbelYouTube. Bei YouTube besteht die Kunst darin, zwischen gut gemachten Programmierkursen und Ich-kann-es-nicht-aber-mache-trotzdem-Videos zu unterscheiden. Hier zwei Beispiele für Kurse, die in der Community empfohlen wurden:

Ein paar weitere interessante Verweise zum Abschluss:

  • Der amerikanische Software-Entwickler Scott Hanselman betreibt einen eigenen YouTube-Kanal mit unzähligen, super erklärenden Videos zu allen möglichen IT-Themen, unter anderem auch Einsteigerthemen wie z.B. Learn C#. Hanselman arbeitet für Microsoft, die Themen sind also naturgemäß sehr Microsoft-lastig, was der Qualität aber keinen Abbruch tut.

  • Das GitHub-Repository free-programming-books unterhält eine Liste von frei verfügbaren Büchern zum Thema Programmierung, gruppiert nach Programmiersprachen. Einige Verweise sind tot, weil die Originalquelle nicht mehr existiert, manche Bücher sind schon etwas alt, aber im Großen und Ganzen ist dies eine prima Fundgrube.

  • Traditionell ist das erste Programm in einer neuen Programmiersprache eine Textausgabe auf dem Bildschirm mit den Worten “Hello world”. Das GitHub-Repository hello-world sammelt Implementationen von “Hello world” für jede nur erdenkliche Programmiersprache. Eine wirklich interessante und zum Teil obskure Sammlung.

Teile diesen Artikel
comments powered by Disqus