Ruby StartUp hilfe!

Alles, was nicht direkt mit Python-Problemen zu tun hat. Dies ist auch der perfekte Platz für Jobangebote.
Antworten
Benutzeravatar
Manchotix
User
Beiträge: 54
Registriert: Samstag 14. Januar 2012, 19:54

Hallo zusammen,

ich hoffe das ich die Frage hier richtig stelle.

Ein bekannter hat mir gesagt ich sollte mich mal auch mit Ruby beschäftigen da es ein sehr gute Programmiersprache ist und mit zu einen seiner fav. Sprachen gehört und ich dachte mir schauen kann ja nicht schaden.
Von daher suche ich gerade ein gutes Einsteiger Tutorial zu Ruby aber finde immer nur was über das Rails Framework oder zu alte Dokumentationen von Ruby(ver. 1.6) und hoffe mir kann jemand vielleicht schon ein wenig vorab Infos geben zu Ruby.
Ich habe auch gelesen das Ruby & Python viele gemeinsamkeiten haben und auch stark in zusammen Arbeit sind (also die Communitys).
Ist denn die Dokumentationen von Ruby genau so gut wie die von Python, bezogen auf Libs oder Frameworks(ausser Rails wo es ja 10 mio. Bücher und so gibt).

Ich hoffe das mir jemand hier helfen kann und es sich lohnt neben Python auch Ruby zu lernen.

mfg Manchotix
- Über Fehler sollte man sich freuen als über das richtige Ergebnis denn wir Menschen können nur aus den Fehlern lernen-
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Ich würde einfach mal in einem Ruby-Forum nachfragen ;-)
Das Leben ist wie ein Tennisball.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Du kannst dir ja mal Ruby Essentials anschauen, aber du wirst feststellen dass da nicht so wahnsinnig viel neues kommt, wenn man Python schon kennt.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
Manchotix
User
Beiträge: 54
Registriert: Samstag 14. Januar 2012, 19:54

Leonidas hat geschrieben:Du kannst dir ja mal Ruby Essentials anschauen, aber du wirst feststellen dass da nicht so wahnsinnig viel neues kommt, wenn man Python schon kennt.
Ok ich habe mir die Seite mal angeschaut, danke für denn Link. :)
Aber ich weiß nicht warum Ruby so viel schöner und besser sein soll als Python, viele dinge sind sehr gleich zu Python und finde auch die "Case - When" struktur ganz nett aber, irgend wie kommt es mir vor das Python und Ruby sehr gleich sind und die Ziele/Ergebnisse nur durch ein anderes Denken erreicht wird.
Wenn ich damit falsch liege bitte was sagen. ;)
EyDu hat geschrieben:Ich würde einfach mal in einem Ruby-Forum nachfragen
Ja das habe ich auch gemacht und habe bis jetzt noch keine Antwort bekommen :/.

Aber ich denke mal beides zu können ist nicht falsch auch wenn ich Python gaaaaannnnzzzzz doll lieb habe :P

mfg Manchotix
- Über Fehler sollte man sich freuen als über das richtige Ergebnis denn wir Menschen können nur aus den Fehlern lernen-
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Der Hauptunterschied sind wohl die Blöcke, die ein wenig so wie anonyme Funktionen verwendet werden können und die tatsache dass die API dann auch davon ausgeht solche Blöcke zu bekommen. Daneben gibt es noch den Unterschied, dass in Ruby "Magic" höher angesehen ist als Python, wenn in Ruby etwas tolles passiert was man nicht gedacht hätte ist das toll, in Python wird sowas meist als Code-Smell bezeichnet. Da gibt es verschiedene Ansichten wie man sowas sehen kann. Und die Ruby-Community ist geschätzt auch etwas Experimentierfreudiger.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
Manchotix
User
Beiträge: 54
Registriert: Samstag 14. Januar 2012, 19:54

Na gut ich werde mir Ruby aufjedenfall zwischen durch noch mal anschauen und vielleicht immer mal kleinere Sachen von Python nach Ruby schreiben einfach um ein wenig Übung zu bekommen.
Aber so begeistert bin ich jetzt nicht wie mein bekannter und verstehe denn Hype um die Sprache auch nicht.
Leonidas hat geschrieben:Und die Ruby-Community ist geschätzt auch etwas Experimentierfreudiger.
Naja ich denke mal das liegt ja an der Person selbst und es gibt bestimmt auch unter denn Python Usern verrückte Wissenschaftler ;) *verrückte lache*
- Über Fehler sollte man sich freuen als über das richtige Ergebnis denn wir Menschen können nur aus den Fehlern lernen-
Benutzeravatar
kbr
User
Beiträge: 1487
Registriert: Mittwoch 15. Oktober 2008, 09:27

