Einführung in Ruby on Rails auf Pro-Linux

Pro-Linux präsentiert heute den ersten Teil des Workshops »Ruby on Rails« von Sascha Kerskens.

Nach einem kurzem Überblick über Ruby, erklärt Sascha die Installation der benötigten Pakete und entwickelt anschließend eine kleine Beispielanwendung, in der er auf die einzelnen Komponenten (Migration/MVC/..) eingeht.

http://www.pro-linux.de/work/ruby-on-rails/ruby-on-rails1.html

Rails-Konf Video: Amazon S3/EC2 (Jonathan Weiss)

Über die Videopräsentation
Amazon bietet mit der Elastic Compute Cloud (Amazon EC2) und dem Simple Store Service (Amazon S3) zwei Web-Services an, die es anderen Entwicklern ermöglichen von der Amazon Plattform in Sachen on-demand Skalierung, Performance und Redundanz zu profitieren. Amazon S3 stellt dabei „storage for the internet“ dar, also unbegrenzter Speicherplatz in Amazons Datacentern, der über eine REST-API befüll- und aufrufbar ist. Amazon EC2 bietet Entwicklern die Möglichkeit on-demand beliebig viele Instanzen von virtuellen Maschinen per Web-Services zu starten und zu kontrollieren.

Dieser Vortrag soll demonstrieren, welchen Nutzen man von S3 und EC2 ziehen kann und wie einfach diese Web-Services in die eigene Rails Applikationen einzubinden sind. Nach einem Überblick über S3 und EC2 werden konkrete Einsatzszenarien besprochen und deren Implementation in Rails dargestellt. Die Szenarien reichen dabei von S3 als Backendspeicher bis zu On-Demand Application Server mit Capistrano und EC2.

Über den Autor
Jonathan Weiss ist technischer Projektleiter bei der Peritor Wissensmanagement GmbH. Dort ist er verantwortlich für die Entwicklung von web-basierten Wissensmanagement-Systemen und die Beratung im Bereich der Software-Entwicklung. Daneben ist er freiberuflicher Entwickler und arbeitet bereits seit über 2 Jahren mit Rails in der Praxis. Unter anderem ist er einer der Verantwortlichen von Meinprof.de, eine der ersten deutschen Rails-Seiten.

Rails-Konf Video: Caching in Rails (Tammo Freese)

Über die Videopräsentation
Caching ist eines der wichtigsten Mittel, eine Ruby on Rails-Anwendung zu beschleunigen. Tammo Freese gibt einen Überblick über die Caching-Mechanismen in Rails, er erläutert, wie Caching getestet werden kann, und zeigt typische Probleme und Lösungen beim Caching in Rails-Anwendungen.

Über den Autor
Tammo Freese ist freiberuflicher Berater, Trainer und Extreme Programmer. Sein Schwerpunkt ist die agile Entwicklung mit Ruby on Rails, AJAX und Eclipse. Zur Zeit arbeitet er in Rails-Projekten. In seiner spärlichen Freizeit forscht er an einer Refactoring-Unterstützung im Software-Konfigurationsmanagement.

Link: http://www.loroma.com/loroma/movie.faces?movie=9

Rails-Konf Video: Ferret – Search Engine for Ruby (Jens Kraemer)

Über die Videopräsentation
Eine funktionierende Volltextsuche ist für viele Webapplikationen unerlässlich. Doch allzu schnell gelangt man an die Grenzen von LIKE-Statements und MySQL-Volltextindizes.

Ferret ist eine hochperformante Volltextsuchmaschine für Ruby. Im Funktionsumfang vergleichbar mit der aus der Java-Welt bekannten Lucene-Bibliothek, übertrifft das in C implementierte Ferret sein Vorbild oft sogar, was die Geschwindigkeit angeht.

Acts_as_ferret ist ein Rails-Plugin mit dem Ziel, seinem Benutzer die Verwendung von Ferret so leicht wie möglich zu machen. Ein Einzeiler in der Model-Klasse sorgt dafür, dass der gesamte Datenbestand komfortabel und schnell durchsucht werden kann. Dabei wird der Index stets auf dem aktuellen Stand gehalten, wenn Datensätze hinzukommen, aktualisiert oder gelöscht werden.

