Persönlicher Rückblick: Wie ich Programmieren lernte

Mein Einstieg in die Programmierung war holprig, chaotisch und frei von Komfort. Kein Stack Overflow, keine IDE, kein Plan. Und doch hat genau das mein Denken bis heute geprägt. Eine Geschichte über Neugier, Fehler und wie man daran wächst.

07.07.2025 09:21 von Christian

1. Meine Inspiration

Meine Motivation, Programmieren zu lernen, kam nicht aus der Schule, nicht aus einem Berufsratgeber und ganz sicher nicht aus einer Karriereplanung. Sie kam aus der Welt der Online-Communitys.

Ich war damals in einem Gaming-Forum aktiv, in dem reger Austausch herrschte. Es war faszinierend: Forenbeiträge zum Diskutieren, eine Shoutbox für lockeres Gequatsche, private Nachrichten für vertraulichere Gespräche. Auch der damals populäre Knuddels-Chat trug seinen Teil dazu bei - bunt, verspielt, voller scheinbar endloser Möglichkeiten.

Ich wollte wissen, wie so etwas entsteht. Ich wollte verstehen, wie das funktioniert. Ich wollte es selbst bauen.

Mein erster Versuch führte mich zu C++. Keine Ahnung, was das eigentlich war - aber es klang nach „echtem Programmieren“. Ich habe es ausprobiert und schnell gemerkt: Das war nicht meine Welt. Zu abstrakt, zu wenig greifbar.

Dann stieß ich auf PHP. Und auf eine Webseite, die Anfängern mit kleinen, praktischen Aufgaben den Einstieg erleichterte. Man konnte einfache Dinge tun, die direkt im Browser sichtbar wurden. Nicht nur Theorie - sondern Ergebnis.

2005 war PHP5 gerade frisch veröffentlicht worden, aber auf kaum einem Hoster nutzbar. PHP4 war die Realität - auch wenn ich ehrlich gesagt nicht das Gefühl hatte, damit je wirklich bewusst gearbeitet zu haben. Ich lernte mit PHP3, weil viele Tutorials und alte Projekte darauf basierten. Und weil es funktionierte.

2. Es werde Licht

Mein erstes richtiges Projekt war eine kleine Webseite mit einer einfachen Nutzerregistrierung und Login-Funktion. Alles lief über PHP-Sessions. Man konnte sich Nachrichten schicken - inklusive eines selbstgebauten, rudimentären BBCode-Parsers. Immerhin: Fett, kursiv und unterstrichen klappte.

Außerdem integrierte ich kleine Spiele: Galgenmännchen, ein Quiz - und ein Credit-System, das Belohnungen verteilte. Die virtuellen Punkte konnte man dann in einer selbstgebauten Bank verwalten: mit Überweisungen, Kontoauszügen und allem Drumherum.

Ein selbstentwickeltes Forum wäre zu viel gewesen, also entschied ich mich für das damals weit verbreitete WoltLab Burning Board 2.3. Eine riesige Community beschäftigte sich damit, es zu modifizieren und zu erweitern. Ich integrierte mein Credit-System auch dort - man konnte Smileys kaufen, spezielle Benutzergruppen mit farbigen Nicknames erwerben oder Zugriff auf bestimmte Funktionen freischalten.

Am Ende hatte ich tatsächlich eine kleine Community mit über 200 registrierten Nutzern aufgebaut. Für mich war das riesig. Es war funktional, beliebt und technisch überraschend stabil. Aber: Es hatte kein Thema, keine Nische. Es war einfach nur da. Und genau so verschwand es irgendwann auch wieder.

Was mir bis dahin vollkommen fehlte, war jedes Verständnis für Sicherheit. Ich wusste nicht, was „Escaping“ bedeutete. Ich hatte keine Ahnung, dass Benutzereingaben gefährlich sein können - und in keinem Einsteiger-Tutorial wurde das überhaupt thematisiert. Ich erfuhr es erst, als es zu spät war.

Eines Tages bemerkte ich merkwürdige Zeichenfolgen in meiner Datenbank. Immer wieder wurde die Seite langsamer. Es stellte sich heraus: Jemand versuchte, meine Datenbank zu hacken. Ich war in Panik. Ich hatte keine Ahnung, was ich tun sollte.

Zum Glück hatte ich auf meinem Weg schon einige Kontakte geknüpft. Einer davon half mir direkt weiter - und erklärte mir zum ersten Mal, was SQL-Injection ist. Dass man Benutzereingaben filtern muss. Dass man Datenbankabfragen absichern muss.

