Wie lange lernt man Programmieren?
16 Stimmen
8 Antworten
Um es beruflich anzuwenden, braucht man ein paar Jahre, aber fertig ist man eigentlich nie
Kommt drauf an, was Du mit "Lernen" meinst.
Die Ausbildung (und die ist dem Studium vorzuziehen oder beides oder duales Studium) dauert drei Jahre. Viele Chefs erwarten dann aber, dass Du danach ausgelernt bist - was nicht stimmt. Viel eher ist die Ausbildung sowas wie die "Grundausbildung", danach fängt die eigentliche Ausbildung erst an, auch wenn's nicht mehr so heißt.
Um eigenständig auch komplexere Projekte mit brauchbarer Qualität aufzubauen, kannst Du also nochmal paar Jahre drauf rechnen.
Wirklich "gut" bist Du dann aber immer noch nicht, absolut Kriegsentscheidend ist die Erfahrung und die kann man nicht klassisch lernen, das braucht Zeit und reale Projekte.
Aber wenn Du mit "Lernen" einfach nur klassisches Lernen ohne eine Art "Abschluss" meinst: Für immer. Ich mach den Job seit mittlerweile über 10 Jahren und ich würde mich als sehr guten Entwickler bezeichnen, aber ich lerne immer noch. Jedes Jahr kommen neuen Projekte, neue Herausforderungen, Erfahrungen, Fehler, Technologien, etc.
Softwareentwicklung ist sehr schwer und sehr langwierig, deshalb sollte man die Arbeit wirklich mögen. Wer es wirklich mag, am besten eine intrinsische Motivation hat, auch in der Freizeit (für mich ist es ein Hobby), der kann auch viel früher sehr gut werden, aber das fordert viel Zeitinvestment, auch in der Freizeit. Doch für ein Hobby ist das ja kein Problem, oder?
PS:
Es geht auch nicht darum, nur die Programmiersprache zu lernen. Das ist ziemlich einfach - zumindest wenn man es mit dem Rest vergleicht.
Das wirklich herausfordernde ist, den Code auch nach Jahren, von fremden Leuten oder sehr schlecht zusammen gewürfelten Code zu verstehen, aus dem Code herzuleiten, was passiert ist, oder wie Du ein bestimmtes Ziel erreichen kannst. Oder Du stehst vor der Aufgabe ein Problem in einem bestehenden Projekt mit Millionen Nutzern zu lösen, aber doch bitte ohne den bestehenden Nutzern alle ihre Daten kaputt zu machen. Oder Du sollst ein Problem lösen, das nur sporadisch auftritt und nie bei dir in einer Testumgebung, sondern nur bei wenigen Kunden, wie findest Du das Problem?
Du kannst dann "wirklich" programmieren, wenn Du den Code lesen kannst, wie eine gesprochene Sprache, Du liest den Code und kannst zurück führen, was man machen müsste, in welchen Situationen, während ein anderer Nutzer etwas bestimmtes anderes tut, damit das Problem auftritt.
Das ist herausfordernd, dafür gibt es kein Buch und wenn man es dir versucht zu erklären, wirst Du nichts verstehen. Das ist normal, man lernt es eben nur in der Praxis.
Und mit der Praxis und diesen Fähigkeiten kommen auch die anderen ebenso schwierigen Kompetenzen, wie das Schreiben und über viele Jahre gut lesbaren und wartbaren Code, oder die Planung und Entwicklung von Architekturen, die für viele Jahre, viele Kollegen und viele neue und teils eher wirre Anforderungen eine solide Grundlage bildet. Eine schlecht geplant oder gepflegte Architektur (auch das vergessen viele: Eine Architektur muss gepflegt werden) kann das Aus des Projektes sein, ohne dass man etwas dagegen tun kann.
Naja die Frage ist "wofür"... C als Sprache hat 40 Schlüsselwörter, dann kannst du sie.
Nur Programmieren in einer Form dass man damit auch "mehr kann" als Chatgpt, das dauert ne Weile.
Viele verstehen auch nicht dass seitdem KI in der Form existiert, das ganze viel weniger algorithmisches Denken ist als früher.
Eher wie man codestücke zusammensetzt und froße Software Strukturiert, und das hat mir Programmieren dann gar nicht mehr so viel zu tun.
Den Rest deines Lebens
Programmierung kann man zwar in Form eines Studiums oder einer Ausbildung zum Teil erlernen und ist dort noch ein paar Jahren fertig
Aber wirklich aufhören zu lernen tut man nie es wird immer irgendetwas neues geben irgendeine Weiterentwicklung und du wirst niemals alles können
man lernt ein leben lang, das hört nie auf und man lernt nicht nur eine programmiersprache sondern viele. ich hab aufgehört zu zählen mit wievielen programmiersprachen ich schon programmiert habe.