Leonidas hat geschrieben:Daneben gibt es noch den Unterschied, dass in Ruby "Magic" höher angesehen ist als Python, wenn in Ruby etwas tolles passiert was man nicht gedacht hätte ist das toll, in Python wird sowas meist als Code-Smell bezeichnet.
Das erstaunt mich ein wenig: Galt für Ruby ursprünglich nicht das Prinzip der "geringsten Überraschung"?
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

kbr hat geschrieben:
Leonidas hat geschrieben:Daneben gibt es noch den Unterschied, dass in Ruby "Magic" höher angesehen ist als Python, wenn in Ruby etwas tolles passiert was man nicht gedacht hätte ist das toll, in Python wird sowas meist als Code-Smell bezeichnet.
Das erstaunt mich ein wenig: Galt für Ruby ursprünglich nicht das Prinzip der "geringsten Überraschung"?
An sich schon, POLS war wohl einer der ursprünglichen Ziele von Ruby (wie konsequent das ist wenn beim iterieren über Strings Integer rauskommen die die ASCII-Werte der Zeichen repräsentieren, wie in Ruby 1.8 der Fall war kann man diskutieren), aber ich glaube durch Rails und wie viel coole Sachen man durch "magic" machen kann ist das erstmal in die andere Richtung gekippt. Ich glaube auch, jetzt wo viele gesehen haben, was für komplizierte Bugs man sich damit einfangen kann und wie schwer der Code zu maintainen ist, ist das auch etwas wieder zurückgegangen.

Aber für den aktuellen Stand, fragt am besten jemanden der aktiver in der Ruby-Community ist. Ich bekomme nur mit was in Hacker News gepostet wird.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
webspider
User
Beiträge: 485
Registriert: Sonntag 19. Juni 2011, 13:41

Ich sehe da nur den anfänglichen Hype dank Rails (mittlerweile verwendet man doch eher Sinatra, welches unter anderem Bottle und Flask inspiriert haben soll) und jetzt die Verwendung in Puppet und Chef (als Programmiersprache, Puppet verwendet kein Ruby zur Konfiguration, Chef aber schon). Jetzt sind andere Programmiersprachen angesagt.
Benutzeravatar
Manchotix
User
Beiträge: 54
Registriert: Samstag 14. Januar 2012, 19:54

webspider hat geschrieben:Jetzt sind andere Programmiersprachen angesagt.
Welche sind denn zur zeit angesagt ?

Also ich denke mal sowas wie Objectiv-C oder Scala sind doch sehr lebhaft momentan, ich werfe denn Anker auch mal weit aus und sage mal Javascript.
- Über Fehler sollte man sich freuen als über das richtige Ergebnis denn wir Menschen können nur aus den Fehlern lernen-
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Manchotix hat geschrieben:
webspider hat geschrieben:Jetzt sind andere Programmiersprachen angesagt.
Welche sind denn zur zeit angesagt ?
CoffeeScript, JavaScript (Node.js), Google Go, Clojure, Scala, Erlang wäre meine Einschätzung, wobei Erlang auch eher nur so mittelmäßig.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
lunar

@Leonidas Erlang hat mit Elixir eine interessante neue Sprache, mit einer von außen betrachtet recht lebhaften Community.

Ich denke auch, dass Scala und Clojure recht "angesagt" sind, bei Go bin ich mir nicht sicher. Ich nehme an, dass der Go-Hype bald durch einen Rust-Hype ersetzt wird. Go hat zwar den Google-Bonus, aber in vielen Details ist die Sprache wohl erstaunlich schwerfällig. Rust hat dieselbe Zielgruppe, ist aber anscheinend eleganter und interessanter.

CoffeeScript wünsche ich mir ins Nirvana. Ich hoffe, dass bald eine bessere Sprache für Node folgt, vor allem eine mit einer vernünftigen Syntax für CPS. async/await ala C# wäre schick.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

