Letzter Tag

Rails

Rails

  • Klarer Fokus auf bestimmten Typ von Anwendungen
  • Starke Konventionen (Convention over Configuration)
  • Sehr komplettes Web-Framework
  • Großes, gewachsenes Ökosystem

Rails

Fokus

  • Datenbank <> Webserver <> Client
  • Web best practices (Security, Accessibility etc.)
  • HTML plus Hotwire als Gegenentwurf zu React & Co.

Rails

Convention over Configuration

  • Alles hat seinen Platz
  • Die einfachen Dinge sind einfach, komplexe Dinge sind möglich
  • Aber: Diverse Architektur-Fallen für große Anwendungen

Rails

Fertige, Integrierte Lösungen für viele Probleme:

  • Background-Processing (ActiveJob)
  • Realtime-Updates (ActionCable/ SolidQueue)
  • Mail in/out (ActionMailer)
  • Authentifizierung
  • Deployment (Kamal)

Rails

Breites Ökosystem

  • Authentifizierung (z.B. OAuth, TOTP, Passkeys)
  • Authorisierung
  • Datenbanken (Search, Caches, andere Datenbanktypen)
  • Anbindung von 3. Party-Services

Rails

Deployment

  • Kamal als Komplettlösung für die Hetzners dieser Welt
  • Irgendwas mit Docker
  • (Heroku)

Rails

Installation

  • Ruby-Abhängigkeiten
  • Datenbank-Abhängigkeiten

Rails

Installation

gem install rails
rails new mein_app_name --sehr-viele-optionen

Praxis

Rails and Beyond

Rails-Alternativen

  • Hanami
  • Sinatra für kleine Sachen
  • Hoffentlich bald: Mosscap

Sonstige Ruby-Dinge

  • Webseiten: jekyll, bridgetown
  • Projektmanagement: redmine, gitlab
  • Social Media: Mastodon (Ursprünglich auch: Twitter)
  • Dokumente erzeugen: prawn, hexapdf, axlsx
  • HTML/XML: nokogiri, builder

Das Buch!

Danke!

halfbyte.me

Schönes Wochenende