Programmieren lernen dauer?

6 Antworten

Du kannst nicht sagen dass man programmieren gelernt hat. An sich programmieren gelernt hast du innerhalb einer Stunde mit basics. Wirklich auslernen wirst du niemals können in einer Programmiersprache, das ist nahezu unmöglich

Zwischen "Programmieren können" und "nicht programmieren können" ist ein fließender Übergang.

Theoretisch kannst du in Java schon nach ein paar Stunden eine Menge programmieren. Viele sehr einfache Programme kommen zur Not mit ~ 10% der Java-Syntax aus. Um sich aber als professioneller Javaprogrammierer bezeichnen zu können, dauert es Jahre.

Ich habe Java in der Schule in 2 Jahren gelernt. Wir haben selbst komplexere Konzepte wie Multi-Threading gemacht, trotzdem habe ich einen Großteil meines Java-Wissens erst im Studium erlangt.

Um effizient zu programmieren, reicht theoretisches Wissen nicht aus, man braucht auch Übung. Außerdem sollte man nicht vergessen, dass ein guter Programmierer nicht ständig das Rad neu erfindet, sondern – wenn möglich – bereits existierenden Code verwendet. Ein guter Programmierer sollte sich daher mit häufig verwendeten Bibliotheken und Frameworks auskennen.

Fazit: Das Erlernen einer Programmiersprache ist niemals zu Ende, man lernt immer neues dazu und bekommt immer mehr Übung.

Wenn es dir aber nur um die Syntax (die Grammatik der Programmiersprache) und die grundlegende Funktionsweise geht: Das kannst du, wenn du sehr fleißig bist, in unter einem Jahr erlernen. Manche Programmiersprachen (Python, Ruby, Java) sind einfacher als andere (C++, Rust, Assembler), aber um eine Sprache wirklich gut zu beherrschen, braucht es viel Zeit.

Woher ich das weiß:Studium / Ausbildung – Informatikstudium
agent888  03.06.2018, 09:10

Sehr gut beschrieben, stimme dir in allen Punkten zu!

0

Es dauert so lange, wie Du Dir dafür die Zeit nimmst.

Mach es, weil Du damit etwas bezwecken willst und es dauert lange oder mach es, weil es Spaß macht und Du hasst es in Null-Komma-Nichts kapiert.

Und abgesehen davon kann man auch als alter Hase immer noch ein/zwei Tricks dazu lernen.

De grundlegende Java-Syntax und die wichtigsten Grundkonzepte kann man wenn man sich reinhängt nach wenigen Monaten gut bis sehr gut.

Dann gibt es immer noch vieles zu lernen, aber man hat zumindest die Fähigkeit erworben (fast) jedes Java Programm bzw. den Code davon zu verstehen.

Ich selber arbeite seit 1,5 Jahren als Java Entwickler, hatte auf der Uni viel Java... nun ist es so, wenn ich genau weiß was ich machen muss (mir also alle Anforderungen klar sind usw. usf.) dann bin ich nicht wirklich merkbar langsamer als die erfahrenen Programmierer bei uns in der Firma, auch ist mein Code erfahrungsgemäß nicht langsamer und auch nicht schlechter/hässlicher.
Nur was man z.B. wirklich sehr schwer lernt ist das Schätzen der Zeit die man für etwas braucht, da bin ich oft um den Faktor 10 daneben, das liegt aber oft nicht daran dass ich Java nicht so gut kann wie die anderen, sondern dass ich unsere Anwendung noch nicht (so) gut kenne.

Auch kenne ich noch nicht so viele Bibliotheken, ich würde dir empfehlen hier mal (wenn du etwas weiter bist) https://github.com/Vedenin/useful-java-links durchzusehen, ist viel nützliches dabei.

Hallo medifo79,

auch für die Software-Entwicklung gilt wohl die 10.000 Stunden Regel. Dann ist man allerdings hoffentlich "richtig gut". Um einigermaßen gut zu sein benötigt man natürlich weit weniger Zeit. Aber selbst nach 10k Stunden lernt man noch dazu.

Weit vorher tritt bei vielen der https://de.wikipedia.org/wiki/Dunning-Kruger-Effekt ein. Zumindest sehe ich das bei vielen:

  • Mein Code ist der beste
  • Ich bin der einzige der meinen Code versteht

Von den 10k Stunden sollte man sich übrigens nicht abschrecken lassen. Die erreicht man, wenn man am Ball bleibt. Ist Software-Entwicklung irgendwann mal dein Beruf, dann erreicht man solche Zahlen auch.

Ich bin nicht der Meinung, dass man 10k Stunden braucht um beruflich als Entwickler tätig zu werden. Aber ein Entwickler sollte nach 1-2 Monaten produktiv im Team mitarbeiten können, ansonsten würde ich ihn nicht einstellen.

Gruß

wotan38  04.06.2018, 21:43

Ich habe früher immer in den Ferien 3 Werkstudenten zugeteilt bekommen, die keine ausgebildeten Programmierer waren.Trotzdem konnten alle nach entsprechender Einweisung kleine Programmieraufgaben übernehmen und erfolgreich abschließen.

Nach meiner Erfahrung liegt der Schwerpunkt bei der Anwendungsentwicklung nicht im Codieren, sondern im Verstehen der Aufgabe, erkennen von Lösungsoptionen und Abschätzen von Aufwand und Machbarkeit.

0
AldoradoXYZ  04.06.2018, 21:50
@wotan38

Hallo wotan38,

dass man funktionierende Lösungen implementieren kann, ist natürlich das "Minimum". Trotzdem gibt es nach oben hin noch massive Qualitätsunterschiede. Gleiches gilt natürlich auch für die Ansprüche.

Ein Projekt in größeren Teams (um die 8 Leute halte ich für gut) umzusetzen erfordert noch weitere Fähigkeiten. Letztendlich ist Software-Entwicklung eben sehr viel mehr als "nur" Programmieren. Damit habe ich sicherlich keine neuen Erkenntnisse produziert.

Alles natürlich für die professionelle Seite.

Gruß

0