lunar hat geschrieben:@Leonidas Erlang hat mit Elixir eine interessante neue Sprache, mit einer von außen betrachtet recht lebhaften Community.
Ja, von Elixir habe ich auch schon vor einiger Zeit gehört, aber wusste nicht wie populär das in der Erlang-Welt ist, daher habe ich es nicht erwähnt. Armstrong hat das ja letztens sogar evaluiert.
lunar hat geschrieben:Ich denke auch, dass Scala und Clojure recht "angesagt" sind, bei Go bin ich mir nicht sicher.
Geht ja um angesagte Sprachen, nicht um tolle Sprachen. Sonst würde es mir schwer fallen JS überhaupt zu erwähnen. ;)
lunar hat geschrieben:CoffeeScript wünsche ich mir ins Nirvana. Ich hoffe, dass bald eine bessere Sprache für Node folgt, vor allem eine mit einer vernünftigen Syntax für CPS. async/await ala C# wäre schick.
IcedCoffeeScript? Aber ich muss auch zugeben, es ist mir völlig unklar, wieso es für Node nicht eine weit verbreitete Lösung für dieses Callback-Hell gibt, die ganzen Chaining-Libraries sind doch nur eine Krücke dafür dass JS halt keine gute Lösung für Callback-Handling hat.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
lunar

@Leonidas Es gibt halt zwei Arten, sich mit „angesagten“ Sprachen zu beschäftigen: Twitter/Reddit, …und Programmieren. Als Außenstehender bekommt man in der Regel nur ersteres mit. Insofern kann ich auch bei Elixir nur vermuten, wie populär die Sprache wirklich ist. Man redet jedenfalls viel drüber…

Bei Ruby, Node.js und Scala dagegen weiß man, dass die Leute auch tatsächlich mit programmieren, ohne dass die Popularität nachlässt. Im Gegenteil, Node.js ist seinen Kinderschuhen ja schon entwachsen, und erfreut sich dennoch größter Beliebtheit. So schlecht kann's also nicht sein…

Bei Go dagegen habe ich das Gefühl, dass der Hype bei Twitter stecken geblieben, und am Schritt zum ernsthaften Programmieren gescheitert ist. Jedenfalls liest man überproportional mehr über Go, als Programme in Go. Die Sprache scheint also ganz so toll nicht zu sein. Es wäre kein Verlust, wenn sie wieder verschwände…

IcedCoffeeScript ist halt… Coffeescript. Ich finde, dass sagt schon alles aus ;) Mich hat noch keine der JS-Frontend-Sprachen wirklich überzeugt… die meisten wirken auf mich wie überdimensionierte Sandburgen: Schick anzusehen, sehr beeindruckend, aber wohnen kann man nicht drin, und bei der nächsten Flut ist alles vorbei. Noch dazu ist bei vielen dieser Sprachen erschreckend wenig Kompetenz am Werk.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

lunar hat geschrieben:Bei Ruby, Node.js und Scala dagegen weiß man, dass die Leute auch tatsächlich mit programmieren, ohne dass die Popularität nachlässt. Im Gegenteil, Node.js ist seinen Kinderschuhen ja schon entwachsen, und erfreut sich dennoch größter Beliebtheit. So schlecht kann's also nicht sein…
Das gleiche Argument kann man für Java bringen, so schlecht kanns nicht sein. Ich denke Node profitiert einfach massiv vom Hype um JavaScript und Node selbst, denn die Runtime ist jetzt nicht schneller als andere Alternativen und V8 mit einer Stdlib zu versehen die sich jede zweite Major-Revision ändert ist jetzt auch nichts bahnbrechendes. Der Vorteil von Node ist eben dass im Rahmen des Hypes sehr viele, teils sehr tolle Libraries aufgetaucht sind. Daher: Angesagt definitiv, sinnvoll: womöglich.
lunar hat geschrieben:Bei Go dagegen habe ich das Gefühl, dass der Hype bei Twitter stecken geblieben, und am Schritt zum ernsthaften Programmieren gescheitert ist. Jedenfalls liest man überproportional mehr über Go, als Programme in Go. Die Sprache scheint also ganz so toll nicht zu sein. Es wäre kein Verlust, wenn sie wieder verschwände…
Also ich sehe deutlich mehr Go-Code (und natürlich Blogposts) als etwa Elixir, von daher hängt es wohl ab was man wo liest.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
lunar

@Leonidas: Ich sagte ja, man redet viel über Elixir. Ob das jetzt was bedeutet, weiß ich nicht.

