Ruby 1.8.7 ist alter Käse, und eigentlich sollte man für 1.9.2 und aufwärts entwickeln. Trotzdem habe ich mir gerade die Arbeit gemacht, SchnitzelPress kompatibel mit Ruby 1.8.7 zu machen. Warum?
Produktiv werden so gut wie alle SchnitzelPress-Blogs unter Ruby 1.9.2+ laufen, denn SchnitzelPress ist in erster Linie für den Einsatz auf Heroku konzipiert, wo Ruby 1.9 zum Einsatz kommt. Wer einen eigenen Server betreibt, auf dem er SchnitzelPress hosten will, der bekommt auch Ruby 1.9 installiert. Für den Produktiveinsatz ist eine Kompatibilität mit 1.8.7 also unnötig.
Es geht viel mehr um die Installationsprozedur. SchnitzelPress ist keine Bibliothek für Entwickler, es ist eine Blog-Engine. Ich kann mir nicht erlauben, davon auszugehen, dass jeder User, der ein SchnitzelPress-Blog aufsetzen will, auch Entwickler ist. Deswegen ist eines der Ziele, die ich mit SchnitzelPress verfolge, die Installation und Einrichtung eines Blogs unter allen gängigen Betriebssystemen so einfach wie möglich zu machen, allen voran natürlich Mac OS X und Windows. (Linux-User kommen schon irgendwie klar.)
Würde ich Ruby 1.9 voraussetzen, müsste sich der User dieses erst einmal installieren. Dafür müsste er (am Beispiel von OS X):
- Xcode installieren
- rbfu, rbenv oder RVM installieren
- Ruby 1.9.2+ kompilieren (u.U. über ruby-build)
Für einen Entwickler mögen diese Punkte trivial erscheinen, aber sie für das Einrichten eines kleinen Blogs vorauszusetzen, ist natürlich Overkill. Dazu kommt, dass SchnitzelPress Ruby 1.9 bisher nur wegen der neuen Hash-Syntax benötigt hat. Nur wegen dieser Hash-Syntax jeden potenziellen Nutzer durch die oben erwähnten Schritte durchzujagen, wäre ziemlich dumm.
OS X wird (auch in der aktuellen Version 10.7) nach wie vor mit Ruby 1.8.7 ausgeliefert. Hier ist es also das Ziel, SchnitzelPress so zu gestalten, dass man mit eben dieser vorinstallierten Ruby-Version das Gem installieren, ein Blog erstellen und dieses auf Heroku schieben kann. (Für den letzten Punkt wird natürlich git benötigt. Ich bin mir aktuell nicht sicher, ob OS X 10.7 damit ausgeliefert wird; zur Not wird da aber der Heroku Toolbelt aushelfen, das Ding muss ich mir aber erst noch näher anschauen.)
Unter Windows wird die Sache noch spannender, denn es wird komplett ohne Ruby ausgeliefert. Hey, es ist Windows! Hier hängt alles am bereits erwähnten Heroku Toolbelt. Windows-User werden damit wahrscheinlich nicht so schnell ihr SchnitzelPress-Blog lokal zum Laufen bekommen, aber sie werden zumindest eines einrichten und auf Heroku pushen können, und das ist schon einmal ein guter Anfang.
(Über meinen “Platform as a Service”-Fetisch bloggte ich bereits in Regenbögen und Einhörner.)