Nach knapp 2 Jahren, tausenden Commits und die Hilfe von 1.600 Entwicklern ist es geschafft. Heute wurde Rails 3.0 veröffentlicht. Wer die Entwicklung verfolgt hat weiß, dass Rails 3.0 nicht nur von neuen und guten Funktionen strotzt, sondern auch die Basis komplett überarbeitet und zukunftssicher gemacht wurde. So ist “Convention over Configuration” immer noch der Leitsatz, aber von nun an ohne Einschränkungen. Fast alles an Rails 3 ist austauschbar und verlangt kein Hacking/Monkey Patching: verwende Mongrel, CouchDB, Datamapper, Redis, Haml und alles was noch gerade im Trend liegt.
Danke an alle Rails Committer und and die super Community (fast alle Plugins sind jetzt schon Rails 3 kompatibel)! Zwar sind Zukunftsvorhersagen immer so eine Sache, aber ich denke es ist klar Rails 3 hat eine erfolgreiche und große Zukunft vor sich.
Hier ein paar Links:
Lingui.st - Online Resource Editor, Manage your Ruby/Rails, Java, .Net and C++ language files with ease
Solltest du noch nichts über Sendgrid wissen, dann wird es Zeit. Vorbei sind die Zeiten, wo man selbst noch einen Email Server aufsetzt und administriert.
Emails versenden ist ein wichtiger Teil in jeder Web Applikation. Der Email Server ist schnell aufgesetzt und Emails werden versendet. Jedoch kommen diese oftmals nicht an, sondern verschwinden im Spam Ordner. Sendgrid löst beide Probleme. und hat noch einige andere Features zu bieten. Für mich ist jedoch nur eines wichtig: meine Emails müssen verschickt werden und sollen nicht im Spam landen. Sendgrid hilft dabei und ist auch noch günstig.
Um Sendgrid in Rails zu verwenden: einfach
in die environment Datei (e.g. config/environments/development.rb) einfügen. Das wars schon! Mache es den anderen Start ups nach und schicke deine Emails einfach mit Sendgrid.
Lingui.st - Online Resource Editor, Manage your Ruby/Rails, Java, .Net and C++ language files with ease
Wie ich in meinem letzten Beitrag erwähnt habe, arbeite ich momentan viel mit Redis/Resque. Die Installation von Redis (wenn man RC2 verwenden will, dann muss man das Skript entsprechend ändern) ist ja kein Problem und Resque muss man nur als Gem installieren. Oftmals vergißt man jedoch, dass das entsprechende Environment/Files für einen Resque Worker nicht automatisch zur Verfügung stehen. Man bekommt dann die typischen “Class not found” Fehlermeldungen.
Arbeitet man mit Rails, dann bietet sich der Rake Task “resque:setup” an um alles notwendige zu laden. Einfach unter den Ordner “lib/tasks” (dort werden rake Dateien automatisch geladen) eine Datei mit dem Namen “resque.rake” anlegen und folgendes einfügen:
Dieser Rake Task erweitert “resque:setup”, sodaß dieser zuerst das Environment ladet und anschließend noch alle Ruby Dateien die im Ordner “lib/hemju/jobs” liegen hinzufügt. Will man also einen neuen Resque Job erstellen, einfach eine entsprechende Ruby Klasse unter /lib/hemju/jobs anlegen und schon kann der Worker (nach dem Neustart) darauf zugreifen.
Lingui.st - Online Resource Editor, Manage your Ruby/Rails, Java, .Net and C++ language files with ease
Ich arbeite nun schon einige Zeit mit Redis/Resque und bin damit sehr zufrieden. Vor kurzem brauchte ich ein Skript (Rake taks) um all gestarteten Resque worker mit einem Continuous Integration (ich verwende Hudson) Build zu beenden.
Hier das Resultat:
Einfach eine neue Datei mit der Endung “.rake” unter “lib/tasks” anlegen und schon ist der Rake task verfügbar. Wenn du “rake -T” im Rails Ordner ausführst, solltest du den Rake task Namen sehen.
Lingui.st - Online Resource Editor, Manage your Ruby/Rails, Java, .Net and C++ language files with ease