Wie lernt ihr neue Programmiersprachen?

Hallo Forum,

ich möchte die Semesterferien unter anderem nutzen, um eine neue Programmiersprache zu lernen (Python). Nun habe ich andere Sprachen bisher nur über Schule, Uni und damit verbundenen Aufgaben gelernt, möchte das jetzt aber mal aus Eigeninitiative heraus anpacken. Ich denke, ich werde mich für ein Buch entscheiden und das diszipliniert (mehr oder weniger) durcharbeiten.

Aber trotzdem interessiert mich: Wie macht ihr das? Klassisch mit einem Buch oder doch das YT-Tutorial mit den meisten Klicks? Blind drauf los tippen oder Beispiel-Code Stück für Stück auseinander nehmen und analysieren?

Wenn du Englisch kannst, finde ich Codecademy ganz nice. Mit Büchern hab ich mich da persönlich immer etwas schwer getan.
Wenn man die Grundlagen beherrscht, sind die Dokumentationen zu den jeweiligen Sprachen immer ein guter Weg um Funktionen zu finden und zu verstehen.
Ansonsten ist Stackoverflow immer eine beliebte Seite, wenn man ein konkretes Problem hat.

12 „Gefällt mir“

Ich habe voriges Jahr Ruby über einen gratis Online-Kurs gelernt (open HPI, haben auch Python https://open.hpi.de/courses/pythonjunior2015, bei Python ist aber auch https://cscircles.cemc.uwaterloo.ca/de/ ganz cool, da du die Codebeispiele direkt im Browser machst) und habe das Ganze dann nochmal intensiviert mit dem O’Reilly-Buch für Ruby, das echt gut die Konzepte nach und nach erklärt.
Aber im Grunde gilt, glaube ich die Devise: Kennste eine, kennste alle. Ruby hat sicherlich seine Eigenarten mit Blöcken, Python mit der Formatierung, Java mit seiner durch und durch objektorientierten Sicht etc., aber am Ende lernst du wohl am besten über selbst auferlegte Probleme/Projekte und dann ist sowieso die entsprechende Dokumentation der heilige Gral. Von Beispiel-Codes alleine bin ich nicht der Fan, sollte schon gut umschmückt sein und da bietet sich ein Buch halt immer gut an, die meisten YouTube-Videos vergessen in meinen Augen die Didaktik, wie man so etwas von Grund auf erklären kann.

5 „Gefällt mir“

Ich benutze auch codecademy, da ich gerade als Anfänger überfordert war mit Youtube tutorials.

1 „Gefällt mir“

Danke schon mal für die Tipps!
Es fällt aber häufig bei Tutorials oder solchen Seiten wie z.B. das von @Pianfensi empfohlene CSCircles auf, dass man nie so richtig weiß, wo man einsteigen soll. Ich will nicht noch mal ewig lang beigebracht kriegen, was ein Computerprogramm oder eine Variable ist, sondern mich lieber auf Syntax, Eigenheiten und Vorzüge konzentrieren.

*lurk
Würde gerne meine C+±Kenntnisse vertiefen, da schaue ich doch mal bei Codeacademy rein.

1 „Gefällt mir“

Für gewisse Herausforderungen kann ich auch https://www.codewars.com/ und https://www.codingame.com/ empfehlen.

Ich habe meistens einfach nur Tutorials in Textform (oftmals Blogposts) genutzt. Noch mehr habe ich aber eigentlich dadurch gelernt, dass ich mir praktische Probleme genommen habe und versucht, diese zu lösen. Man kommt dann nach und nach eh dazu, im Internet Hilfestellungen zu einzelnen Aspekten zu suchen, statt gleich zu allem in der Gesamtheit, was eh überfordert.

Da ich am liebsten mit C# programmiere, halte ich mich auch gerne im entsprechenden Subreddit https://www.reddit.com/r/csharp/ auf dem Laufenden.

Außerdem gucke ich mittlerweile recht häufig auf github in Open Source Projekte rein. Was beim “sauberen” Programmieren hilft, sind nach der Experimentierphase auch Coding Guidelines, was Formatierung, Benennung, usw. angeht. Das hilft hinterher auch dabei, möglichst verständlichen Code zu schreiben. Sonst erkennt man nach ein paar Monaten seinen eigenen Code nicht wieder.

2 „Gefällt mir“

Ich lerne so etwas am besten, wenn ich an einem Beispiel einfach drauf los programmiere und dann die entsprechende Syntax, die ich gerade brauche nachschlage. Wobei ich meistens vorher irgendein Tutorial durchblätter, um zumindest die Basics aus dem Kopf schreiben zu können. Dafür sollte man allerdings irgendeine Programmiersprache schon beherrschen :smiley:

2 „Gefällt mir“

Ich geh beim Lernen einer neuen Sprache querfeldein. :sweat_smile:

In der Regel hatte ich immer Lernmaterial zur Verfügung (in der Regel ein Buch oder ein Online-Kurs). Das hab ich dann durchgearbeitet und vereinzelt kleine Testprogramme geschrieben um zu gucken, ob ich alles richtig verstanden habe. In der Regel komm ich dann aber irgendwann an die Stelle, das ich etwas so gar nicht verstehe. Dann guck ich nach anderen Materialien oder frage jemanden, der es besser weiß.

Die Erkenntnisse schreibe ich dann auf. So in etwas ist mein ca. 70 Seiten langes PHP-Lexikon zustande gekommen. Ein ähnlich umfangreiches habe ich für PostgreSQL gemacht.

1 „Gefällt mir“

Welche Programmiersprache “sollte” man denn heutzutage lernen, wenn man überhaupt noch keine Vorkenntnisse hat?

Ich denke, das ist sehr stark abhängig von dem was man machen möchte. Kann man kaum pauschal beantworten.

In der Ausbildung wurde uns gesagt das C und C++ nie verkehrt sind. Aber vielleicht war das auch nur ein persönliches Steckenpferd der Ausbilder.

Python soll sehr einfach zu lernen sein und daher für Anfänger gut geeignet.

1 „Gefällt mir“

Mit C und C++ kann man zwar viel machen, kann aber gerade für den Anfang vielleicht sehr schwer sein.
Ich denke auch, dass Python vielleicht einen guten Einstieg bietet. Dafür einfach mal die Links von @Pianfensi ausprobieren, die erschienen mir sehr einsteigerfreundlich.

1 „Gefällt mir“

Falls du schon Erfahrung mit HTML hast, würde ich ja auch fast PHP empfehlen, da sich dort die Erfolge schnell zeigen und du quasi gleich eine grafische UI mit dabei hast (Browser halt). Und wenn PHP dann nicht mehr reicht, sind JavaScript bzw. jQuery das nächste Ziel.
Oder man kann sich für solch grafische Spielereien wie bei Turtle begeistern, dass du quasi mit Python direkt etwas zeichnest. (https://opentechschool.github.io/python-beginners/de/simple_drawing.html oder der Kurs von oben)
Miniwelten helfen auch, um zu verstehen, was man da macht und wenn man blockbasierte Programmierung überspringen will (Scratch bspw.), dann bieten sich z. B. folgende Programme an: https://www.swisseduc.ch/informatik/karatojava/

1 „Gefällt mir“

Jo, html ist bekannt.
PHP hatte ich vor einiger Zeit schon einmal reingeschnuppert (in dem Moment, wo ich mich mal mit Typo3 beschäftigt hatte).
Meine “Befürchtung” war da, dass ich von diesen Befehlsabfolgen irgendwann nen Fingerkrampf bekomme.
Warum?
Ich empfand es sehr umständlich diese Befehle/Zeichen einzutippen.
Meine Vermutung: Die Sprache wurde sicherlich mit einer QWERTY-Tastatur entwickelt und die Eingabe der Codes ist auf dieser wohl einfacher, als bei der QWERTZ-Tastenanordnung. Aber nur dafür jetzt eine QWERTY kaufen - davor hatte ich noch zurückgeschreckt, vor allem, da ich nicht weiß, ob ich mit meiner Vermutung überhaupt Recht behalten würde.

Hatte meinen beruflichen Einstieg während des Studiums mit C++ (mit Qt Framework). Konnte zu dem Zeitpunkt nur C und Assambler. Kann aus Erfahrung sagen, dass der Einstieg in C++ gleich am Anfang hart ist. Und ich weiß nicht, ob ich es alleine mit einem Buch geschafft hätte, da rein zu kommen.
Allerdings fiel mir der Umstieg nach ein paar Jahren auf Java bzw C# recht leicht, weil man sich doch über einiges weniger Gedanken machen muss.

Kommt aber halt wie viele sagen darauf an, auf webpages gewinnst du damit keinen Blumentopf, auf Microcontrollern brauchste mit C# und Java nicht ankommen usw

Hier ein sehr spielerischer Ansatz zum Lernen von Python und JavaScript: https://codecombat.com/play/

Wenn ich mir eine neue Programmiersprache anschaue, überlege ich mir ein spannendes Projekt, das ich gerne mal umsetzen möchte (LP-Solver, randomized art, …). Dann bin ich motiviert und halte länger durch.

2 „Gefällt mir“

Diese App-Anwendungen im Android-Playstore, in welcher Sprache sind die im Allgemeinen programmiert?

Sieht gut aus.
Ist das ein allgemeiner Kurs mit einem Gaming-Theme oder konzentiert sich das sehr stark auf die Branche (sprich ist es spezifisch in eine Richtung gehend aufgebaut)?

Da ich nächstes Semester Python mache und ich dann auch mein JavaScript nochmal auffrischen könnte, wäre das vielleicht was für mich.

Android läuft über Java. Es gibt aber mittlerweile viele Frameworks, die auch in anderen Sprachen geschrieben wurden und den Code dann zu Java portieren.

1 „Gefällt mir“