Dieser Moment hat sich eingebrannt. Ich hatte nicht nur etwas Technisches gelernt - ich hatte gelernt, dass mein Code Verantwortung trägt. Seitdem habe ich ein starkes Sicherheitsbewusstsein entwickelt. Nie wieder wollte ich in so eine Situation geraten.

3. Editor, FTP, Trial und sehr viel Error

Entwickelt habe ich das alles mit dem Standard-Editor von Windows XP. Kein Syntax-Highlighting, keine Autovervollständigung, keine Dateiansicht - nichts. Nur reiner Text und viel Geduld.

FileZilla war mein ständiger Begleiter. Die Änderungen wurden direkt auf den Webspace hochgeladen - „live“ sozusagen. Updates bedeuteten: einen Ordner alt/ anlegen, das laufende Projekt dort hinein verschieben, und die neuen Dateien ins Hauptverzeichnis kopieren. So sah Versionierung damals aus.

Das Lernen bestand aus Trial & Error. Viel Googeln à la „Parse error in line 72“ - oft endete es mit der Erkenntnis: Ich habe zwei Stunden lang ein fehlendes Semikolon gesucht. Man lernte auch durch Reverse Engineering: man nahm fremde Projekte auseinander, versuchte zu verstehen, wie sie funktionieren, und passte sie an die eigenen Ideen an.

Es gab keine IDE, keine Dokumentation, keine Stack Overflow-Antwort mit drei Upvotes. Wenn man etwas nicht verstand, musste man sich durchbeißen. Wer lernen wollte, musste sich die Hände schmutzig machen.

4. Notepad++, PHP5 und die Objektorientierung

Ein Jahr nach meinem Einstieg entdeckte ich Notepad++. Und plötzlich war da Farbe. Syntax-Highlighting, Tabs für mehrere Dateien - es fühlte sich an wie ein riesiger Sprung nach vorn.

Ich nutzte Notepad++ bis 2011 - auch für größere Projekte. IDEs waren mir durchaus bekannt, ich hatte sogar mal versucht, mit Eclipse PDT (PHP Development Tools) zu arbeiten. Aber ehrlich gesagt: Die IDE war mir schlicht zu langsam. Der Start dauerte ewig, alles fühlte sich träge an - und ich war mit Notepad++ einfach deutlich schneller. Für meine Art zu arbeiten war das Tool ideal: leichtgewichtig, direkt, ohne Umwege. Anschließend lernte ich PHPStorm von Jetbrains kennen, dieser IDE bin ich bis heute treu geblieben.

Mit PHP5 kam dann der große Umbruch: Objektorientierung. Vorher war alles prozedural, mit riesigen functions.php-Dateien, die alles enthielten, was man irgendwie irgendwo mal brauchte. Jetzt gab es Klassen, Konstruktoren, private, public, extends, interface.

Ich hatte Mühe, das neue Denken zu verstehen. Plötzlich bestand Code nicht mehr nur aus Anweisungen, sondern aus Architektur. Es war ungewohnt, verwirrend - aber auch aufregend. Alle sprachen plötzlich von OOP. Ich musste lernen, damit klarzukommen. Und tat es auch.

5. Warum ich diese harte Schule nie missen möchte

Wenn ich heute zurückblicke, bin ich dankbar, dass ich Programmieren so gelernt habe - auf die harte Tour. Ohne IDE, ohne Versionsverwaltung, ohne Autovervollständigung oder KI. Ich musste verstehen, was ich tat. Ich musste wissen, wo ich suchen muss. Ich musste mir Strukturen merken, Querverweise im Kopf behalten, Dateinamen auswendig wissen.

Ich glaube, das ist der Grund, warum ich heute schnell Muster erkenne. Warum ich oft intuitiv weiß, wo ein Problem liegen könnte. Weil ich es gelernt habe, als es noch keine Krücken gab.

Mein erstes Projekt habe ich im Editor geschrieben und ganz ehrlich? Ich bin stolz drauf, das geschafft zu haben.

Themen

Über den Author

Christian

Ich bin Christian Seip - Softwareentwickler mit Schwerpunkt auf Web-Technologien. In den letzten Jahren war ich unter anderem als Lead Developer und Datenschutzkoordinator bei der Ströer-Gruppe tätig. Davor habe ich bei Amazon Games gearbeitet.

Ich schreibe hier, weil ich Dinge hinterfrage. Weil ich wissen will, was unter der Oberfläche steckt - technisch, gesellschaftlich und sprachlich. Und weil ich glaube, dass es nicht reicht, Dinge nur zu tun, ohne darüber zu reden.

Dieser Blog ist kein Tutorial-Archiv und keine Selbstvermarktung. Er ist mein Versuch, klare Gedanken zu formulieren und Position zu beziehen auch wenn es unbequem ist. Mal technisch, mal kritisch, mal persönlich.