Ruby ist keine ernsthafte Programmiersprache
(wired.com)- Der Imprinting-Effekt der ersten Sprache erzeugt eine besondere Liebe zu Ruby, und viele Entwickler akzeptieren ihre Mängel wie eine Art „Persönlichkeit“.
- Wer Ruby erst spät entdeckt, nimmt hinter der glänzenden Fassade die Schwachstellen beim dynamischen Typing, Footguns und die langsame Performance unverändert wahr; es bleibt ein starkes Gefühl zurück, als wäre die Sprache eine Generation zurück.
- Die Fail-Whale-Phase von Twitter, der Umstieg auf Scala und der gesamte Ruby-Flucht-Trend der 2010er Jahre belegen Rubys Leistungsgrenzen.
- Rails dominierte zwar eine Ära, doch heute ist die integrierte Philosophie zu einer Wand der Skalierbarkeit geworden und passt nicht mehr zum explosiven Wachstum des Webs.
- Heute wird Ruby vor allem von Rails-Legacy, der emotionalen Loyalität frühgeprägter Entwickler und der Nostalgie für den schönen Namen getragen.
Programmiersprachen und die Kraft des Imprinting
- In der Psychologie beschreibt Imprinting einen ähnlichen Prozess wie in der Programmierung.
Genau wie ein Gänseküken das zuerst gesehene Wesen als Mutter annimmt, bestimmt die erste erlernte Sprache langfristig die Wahrnehmung eines Entwicklers. - Ruby ist genau der prominente Profiteur dieses Imprintings.
Es bleibt eine tiefe Bindung zurück, weil es mit dem „Moment der ersten Natürlichkeit“ beim Programmieren verbunden ist. - Wird eine Sprache früh gelernt, treten Zuneigung und Sympathie in den Vordergrund und die Mängel werden gedämpft; wer viel später einsteigt, nimmt sie hingegen ohne diesen Schleier wahr.
Entstehung und Charakteristika von Ruby
- 1995 wurde Ruby von dem aus Osaka, Japan, stammenden Entwickler Matsumoto Yukihiro (Matz) entwickelt. Ruby ist die einzige bedeutende Programmiersprache, die außerhalb des Westens entstand.
- Aus Matts freundlicher Art entstand das Community-Motto MINASWAN (Matz Is Nice And So We Are Nice).
- Ruby hat eine knappe Syntax ohne Semikolons oder Klammern und wirkt dadurch auf Englisch sogar noch einfacher lesbar als Python.
- Es wird oft als Sprache genannt, die Anfängern den Moment gibt, in dem Programmieren „verstanden“ wird.
Rubys wahres Gesicht bei spätem Einstieg
- Wer nach mehreren Sprachen zu Ruby wechselt, merkt zunächst nicht die erwartete Eleganz, sondern eine veraltete Schlampigkeit.
- Hinter der hübsch gestalteten Syntax bleiben die Unschärfen des dynamischen Typings und unvorhersehbare Verhaltensweisen bestehen.
- Ruby ist eine dynamisch typisierte Sprache: In kleinen Projekten ist sie flexibel, in großen Strukturen treten jedoch Fehler auf, die erst zur Laufzeit sichtbar werden.
- Python oder JavaScript haben über Jahre Typwerkzeuge und ein Ökosystem zur statischen Analyse ausgebaut (z. B. TypeScript, mypy).
- Ruby fehlt eine vergleichbare Werkzeuglandschaft, weshalb es anfällig bleibt für Risiken, die als „Footgun“ (eine Funktion, die einem „auf die Füße fällt“) bezeichnet werden.
- In kleinem Maßstab wirkt alles weich; je größer ein System wird, desto mehr bleibt das Risiko bestehen, dass Fehler erst im Ausführungszeitpunkt sichtbar werden.
Rubys konstante Leistungsgrenzen
- In den wichtigsten Sprachleistungsvergleichen landet Ruby fast immer im unteren Bereich.
- Die Epoche der Fail Whale (Fehlerbild bei Störungen) bei Twitter war ein Symbol für die Grenzen einer Ruby-basierten Infrastruktur, und die große Störung während der Weltmeisterschaft 2010 machte die Grenzen deutlich.
- Twitter wechselte zu Scala; beim WM-Finale 2014 wurden dann 32 Millionen Tweets problemlos verarbeitet, und das neue Backend lief bis zu 100-mal schneller als zuvor.
- In den gesamten 2010er Jahren stiegen viele Unternehmen aus Ruby-Infrastrukturen aus; der verbleibende Rest blieb größtenteils im Legacy-Modus.
Der verlorene Platz Rubys
- Python, JavaScript und Perl, einst Ruby-Konkurrenten, haben jeweils klarere Zuständigkeitsbereiche besetzt.
Python übernahm KI, Wissenschaft und Bildung; JavaScript kontrolliert den gesamten Web-Bereich.
Perl befindet sich im Rückzug, doch für Ruby blieb kein Raum, es zu ersetzen. - Da Rubys eigene Stärken verschwanden, verbleibt es heute in einer unscharfen Zwischenzone.
Rails als letzte Bastion
- Der wichtigste Grund, warum Ruby in der Praxis noch lebt, ist Rails.
- Rails führte nach der Veröffentlichung durch DHH im Jahr 2004 die Web-2.0-Ära an und bot damals alle Elemente der Webentwicklung in einer integrierten Vision.
- Der dänische Entwickler David Heinemeier Hansson (DHH) ist im Gegensatz zu Matz als ein kontroverser und charismatischer Akteur bekannt.
- In der Frühphase von Web 2.0 war Rails bei Startups beliebt, da es Datenbank, Frontend und Backend als All-in-One-Paket bereitstellte.
- Unternehmen wie Airbnb, GitHub, Twitter, Shopify und Stripe starteten mit Rails.
- Doch je stärker das Web wuchs, desto mehr wurde die integrierte Struktur von Rails selbst zu einem Hindernis für die Skalierbarkeit.
Wie Frank Lloyd Wrights Usonian House wurde sie zunächst wunderschön, später jedoch nahezu unmöglich umzubauen.
Rubys Abwärtsbewegung und verbleibende Triebkräfte
- In der Stack Overflow Developer Survey ist Ruby von Platz 10 im Jahr 2013 auf Platz 18 im Jahr 2025 gefallen und wurde sogar hinter Assembly geschoben.
- Neue Entwickler orientieren sich an Python und JavaScript, während Ruby für Entwickler mit Vergangenheit bleibt.
- Heute trägt Ruby vor allem Rails-Legacy, die emotional geprägte Loyalität und das emotionale Bild einer „schönen, lesbaren Syntax“.
- Doch ohne Emotionen kann man die Position einer Sprache nicht zurückholen; die Realität hat sich längst auf schnellere, sicherere und skalierbarere Werkzeuge jenseits von Ruby verlagert.
3 Kommentare
Die Begründung ist so schwach, dass der Artikel ehrlich gesagt ziemlich irritierend wirkt ...
Antwort auf „Ruby ist keine ernsthafte Programmiersprache“
Hacker-News-Kommentar
Der alternative Link ist archive.is/O7rEl
Die im Artikel vorgebrachten Argumente wirken ziemlich dünn: „gefällt mir nicht“, „ich mag es nicht, weil es dynamisch typisiert ist“, „Twitter ist früher mal abgestürzt“, „es ist langsam“, „es schafft es in der Stack-Overflow-Umfrage nur unter die Top 20“
Meine erste Sprache war BASIC, die zweite Assembler für Z80A und 6502, die dritte Pascal. Aber keine dieser Sprachen hat meinen Geschmack für immer festgelegt
Viel prägender war eher, dass ein Professor an der Uni sagte: „Wer BASIC gelernt hat, ist als Programmierer für immer verdorben.“ Das war eine echte prägende Erfahrung. Damals habe ich gelernt, dass auch Menschen mit Autorität andere mit ihren Vorurteilen ruinieren können
Am Ende wirkt dieser Text wie der Versuch des Autors, damit anzugeben, wie klug er ist. Man kann ihn vielleicht wie einen Text von Steve Yegge unterhaltsam lesen, aber Yegge hatte zumindest mehr zu erzählen
Wenn seine Behauptung stimmte, hätte es keinen Grund gegeben, überhaupt so einen aggressiven Text zu schreiben. Dass mit Ruby tatsächlich viele Ergebnisse produziert wurden und die Sprache sich weiterentwickelt, ist bereits die Widerlegung
Ich widerspreche dem Artikel auch nicht in allen Punkten, aber nach diesen Maßstäben könnte man dieselbe Kritik genauso über die meisten „professionellen Sprachen“ wie Python, JS oder C++ schreiben
„Computing is pop culture“ gilt weiterhin, und dass so ein Text in einem Medium wie Wired erscheint, ist der Beweis dafür
Ich habe bis zum Ende gelesen, aber es gab keinen praktischen Grund, Ruby nicht zu benutzen.
Der Inhalt wirkte eher wie ein mit ChatGPT in ein paar Stunden produziertes journalistisches Desaster. Vermutlich war die erste Ruby-Codebasis, auf die der Autor gestoßen ist, einfach besonders chaotisch
Es gab wohl mal eine Zeit, in der Wired ein lesenswertes Magazin war, aber ich kann mich kaum noch daran erinnern
Ich denke nicht, dass der Rewrite auf Scala geschäftlich eine gute Entscheidung war. Nach 15 Jahren ist Scala deutlich weniger populär als Ruby. Ich weiß nicht einmal, was heute verwendet wird
Das wirkt einfach wie ein Clickbait-Artikel hinter einer Paywall
Dadurch ist mir wieder eingefallen, dass ich mein Wired-Abo kündigen sollte