Diese Frage ist äußerst subjektiv und offen. Es klingt vielleicht sogar nach etwas, das ich nur für mich selbst recherchieren und meine eigene Entscheidung treffen sollte. Aber ich würde es gerne veröffentlichen und ein paar Gedanken von anderen bekommen.
Lange Rede, kurzer Sinn - ich bin beim Rattenrennen ausgebrannt und habe dieses Jahr ein selbstfinanziertes Sabbatical. Vieles davon ist, eine Pause vom geschäftlichen Treiben einzulegen und herumzureisen, aber ich möchte auch mit neuen Technologien herumspielen und ein paar selbstlernende Projekte durchführen, mit dem Programmieren auf dem Laufenden bleiben und gut - ich liebe es einfach, daran zu basteln Programmieren ohne Druck!
Hier ist die Sache: Ich bin ein lebenslanger C / C ++ / Java-Programmierer. Ich bin ein bisschen schnörkellos, seit ich während meiner gesamten Programmierkarriere mit dieser Sprachfamilie gearbeitet habe. Ich möchte also eine Sprache lernen, die syntaktisch nicht so eng mit dieser Gruppe verwandt ist. Was ich grundsätzlich suche, ist eine Sprache, die relativ allgemein gehalten ist, Spaß macht, einige neue Konzepte hat, die sich von C ++ / Java unterscheiden, und eine gute Community hat. Eine sekundäre Überlegung ist, dass es gute Webentwicklungs-Frameworks hat. Eine tertiäre Überlegung ist, dass es nicht vollständig akademisch ist (lesen Sie: Es gibt Jobs in der realen Welt, die es verwenden).
Ich habe es auf Ruby oder Python eingegrenzt. Mein Eindruck von Ruby ist, dass es extrem weborientiert ist - dass die einzige wirkliche Anwendung darin besteht, eine serverseitige Skriptsprache für das Erstellen von Web-Inhalten zu sein (hauptsächlich Ruby on Rails). Ich habe überhaupt keinen großen Eindruck von Python, außer dass es eine leidenschaftliche Fangemeinde zu haben scheint und eine ziemlich vielseitige Sprache zu sein scheint.
TL; DR und um es so kurz wie möglich zu fassen: Welches davon wäre besser, wenn ein C ++ / Java-Typ lernen würde, einige neue Perspektiven auf die Programmierung zu bekommen? Und was ist offener und allgemeiner und auf eine größere Anzahl von Anwendungen anwendbar? Im Moment neige ich zu Ruby, aber ich mache mir in gewissem Maße Sorgen, dass es so aussieht, als würde es nur als serverseitige Websprache verwendet.