17 ottobre 2008

Rails, ovvero: come ho fatto per tanti anni a scrivere web applications senza?

Da tre settimane ormai, sono molto preso nella scrittura di una piccola applicazione di supporto ad un grosso gestionale dell'ente in cui lavoro. La scelta è caduta su Ruby ed in particolare Rails, ma non a caso. Avevo già avuto modo di leggere e di parlare con persone che lo utilizzavano a pieno traendone interessanti spunti.

Alla fine, il ridotto tempo a disposizione per questo progetto (tre settimane partendo da zero) mi ha costretto suggerito che l'unica scelta adatta non poteva che essere Ruby on Rails.
Dopo aver utilizzato una settimana per il setup dell'ambiente e la familiarizzazione con gli strumenti di sviluppo, la base dati coinvolta ed il processo da modellare; dopo aver combattuto per un accesso su di una tabella ed una vista in sola lettura al database di produzione —niente DB di test, signori!— che mi ha fatto spendere altri 4 giorni per ricreare e popolare un analogo DB in SQLite per lo sviluppo (mi era addebito un presunto rallentamento per tutti gli utenti della procedura principale, sebbene io stessi limitando, fin dalle prime prove, la lettura a non più di 200 righe! :-s ); dopo tutto ciò, posso essere contento di essere riuscito a terminare in poco più di una settimana il grosso dell'applicazione.
Mancano un po' di cosette (validazione degli input e formato grafico) ma credo che in due o tre di giorni riuscirò nell'impresa.
E' stupefacente la capacità di focalizzarsi sul solo problema da risolvere che Rails ti mette a disposizione. Nonostante agli inizi si perda un po' il filo dietro alle varie gem o ai vari plugin che potrebbero esserti d'aiuto, quando ti impadronisci del meccanismo tutto lo sviluppo è veloce, astraendoti da quei banali problemi che nel passato dovevo ogni volta risolvere da capo.
Un risultato così eclatante che in passato non credo avrei potuto raggiungere (ho usato ASP e ASP.NET, ed un po' di PHP agli esordi di PHP4).
Non mi resta che dire: grazie Ruby e soprattutto grazie Rails!

Nessun commento:

Posta un commento