RubyEnRails 2008: een impressie

De Belgen Komen!

Jongstleden 10 juni was het weer zover: Nederlandstalige Ruby- en Rails-fanaten uit alle windstreken reisden af naar Amsterdam om zich in de Hogeschool een dagje te laten onderdompelen in presentaties en demonstraties over hun favoriete programmeertaal en framework. Dit jaar werd de bijeenkomst zelfs geëerd met de aanwezigheid van een heuse delegatie Belgen!

EaRing: de ultime accessoire voor elk Ruby-bedrijf

Na registratie en een kopje koffie werd de dag officieel geopend, waarna Zed Shaw het podium besteeg. Deze programmeur en muzikant vestigde zijn faam toen hij Mongrel ontwikkelde - voor lange tijd de meest gebruikte webserver voor Rails-applicaties. Toen hij enkele maanden geleden zijn rant “Rails is a ghetto” schreef, drukte hij voorgoed zijn stempel op de Rails-geschiedenis. Uit Zed’s blog en website valt al een beetje op te maken dat hij een enorm intelligente programmeur is met een goed gevoel voor humor, wat ook erg duidelijk merkbaar was op het podium. Meer dan eens schoot de hele zaal in de lach om een gevatte opmerking of slimme woordgrap, wat de presentatie voor mij al meteen mijn favoriet van die dag maakte. Bijzondere man!

Zed begon zijn praatje met de introductie van EaRing, een assembler-parser die hij in twee weken in elkaar heeft gehackt, speciaal voor de RubyEnRails-dag. Dit om te laten zien hoe simpel het is om zo’n relatief gecompliceerde parser te schrijven en zogenaamd om Ruby-bedrijven te stimuleren hiermee hun eigen Ruby VM te maken, “becasue that what everyone does these days!“. Na een paar Fibonacci-demo’s en de bijbehorende grappen ging Zed’s presentatie verder met Amdahls Law ( 1/((1-f )+(f/p)), “It’s mathematics for ‘You’re Fucked’“) die gebruikt wordt om te berekenen hoeveel baat het hele systeem heeft bij de verbetering van een onderdeel. Zed gebruikte deze wet om uit te leggen dat de prestaties van brak geprogrammeerde software en het toevoegen van hardware zich niet recht-evenredig verhouden: meer servers of processoren voegen maar een fractie prestatieverbetering toe aan een slecht geprogrammeerde website of een site die geprogrammeerd is in een langzame taal.

De moraal van het verhaal: gooi niet zonder nadenken meer hardware tegen je website aan zonder na te denken over de code en de taal. Zed’s presentatie is hier te downloaden in PDF-formaat.

Worse Than Failure met Obie Fernandez

Na een verkwikkend kopje zwart goud nestelde het gezelschap zich weer in de Grote Zaal om naar Obie Fernandez te luisteren. Mijn verwachtingen waren redelijk hoog aangezien Obie zich (o.a. met zijn boek “The Rails Way“) een aardige naam heeft verworven in de Rails-community. Het stelde me dan ook teleur dat hij niet verder kwam dan het afkraken van slecht-geprogrammeerde Rails-code. Toegegeven, er zaten gedrochten van code-snippets bij (een controller van 1500+ regels, anyone?), maar omdat Obie nauwelijks de moeite nam om te vertellen hoe het dan wél moest, was de talk wel grappig maar niet echt leerzaam.

Rails-hosting revisited

Na de lunch was het tijd voor twee presentaties over nieuwe manieren van Rails-hosting: Phusion Passenger en JRuby. Eerstgenoemde komt van onze eigen Neêrlandsche bodem. Phusion Passenger werd een paar maanden geleden geïntroduceerd als mod_rails; een Apache-module die Rails-applicaties moest gaat hosten met als sterke ruggengraat het eindeloos doorontwikkelde Apache. Op de RubyEnRails-dag werd aangekondigd dat versie 2 van deze module beschikbaar is. Aangezien de module nu ook Rack en WSGI applicaties kan hosten, werd de naam mod_rails vervangen door Phusion Passenger.
De presentatie op zich was niet heel spannend (de heren lijken zich nog wat te moeten trainen in het geven van presentaties), maar het moge duidelijk zijn dat Phusion Passenger absoluut revolutionair is in de Rails wereld. Eigen onderzoek wijst uit dat Rails-applicaties in Phusion Passenger stabieler draaien en makkelijker te deployen zijn dan in de exotische Mongrel setup die ik hiervoor gebruikte.

Nadat de mannen van Phusion het podium verlaten hadden, werd de lege plaats ingenomen door Charles Nutter; de frontman van een veelbelovende Ruby-implementatie in Java: JRuby. Het verhaal dat hij hield (en de demo’s die hij liet zien) waren om twee redenen veelbelovend:

  • Het is nu mogelijk om een Ruby-applicatie te draaien in een volledige Java omgeving, wat de ontwikkelaar de beschikking geeft over zo’n beetje elke Java library die je normaal in de JVM zou kunnen gebruiken.
  • Werknemers van Java-bedrijven die huiverig zijn om Ruby te gebruiken, kunnen met JRuby op een veilige manier “via de achterdeur” toch Ruby gebruiken in hun projecten

De vraag is alleen of de bestaande Ruby community even enthousiast is over de nieuwe implementatie: de Java en Ruby community verschillen behoorlijk van elkaar en hebben een totaal verschillende achtergrond. Het zou dus best kunnen dat de Ruby/Rails community JRuby niet gaan accepteren. Ach ja, what else is new, Rails is immers een ghetto ;-).

Hands-off

Omdat ik alweer op tijd in Eindhoven moest zijn, ben ik tijdens de Lightning Talks naar het station teruggewandeld. Helaas heb ik de video-sessie met David Heinemeier Hansson dus ook gemist.
Al met al was het naar mijn idee een erg geslaagde dag, maar ik miste het hacken toch een beetje; er werd vooral veel verteld maar er was bijster weinig gelegenheid om zelf mee te programmeren. Ook waren er - in tegenstelling tot vorig jaar - geen interessante demo-sessies waarin de presentator in een uurtje een applicatie in elkaar freubelde. Gelukkig werd dit wel goedgemaakt door grote namen op de affiche - met name Zed Shaw was fantastisch - maar ik hoop dat we volgend jaar toch wat meer hands-on aan de slag kunnen!

Werken bij Finalist als Ruby developer?


2 reacties »

  1. Ook ik miste het hands-on verhaal wat sinds vorige RubyEnRails conferentie eigenlijk mijn stok was om tegen Java conferenties aan te meppen. Je hebt trouwens wel wat gemist bij DHH; nu weet je nog steeds niet of je een MacBook Pro of een MacBook AIR moet aanschaffen ;)

    Peter Maas - juni 19, 2008 11:27

  2. Gelukkig heb ik al een gewone MacBook, dus die andere twee zitten er voorlopig niet in… Was DHH’s talk wel interessant, of heb ik niet echt wat gemist?

    Marcel de Graaf - juni 19, 2008 11:29

Reageer

RSS feed for comments on this post · TrackBack URI