10 Jahre Ruby on Rails @ Puzzle ITC

Pascal Zumkehr

Mit grosser Freude schauen wir zurück auf 10 Jahre Softwareentwicklung mit Ruby on Rails – das Webapplikationsframework für Programmiererzufriedenheit

Komplett ausgerüstet seit den Anfängen

Als wir im Sommer 2006 Ruby on Rails erstmals für ein Projekt in Betracht zogen, war die Version 1.0 des Frameworks gerade erst vor einem halben Jahr veröffentlicht worden.
Dennoch fehlte keines der praktischen Hilfsmittel, welche eine qualitativ hochwertige Softwareentwicklung dermassen erleichtern und die in anderen Bereichen erst später populär wurden:

  • Eine Vielzahl an Generatoren und Befehlen, um schnell einen Einstieg ins Framework zu finden.
  • Ein Framework für kontinuierliche Datenbankmigrationen, inklusive Rollbacks.
  • Eine vorkonfigurierte Testumgebung mit Datenbank und definierbaren Testdaten.
  • Deklarative Befehle für mächtige Konstrukte und unübertroffene Lesbarkeit.
  • Vorgegebene Ordnerstrukturen, um sich sofort in einem Projekt zurechtzufinden.

Damals wie heute erlauben es uns diese Annehmlichkeiten, direkt auf unsere Business Logik zu fokussieren und keine Zeit mit der Konfiguration von zusammengewürfelten Komponenten zu verlieren. Und selbstverständlich bietet Rails ein solides MVC Framework, welches von Validatoren über E-Mail und JavaScript Integration bis zum Request Caching alles unter einen Hut bringt.

Kontinuierliche Verbesserungen

Rails blieb nicht auf seinen Lorbeeren sitzen, sondern trieb die Entwicklung von Webframeworks weiter voran. Bereits in der Version 1.2  setzte Rails vollumfänglich auf REST, dem heutigen de facto Standard für APIs. Neue Komponenten kamen hinzu, alte, welche sich als weniger populär herausstellten, wurden in Seitenprojekte ausgelagert. Viele grosse Unternehmen wie Github, Airbnb oder SoundCloud erkannten die Vorzüge von Rails. Eine grosse Umstellung stellte der Übergang von der Version 2 zur Version 3 dar. Neben grossen internen Umstellungen, welche die Modularität des Frameworks erhöhten, trugen unter anderem die folgenden Teile zum neuen, noch heute aktuellen Aussehen von Rails bei:

  • Engines ermöglichen die Auslagerung von kompletten MVC Modulen in wiederverwendbare Komponenten.
  • Bundler verwaltet die Versionen der eingesetzten Ruby Bibliotheken/Gems.
  • Rack, eine generische Brücke zwischen Ruby Applikationen und Webservern, wird die Basis für den Request/Response Zyklus.
  • Arel stellt eine einfache DSL für Datenbankabfragen zur Verfügung.
  • CSRF und XSS Attacken werden von Haus aus vereitelt.

Die Umstellung ist erst wirklich mit Version 3.1 abgeschlossen, in der Rails nochmals einen neuen Trend setzt und eine Asset Pipeline integriert. Damit werden automatisch Sass Stylesheets und JavaScript Dateien (z.B. von CoffeeScript) übersetzt, zusammengefügt und minifiziert, um die Wartbarkeit dieser Assets sowie die Geschwindigkeit für den Benutzer zu steigern.

Eine glänzende Zukunft

Vor einem Monat erschien die Version 5.0 von Ruby on Rails. Das Framework ist mit einem expliziten API Mode und der Unterstützung von WebSockets gerüstet für die neue, von JavaScript Frontends dominierte Welt, welche auch weiterhin Backends benötigen wird. Mit Turbolinks ist ausserdem eine in der gewohnten ‚it just works‘-Manier integrierte Technologie dabei, welche die Ladezeit von Server-generierten Seiten an diejenigen von Client-seitigen herankommen lässt. Daneben bietet Ruby on Rails weiterhin eine auf dem Plateau der Produktivität angekommene Grundlage, mit welcher einfache wie auch komplexe Webapplikationen effizient umgesetzt werden können. So freuen wir uns auch nach zehn Jahren jedes Mal aufs Neue, wenn wir ein Projekt mit Ruby on Rails starten können!

Kommentare sind geschlossen.