Nehmen wir an, ich wäre ein blutiger Anfänger in Sachen Programmierung.
Nun möchte ich meine Kenntnisse aufbessern, es aber klein angehen lassen, d.h. keine GUIs oder sonstwas, denn das würde schon Programmiererfahrung voraussetzen.
Ich will eine einsteigerfreundliche Programmiersprache empfohlen haben, die mir das Wesentliche beim Programmieren zeigt, ohne dabei zu tief zu gehen.
Mit diesen Kenntnissen möchte ich in der Lage sein später auf andere Programmiersprachen unkompliziert aufspringen zu können.
Was wäre deine Empfehlung?

----------------------------------------------------------

Zitat Zitat von Mog Beitrag anzeigen
Btw frage ich mich, warum du RADs bei Py so heraus hebst: Die sind bei modernen Toolkits eh absolut sprachunabhängig.
Man möge mir verzeihen, dass ich Rapid Application Development wörtlich nehme und auch mit der Zeit gleichsetze, die ich brauche um ein ausführbares Programm zu schreiben, das über keine GUI-Elemente verfügt. :P

Zitat Zitat von Mog Beitrag anzeigen
Wie wir wissen kann man auch in C plattformunabhängigen Code schreiben.
Richtig, aber sobald man systembezogene Funktionalität nutzt, ist es dahin mit der Plattformunabhängigkeit und dann muss man zum Präprozessor greifen, was den Code aufblähen und unleserlich machen kann.
Mit Python schreibe ich den Code ein mal in seiner Wesentlichkeit und führe ihn auf beliebigen Plattformen aus, ohne Änderungen vornehmen zu müssen. Das meine ich mit Portabilität.

Zitat Zitat von Mog Beitrag anzeigen
Btw hast du das wichtigste Argument, den Side-Think-Faktor, komplett ignoriert.
Ich bin mir ehrlich gesagt nicht sicher, was genau du damit meinst. Wenn es dir um den Unterschied zwischen Low-Level und High-Level geht, so ist das selbstverständlich, ändert aber nichts am Wesen meiner Programmierung.
Wenn jemand mit C/C++ anfängt, bekommt er auf die harte Tour die Grundzüge beigebracht, wie der Computer funktioniert (Memorymanagement (Stack/Heap), Cache (Codecache/L1/L2), Register, RAM (reading/writing), etc.). Er muss mehr aufpassen und kann fatale Fehler verursachen, was aber auch alles ist. Wenn jemand mit einer modernen High-Level-Sprache wie Python anfängt, macht er sich keine Gedanken über Memorymanagement etc. und lernt das Wesentliche beim Programmieren, ohne dabei auf Computerebene zu denken. Wenn er nun will, oder muss, kann er immernoch zu einer Low-Level-fähigen Sprache greifen und ich bezweifle, dass er dabei ein "komisches" Gefühl, oder sonstwas haben wird.