Dieser Vortrag gibt zunächst Einblick in die Funktionsweise und Besonderheiten von Ferret. Anschließend wird gezeigt, wie man mittels acts_as_ferret typische Anwendungsfälle von erweiterten Suchformularen über Live-Searches bis hin zur Model-übergreifenden Indizierung von Objekten realisieren kann. Abschließend wird auf Besonderheiten im Produktivbetrieb eingegangen.

Über den Autor
Jens Krämer ist Softwareentwickler bei webit! in Dresden und auch als Freelancer im Bereich Rails unterwegs. Seit Anfang 2006 ist er Maintainer von acts_as_ferret, einem Rails-Plugin dass die Nutzung von Ferret in Rails-Anwendungen extrem vereinfacht. Ferret selbst ist im Prinzip eine Lucene-Implementierung in C für Ruby, wobei die API mittlerweile den von Lucene geerbten Java-Stil abgelegt hat.

Link: http://www.loroma.com/loroma/movie.faces?movie=7

Rails-Konf Video: Hobo – Rails Application Builder (Niko Dittmann)

Über die Videopräsentation
Hobo ist ein Application-Builder auf Rails. Hobos Ziel ist es, nicht nur den ersten Prototypen einer Applikation oder ein Admin-Interface in kürzester Zeit zu erzeugen, sondern dem Entwickler bis zur Produktionsreife der Applikation die Arbeit zu erleichtern. Dazu trägt eine exzellente Templatesprache (DRYML) ebenso bei wie die Möglichkeit, einzelne Model- und Controller-Methoden anzupassen oder zu überschreiben, ohne an Flexibilität zu verlieren.

Niko Dittmann demonstriert in seinem Vortrag anhand einer einfachen, live programmierten Applikation sowohl den Kick-Start, als auch Anpassungen an Models, Views und Controllern.

Über den Autor
Niko Dittmann arbeitet seit fast zwei Jahren mit Rails und programmierte unter anderem ein kleines CMS, einfache Shop- oder Seminarbuchungssysteme und eine SMS-Projektionssoftware auf Rails-Basis. In den letzten Monaten setzte er mehrere Projekte mit Hilfe von Hobo um.

Link: http://www.loroma.com/loroma/movie.faces?movie=14

Rails-Konf Video: Prosa, Lyrik, Ruby und Rails (Nicolai Reuschling)

Über die Videopräsentation
Jahrhundertelang schreibt die Menschheit schon Prosa und Lyrik – in den meisten Fällen für jedermann lesbar und verständlich. Seit Einführung von Programmiersprachen und formalen Spezifikationen werden jetzt aber auf einmal (Quell-) Texte und Dokumente erstellt, die von Laien meist gar nicht und von Fachleuten oft nur mit Mühe verstanden werden.

Im besten Fall erinnert sich der Autor noch an Details und Zusammenhänge. Einzig und allein der Compiler/Interpreter/Prozessor kann mit der Abfolge von Symbolen und Zeichen etwas Sinnvolles anfangen.

Die Herausforderung beginnt also lange bevor ein Fehler auftritt. Schwierig wird es dann so richtig, wenn ein Computer nicht mehr das leistet, wofür er (einst) einmal programmiert wurde oder wenn ein Programm an neue Herausforderungen angepasst werden muss.

Ruby als Programmiersprache ist für seine leicht verständliche Syntax bekannt.

Ruby-Kommandos lassen die Grenzen zwischen Anforderungsspezifikation und Quellcode verschwindend gering werden. Ruby on Rails geht sogar noch einen Schritt weiter und er- laubt es Entwicklern, ganze Applikationen „lesbar“ zu „gestalten“. Gestalten darf in diesem Zusammenhang gerne als „schöpferisch, kreativ“ verstanden werden.