Ich glaube ohnehin nicht, dass man die Popularität und Angesagtheit von Erlang/Elixir über Blogs und Github messen kann. Der typische Twitter nutzende und fleißig blochende Ruby/Node-Hipster mit ansehnlichem Github-Profil ist jedenfalls nicht die primäre Zielgruppe von Erlang. Dessen Nutzer treiben sich wahrscheinlich eher auf verschworenen Mailing-Listen herum. Erlang ist da eher so wie Ada: Eine ernsthafte Programmiersprache für sehr wichtige und sehr teure Projekte, bei denen es um viel Geld oder gar um Menschenleben geht, auf Github dagegen vollkommen belanglos.

Ich würde Java tatsächlich nicht als „schlecht“ bezeichnen. Ich meine, Du verwechselt da „schlecht“ mit „langweilig“ und „uninteressant“. Java ist langweilig, uninteressant, belanglos und glanzlos… und mithin die richtige Sprache für billige, langweilige, uninteressante, belanglose und glanzlose Projekte… was leider die meisten Projekte mehr oder weniger umfasst. Insbesondere der Aspekt „billig“: Denke mal nach, wie viele Systeme und Programme Dir im täglichen Leben begegnen, bei denen „billig“ oder zumindest „kostengünstig“ ein wesentlich konstituierendes Element ist. Wenn Dir in München im Metrobus die nächsten Stationen auf einem Infoscreen angezeigt werden, dann nur, weil man so ein System billig installieren konnte. Wäre das in Haskell geschrieben, hätten schon die Gehaltsforderungen der Entwickler dem Projekt den Garaus bereitet, bevor es überhaupt begonnen hätte :)

Jeder Narr kann Java programmieren, unterstützt und geleitet von den hervorragenden Werkzeugen zur Fehlersuche, zum Refactoring, zur Codeanalyse, etc., die ganz wesentlich durch die Primitivität der Sprache ermöglicht werden. Das macht Java – auf seine Art – zu einer guten Sprache für eine ganz bestimmte Art von Projekten.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

lunar hat geschrieben:Jeder Narr kann Java programmieren, unterstützt und geleitet von den hervorragenden Werkzeugen zur Fehlersuche, zum Refactoring, zur Codeanalyse, etc., die ganz wesentlich durch die Primitivität der Sprache ermöglicht werden. Das macht Java – auf seine Art – zu einer guten Sprache für eine ganz bestimmte Art von Projekten.
Das mag sein, aber von den Java-Projekten die ich gesehen habe fördern die Features von Java oder eher der Mangel derer unglaublich langen, umständlichen und schlecht funktionierenden Code, zum Teil eben weil jeder Narr Java-Code schreiben kann.

Letztendlich denke ich dass Go eben eine ähnliche Nische wie Java besetzen will ("langweilige, aber simple funktionierende Sprache" )und viele Kritikpunkte an Go können über das Aufzeigen des Erfolges von Java quittiert werden.

Und im Metrobus habe ich gesehen wie die Anzeige der nächsten Stationen gescheitert ist, Haltestellennamen wie Türkenstraße werden dann gerne mal zu TürkenstraÃe und das ist für ein Businfosystem in Deutschland ja geradezu beschämend ;) Da war wohl das System so billig, dass da Leute eventuell gar nicht wissen wie Encodings funktionieren. Natürlich heißt das nicht dass der Kostenpunkt belanglos ist, das keinesfalls, aber wenn wir um Kosten der Implementation von Dingen in verschiedenen Sprachen unterhalten wollen, dann ist das ein ganz anderes Thema.

Ich denke aber dennoch nicht dass sich unsere Positionen besonders stark unterschieden. Ich vermute nämlich, dass du im Kontext von "angesagten Programmiersprachen", bei dem ich inferieren würde dass es darum geht diese zu lernen und einen Vorteil zu haben auch eher nicht dazu raten würdest Java zu nehmen.

Ada habe ich mir tatsächlich auch angesehen, aber ohne nennenswerte FOSS-Community ists für mich ziemlich wertlos. Wenn ich in einem Job wäre wo Ada verlangt wäre, dann okay, aber die Jobs die Ada erfordern und die Jobs die ich persönlich ubernehmen wollte haben eher keine Überschneidungen. Und ich bin nicht DHH, als dass ich eine Community einfach aus dem Boden stampfen könnte :)
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten