Von
Nick Flückiger
/16.02.21

Bild von Jp Valery via Unsplash

Der tägliche Einsatz einer Technologie wirkt sich grundlegend auf die Entscheidungsfindung und den Entwicklungszyklus einer Anwendungen aus. Sie prägt die Art und Weise, wie wir unsere Produkte entwickeln, testen und liefern. Für uns ist Ruby on Rails die prägende Technologie, welche unsere Entwicklungsarbeit bestimmt.

Ist es Zeit für einen Wandel?

Ruby on Rails ist seit nun bald zwei Jahrzehnten in Entwicklung und hat sich über die letzten zehn Jahren hinweg als ein loyales, vertrauenswürdiges und zuverlässiges Werkzeug in unserem Tech-Stack erwiesen. Doch in den letzten Jahren hat die Branche einen beispiellosen Wandel in der Art und Weise erlebt, wie die Entwicklung in der modernen Welt bewältigt wird. Alte Prinzipien werden erneut verwendet und Unternehmen beginnen Javascript im Frontend und neuerdings auch im Backend einzusetzen. Von Javascript-basierten Systemen über Mikroservice-Architekturen bis hin zu Anwendungen, welche ausschliesslich auf remote Datenspeichern wie Firebase basieren.

Warum also nicht dem Wandel folgen und sich auf die Suche nach einer neuen Technologie begeben?

Was ist Ruby on Rails?

Bevor wir uns mit den Vor- und Nachteilen der Beibehaltung von Rails befassen, wollen wir aufzeigen, was das Ruby-Framework überhaupt ist. Ruby on Rails oder kurz Rails ist ein Framework, welches Entwickler*innen einen Werkzeuggürtel für die Webentwicklung zur Verfügung stellt. Es verfügt über Systeme für die Verwendung der neuesten Javascript-Pakete, Templates und ein klares Modell für die Trennung von Verantwortlichkeiten (MVC).

Wenn wir über ein Framework sprechen, beziehen wir uns meist auf eine Sammlung von Funktionen und Funktionalität, die die Entwicklung eines bestimmten Bereichs erleichtern soll. Im Falle von Rails ist dieser Bereich das Web – die Plattform der Zukunft.

Drei sehr starke Pros für Rails

Eine starke Basis

Einer der Hauptgründe dafür, dass Rails immer noch ein beliebtes Framework ist, ist die Tatsache, dass es auf einer noch beliebteren Basis aufgebaut ist: der Programmiersprache Ruby.

Ruby ist eine der felderprobtesten Sprachen. Das Hauptaugenmerk der Sprache liegt auf einer einfachen, intuitiven und natürlichen Sprachen- sowie Programmiererfahrung. Dadurch wird keine Low-Level Verwaltung des Speichers und kein Durcheinander mit Pointern und Referenzen gewährleistet. Kurz: Ruby ist ein grossartiger High-Level Werkzeuggürtel für jede erdenkliche Aufgabe.

Eine grosse Community

Neben einer grossen technologischen Basis verfügt das Framework auch über eine grosse und ständig wachsende Nutzerbasis, welche die alte Technologie mit häufigen Updates versorgt und darauf hinarbeitet, das Framework mit modernen Ansätzen zu erweitern.

Darüber hinaus versorgt die Benutzerbasis das Projekt auch mit Feedback, Fehlerbehebungen und Verbesserungsvorschlägen. Da die Gruppe der Mitwirkenden aus allen Lebens- und Arbeitsbereichen und verschiedenen Unternehmen aus unterschiedlichen Branchen stammt, wurde das Projekt so vorangetrieben, dass den Entwickler*innen viele Konfigurationen offengelassen werden, wodurch die Kosten für die Einführung eines anderen Anwendungs- und Entwicklungsstils verringert werden.

Aufgrund dieser dynamischen Sammlung von Updates, Problemen und Verbesserungen haben sowohl die Ruby-Programmierung als auch das Rails-Framework den Test der Zeit überstanden und sind beliebter als je zuvor.

Investierte Zeit

Die erste Version von Rails wurde 2004 veröffentlicht, wodurch es während den letzten 15+ Jahren reifen konnte. In dieser Zeit wurden damit Projekte aller Grössenordnungen und Ambitionen durchgeführt. Rails wurde somit mit praktisch jeder erdenklichen Aufgabe konfrontiert und hat vielen grossen Unternehmen gedient. Namentlich ist GitHub – das Mekka für Coder*innen – eines der Unternehmen, welches Ruby on Rails seit Langem verwendet.

Viele Jahre lang haben Unternehmen darauf vertraut, dass Rails ihnen eine starke Basis für ihre Entwicklung bietet, und sie haben damit gerechnet, dass es sich anpassen wird. Die Hoffnungen haben sich auch erfüllt! Jahr für Jahr werden Rails und Ruby aktualisiert. Neue Funktionen werden eingeführt, Fehler werden ausgearbeitet und alte Muster werden ersetzt. Dies alles hat dem Projekt eine Reife verliehen, welche nur mit Zeit und Mühe erreicht werden kann.

Der Nachteil (der jedoch meistens gar keiner ist)

Das Hauptargument, welches gegen die Programmiersprache Ruby und damit gegen Rails angebracht werden kann, ist dessen Geschwindigkeit. Da Ruby eine interpretierte Sprache ist, fehlt ihr die Leistungsfähigkeit einer kompilierten Sprache wie C. Und das wiederum überträgt sich auf das Rails-Framework. Natürlich kann es deshalb nicht auf dem gleichen Niveau wie C, C++ und andere Sprachen dieser Art operieren.

Dies ist einer der Hauptgründe dafür, dass Unternehmen auf der Suche nach einer Sprache und einem Framework sind, welches ihnen einen höheren Durchsatz und eine höhere Geschwindigkeit bietet. Sie strömen zu Sprachen wie Go und Rust.

Aber um ehrlich zu sein, werden die meisten von ihnen wahrscheinlich nach einer Weile wieder zu Rails zurückkehren, um der Magie zu frönen, die Rails hinter den Kulissen bietet. Die Handhabung von Routing, Anfragen, Datenbankverbindungen und vielem mehr ohne die Beteiligung der Programmierer*innen.

Denn wie bereits erwähnt, mögen Rust und Go die neuen grossen Sprachen der Zukunft sein... Aber bis sie Ruby on Rails oder Ruby ersetzen können, müssen sie erst der sich ständig ändernden Umgebung der Software-Entwicklung standhalten. Sie haben die Revolutionen in der Webentwicklung der letzten 15 Jahre nicht erlebt und es wird noch weitere zehn Jahre dauern, bis sie aus einem ähnlichen Erfahrungsschatz schöpfen können.

Rails als Geldsparer für Kunden

Aufgrund der breiten Erfahrung mit Rails ist es uns in den letzten zehn Jahren gelungen, unseren Kunden einen grossen Mehrwert zu offerieren. Wir bieten ihnen Lösungen angepasst an ihre Anforderungen. Und einer der Gründe, warum wir dies ermöglichen können, ist die Magie, die Rails ausmacht.

  • Die Beseitigung aller Komplikationen, welche bei der Konfiguration und Einrichtung auftreten können. 

  • Die Beseitigung aller Low-Level-Details und die Möglichkeit, dass wir direkt in die Details ihrer Geschäftslogik einsteigen können. 

  • Schnelle und dynamische Entwicklung von neuen Features ohne einen Kampf mit dem Compiler oder der Sprache.

Abschliessend kann man sagen, dass wir Ruby on Rails hoffnungslos verfallen sind. Als junges, dynamisches Team sind wir auf Software angewiesen, welche schon seit Jahren entwickelt, getestet und verwendet wurde. 

Wenn Sie also das nächste Mal eines unserer Produkte verwenden, können Sie sicher sein, dass Sie sich auf das gut getestete Framework und die Zeit und Mühe verlassen können, welche in die Entwicklung der Rails-Community gesteckt wurden.