Der Vortrag erörtert die Notwendigkeit von verständlichem Quellcode und belegt an Beispielen, wie mit Ruby und Ruby on Rails die Wartbarkeit von Applikationen und die Produktivität von Entwicklern gesteigert werden kann. Weiterhin wird auf mögliche Veränderungen des Entwicklungsprozesses eingegangen.

Über den Autor
Nicolai Reuschling studiert Informatik an der Hochschule Darmstadt und beschäftigt sich seit ein paar Jahren mit agiler Softwareentwicklung und Ruby. In seiner Bachelor-Thesis beschreibt er aktuell, welche Wartungsanforderungen an Webapplikationen gestellt werden und wie Ruby (und natürlich Ruby on Rails) diesen Anforderungen entgegentritt.

Link: http://www.loroma.com/loroma/movie.faces?movie=4

Rail-Konf Video: Sicherheit von Ruby on Rails (Heiko Webers)

Über die Videopräsentation
Jeden Tag stehlen kriminelle Hacker zahlreiche Kreditkartennummern, vertrauliche Informationen, Passwörter und alles andere, was sie zu Geld machen können. Sie verunstalten Webseiten, beinträchtigen die Verfügbarkeit von Web Anwendungen oder löschen Daten. Viele Unternehmen sind heute vom Internet abhängig, der Bereich der Sicherheit sollte deshalb nicht ignoriert werden. Viele Entwickler sehen Rails als ein „sicheres“ Framework an. Das mag stimmen, da weniger Code geschrieben werden muss, und weniger Code bedeutet einen besseren Überblick. Tatsächlich aber hängen die meisten Sicherheitsprobleme in Web Anwendungen nicht von der eingesetzten Programmiersprache oder dem Framework ab, sondern betreffen Web Anwendungen im Allgemeinen. Dieser Vortrag behandelt die bekanntesten Angriffe, wie Interpreter Injection im Bezug auf Rails (Cross-Site Scripting (XSS), SQL Injection, Logic Injection), verbreitete Konfigurationsfehler, Session- und Benutzerverwaltung, Ajax-Sicherheit, Sicherheitstipps und mehr. Rails hat gute Sicherheits-Features, man muss sie nur einsetzen.

Über den Autor
Heiko Webers ist freiberuflicher Berater und Softwareentwickler im Bereich von Internet-Anwendungen. Er erforscht neue Entwicklungs- und Internettechnologien, Knowledge Engineering und Softwaresicherheit. Im Rahmen seiner Abschlussarbeit an der Universität beschäftigte er sich mit der Sicherheit von Internet Anwendungen im Hinblick auf Ruby On Rails. Vor kurzem startete er mit der Open Web Application Security Project (OWASP) das Ruby On Rails Security Project (www.rorsecurity.info).

Link: http://www.loroma.com/loroma/movie.faces?movie=12

Schummeln erlaubt

Cheats, eigentlich ein Begriff aus der Spielewelt, hält nun Einzug in die Railswelt. Allerdings ist Cheaten bei der Programmierung nicht so verpönt wie in Games. 🙂

Blaine Kendall hat sich die Mühe gemacht und die meistgenutzen Befehle bei der Railsentwicklung gesammelt und kommentiert. In seinem 14 Seiten langen  PDF findet man nicht nur die gängigen Befehle die benötigt werden um eine Railsappikation zu kreieren, sondern auch einen kleinen Ausflug in die Ruby, irb und rDoc-Welt. Die gesammelten Angaben entstammen aus dem "Agile Web Development with Rails"-Buch, von anderen Webseiten und Tutorials die man im Netz findet. Alles in allem kann man jedem das PDF empfehlen, der sich gerade in Rails einarbeitet und mal kurz nachschauen möchte, wie ein bestimmter Befehl lautete.

Ihr findet das Dokument unter [URL]

Ruby on Rails / Apache2 / Debian

Joe beschreibt auf adminspotting.net wie man eine Ruby on Rails Umgebung basierend auf Debian mit dem Apache2 als Webserver aufsetzt.

Auf einem Debian werden folgende Komponenten installiert und konfiguriert: Apache2, MySQL, Subversion, Ruby und RoR.
Das Tutorial steht unter [URL] zur Verfügung.