Je zal het altijd zien...

February 22nd, 2008

... als je een heel betoog uiteenzet, en in dat betoog een paragraafje terug verwijdert omdat je denkt dat je je punt niet genuanceerd genoeg kan uitdrukken, is er altijd wel een intelligente mens die dat doorheeft. Bon, op het gevaar af dat ik hier spijt van ga krijgen, een poging om uiteen te zetten waarom wij gekozen hebben om tijd te investeren in Ruby on Rails. Vreemd genoeg moet ik daarvoor eerst de ontstaansgeschiedenis van 10to1 uitleggen. Wij waren twee collega's, Java consultants, die een beetje teleurgesteld waren in het soort werk dat ze deden. We sprongen om met ingewikkelde datamodellen en lastige zoekalgoritmes, maar we hadden hoegenaamd geen idee wat voor mensen ons ding gingen gebruiken. Als het al gebruikers waren, sommige systemen dienden alleen als input voor andere systemen. We voelden ons een heel klein radje in een heel groot raderwerk. We voelden wel aan dat we elkaar goed aanvulden, en allebei hadden we de indruk dat hetgeen we samen deden, sneller en beter ging dan hetgeen we elk apart deden. Het geheel was meer dan de som der delen. Van daaruit groeide de idee om samen een bedrijf op te richten. We zouden gaan werken voor projecten waar we voeling hadden met onze gebruikers, en waar we samen aan konden werken. Voor zover wij de markt kunnen zien, houdt dat in dat we vooral zouden werken voor kleine bedrijven, en voor mensen die van een idee een bedrijf willen maken, startups zeg maar. Nu zijn er verschillende factoren die het moeilijker maken voor zo'n bedrijven om met Java aan de slag te gaan: zij hebben geen eigen IT departement, en dus niemand die kan zorgen dat hun servers 24/7 blijven draaien. Zij hebben geen budget voor doorgaans dure Java hosting. En hun projecten zijn dikwijls te klein om veel tijd te spenderen aan het 'opzetten van een project', en het schrijven van vele lagen 'mappers' die in feite niet meer doen dan data van het ene formaat omzetten naar het andere. Net in die tijd was er een nieuw web application framework in opmars: Rails. Dat beloofde de bovenstaande problemen aan te pakken: er was goedkope hosting voor beschikbaar, de opzetkost is minimaal, en in plaats van 'mappers' werd er vanuit gegaan dat de meest logische mapping gebruikt werd: een gegeven dat in de databank 'name' heette, zou in het domein model ook wel 'name' heten. Daar heb je geen ingewikkelde xml-files voor nodig. Het enige 'controversiële' van dat framework is dat het in een vrij onbekende taal geschreven was: Ruby. Dat maakt dat de keuze voor Rails een iets grotere overgang is dan de overgang van, ik zeg maar wat, Struts naar Spring Web MVC, of zelfs van Struts naar Tapestry of JSF. Maar dat kon en mocht ons niet afschrikken. We pakten het nieuwe framework vast voor wat het waard was, en begonnen er in te programmeren. En het beviel ons. Het maakt de beloften waar, ondanks veel religieuze oorlogen op de internetten, die dikwijls naast de kwestie zijn. Wil dat zeggen dat we nooit nog een Java project zullen doen? Weinig waarschijnlijk. Java is zo ingeburgerd in de grote bedrijven, dat de meeste bestaande projecten, en het gros van de nieuwe projecten, er met Java gemaakt wordt. Wil dat zeggen dat Ruby on Rails onze eerste keuze is als we niet beperkt zijn in verband met de technologie? Jazeker. Het is niet voor alles geschikt, maar het is zeker geschikt voor de toepassingen waar wij op mikken: 'kleinere' projecten, met een grote web component, die op relatief korte termijn moeten geïmplementeerd worden. (Hmm, dat paragraafje is iets groter geworden.)

1 Response to “Je zal het altijd zien...”

  1. Wouter Says:
    Ik snap volledig waarom jullie dit pad kiezen. Zelf begin ik ook wat op te zien tegen het soort java werk dat ik tegenwoordig moet doen. Bij mijn huidige werkgever is dat er niet beter op geworden, want het zijn allemaal veel te grote klanten. Het gaat me allemaal een beetje te veel richting 'business integration'. De gebruikers zijn meestal andere computersystemen ipv mensen. Misschien moet ik zondag maar eens komen luisteren naar Koen's uitleg op FOSDEM over Rails.

Sorry, comments are closed for this article.