Ik heb ermee gespeeld (boek en alles gekocht) bij de eerste versie, maar toen ik m'n programmaatje uiteindelijk online wilde zetten werkte 'ie niet, en door een nogal rigide (lees: slechte) webhost kon ik er ook niet achterkomen wat het probleem was. Het punt hiermee was dat RoR slechts eenmaal compileert, waarna je de hele webserver opnieuw op moet starten om bijvoorbeeld (database)configuratie opnieuw in te laten laden. Iets wat m'n (toenmalige) webhost niet ondersteunde, dus.
RoR is sowieso wel interresant: ik wil, als ik er nog eens tijd voor krijg, er eens een propere webapp mee maken. Misschien bij een volgende stage opdracht of iets dergelijks.
Op
de volledige aankondiging is een overzicht te zien van de nieuwe features van RoR 2.0. Het meeste lijkt mij verbeteringen tov de vorige versie(s): verbeterde / veranderde URL structuur, verschillende templates (en template benamingen) voor verschillende media (zodat een template index.atom.builder een .atom bestand is wat geparsed wordt door Builder, en show.html.erb wat erb gebruikt om een html pagina te maken). Eenvoudiger gebruik van SSL, verbeterde beveiliging (mbt xss en javascript).
Een nieuwe feature waar ik m'n wenkbrauw bij optrek is wat in de blogpost 'cookie store sessions' genoemd wordt. In plaats van in een database of op de server z'n /tmp directory worden sessions (en de gegevens daarin) nu gehashed en als cookie bij de gebruiker geinstalleerd. De voordelen hiervan zijn, volgens de blogpost, dat een cookie niet nagemaakt kan worden, en dat er aan de serverkant geen onderhoud meer is (geen extra db tabel, geen sessie data op de server). Voor relatief kleine sessions kan dit ook wel goed werken, maar ik vraag me af hoe veilig dit is (aangezien de cookies / sessions nog wel uitgelezen kunnen worden). Maar het kan gewoon uitgezet worden (en op de oude manier geregeld worden), dus voor diegenen die niet over willen gaan...
Hrm. Nieuwe request profiler, voor het zoeken naar bottlenecks in je programma op een request-niveau, verschillende helpers voor bijvoorbeeld het aanmaken van een atom feed, de OR Mapper (Active Record) is er qua perfornance op vooruitgegaan door toevoegen van een query cache, en tests zijn sneller doordat fixtures (test database gegevens) versneld zijn (50 tot 100%), etc etc etc.