Nach einem gemütlichen internationalen Abend im Biergarten geht es heute weiter mit interessanten Vorträgen. Der Abend schließt mit der "Übergang" Party - auf zur eurucamp.
Charles Nutter: "Optimizing Ruby"

Als einer der längeren Core-Entwickler von Ruby und JRuby, Charles startet mit typischen Benchmarkvergleichen von MRI, rubinius, JRuby. Anschließend erklärt er, warum ObjectSpace in JRuby deaktiviert werden musste, um sinnvolles Laufzeit- und Speicherverhalten zu bekommen. Und er zeigt, warum viele kursierende Benchmarks zeigen, dass JRuby 20-100 mal schneller als MRI ist (was natürlich nicht stimmt).

Ben Lovell: "Live long and proper with Celluloid and JRuby"

Celluloid ist ein Gem, welches sich zum Ziel gesetzt hat, alle Fallen und schweren Probleme rund um Concurrency zu kapseln. Es nutzt das "Actor model" pattern, um z.B. Variablen-Zugriffe in einem Model zu synchronisieren, indem man nur ein MOdul inkludiert. Es hat viele Features, die das Leben als Entwickler erleichtern und lohnt garantiert einen Blick.

Silvia Schreier: "RoR + DynamoDB = ?"

DynamoDB ist eine bei Amazon gehostete NoSQL-Datenbank, die auf Clustering und Skalierbarkeit ausgelegt ist. InnoQ hat ein Plugin entwickelt, welches diese Datenbank in Rails nutzbar macht.

Theo Hultberg: "Chasing the elefant" Mit JRubys Kernel Threads kann man richtig viele Daten verarbeiten. Ein Beispiel: 1920 cores verarbeiten 40 TB Daten. Und das alles nur mit Java- und JRuby-Code. Theo stellt "Rubydoop" vor - ein Gem, welches das verteilte "Hadoop"-Dateisystem unter JRuby nutzbar macht.

Tom Stuart: "The linguistic philosophy of Ludwig Wittgenstein"

Nach all der Technik gibt es einen kurzen Ausflug in die Philosophie.

Lukas Rieder: "Stateful Application Server"

Wenn man ein Browser-Game mit hunderten Spieler schreibt, hat man das Problem, am Anfang nicht zu wissen, wie erfolgreich das Spiel wird. Um seinen State (bzw. die Session) skalierbar konsistent zu halten, werden diese in den gestern erwähnten json-Dateien auf SSDs gespeichert. Die verschiedenen JVM-Server halten die States und tauschen sich gegebenenfalls aus, wenn sie sich die Session übergeben müssen. So ist sichergestellt, dass immer nur einer der vielen Server die Session hat.

Martin Mauch: "JRuby and Scala - not even a compiler can separate us!"

Warum kann man sowohl Ruby als auch Scala lieben? Scala hat viele Tools, die absolut vergleichbar mit Ruby-Tools sind. Und - da es auch auf der JVM läuft - kann es wunderbar mit JRuby zusammen arbeiten. Einen großen Vorteil, dies zu machen, scheint es aber z.Zt. nicht zu geben.

Josh Kalderimis: "JRuby Running All The Things"

Ein Motivations-Talk zum Schluss: Wo wird JRuby bei TravisCI verwendet und was für Erfahrung hatten sie? Zu den schlechteren gehörte ein nicht skalierendes ActiveRecord, aber ansonsten ein wirklicher Motivationsvortrag.