RoR vs Django ( adesso arrivano i sassi.)

Ciao a tutti,
so che queste sono le classiche mail che non si dovrebbero mai mandare
in una mailing list a tema per evitare inutili flame, e vi assicuro
che mi sto gi cospargendo la testa di cenere :slight_smile:
Devo dire che d’altra parte non saprei proprio dove fare questa
domanda (confesso che ne fatta una identica anche nella lista Django,
quindi pure crossposting … ahi :-/ ).
Insomma da un po’ che tento di fare una scelta (personale, ma da
condividere magari anche qui dove lavoro) se ā€œpuntareā€ pi
sull’accoppiata Python+Django piuttosto che su Ruby+RoR. Un tempo un
amico mi disse che il confronto era tra due linguaggi con un lustro di
vantaggio (e maturit anche della community) di uno sull’altro, mentre
per i framework si poteva fare una discorso simile ma al contrario
(non 5 anni ovviamente). Non so se questo sia ancora un’affermazione
valida.

E’ da un po’ che seguo questa lista o so essere animata da persone con
una discreta ā€œonest intellettualeā€ e sarei veramente contento ci
conoscere la vostra opinione a riguardo.
Immagino che qui si propenda nettamente per la prima coppia, ad ogni
modo quanto mi potrete dire sar per me prezioso.

Scusate ancora per il massacro che ho fatto delle buone regole che si
dovrebbero seguire in una ML :slight_smile:

Grazie mille ed a presto,

On Aug 12, 2011, at 11:33 AM, Maurizio T. wrote:

Ciao a tutti,
so che queste sono le classiche mail che non si dovrebbero mai mandare
in una mailing list a tema per evitare inutili flame, e vi assicuro
che mi sto gi cospargendo la testa di cenere :slight_smile:

Ma figurati. E’ pi’ che altro che hai il cognome del mio compaesano
australiano e sono stato sull’orlo della derisione in pvt - che dopo 90
anni che scrivi ruby ti fai ā€˜ste domande :smiley: Invece e’ Totti, non Teotti.

valida.
E’ valida, si. L’interprete Python rispetto a quello Ruby e’
sensibilmente pi’ avanti e pi’ performante. Questa differenza dovrebbe
affievolirsi con il nuovo Ruby (1.9.*) che io uso gi’ in produzione con
discreto successo, ma non del tutto. Di fatto anche lo sviluppo stesso
dell’interprete sembra sensibilmente pi’ lento, almeno dai miei ricordi
di quando bazzicavo la comunit’ Python (circa 2.3).
Se pero’ parliamo di web, la velocita’ raw dell’interprete e’ abbastanza
ininfluente: con un database e una rete di mezzo, concentrarsi
sull’unica costante (sempre parlando di web - ampiamente migliorabile)
e’ un atteggiamento abbastanza buffo. L’unica volta in cui l’interprete
mi e’ stato tra i piedi e’ stato lavorando con un long running task su
un dataset ampio, in cui il dato non veniva collezionato dal GC e che
ovviamente consumava un botto di RAM. Ho forti dubbi che l’interprete
Python risolva questo problema per loop su un dataset gigante, ma e’
sempre possibile: certamente Ruby non lo fa. Giusto un esempio.
Per quanto riguarda i framework: storicamente Rails e’ piu’ avanti.
Questa differenza non credo sia certamente ā€œabissaleā€, affatto, ma e’
abbastanza estesa. Django e’ un framework molto pi’ ā€œrawā€, molte cose te
le devi fare a manina. Non ha rspec o cucumber. Non ha la pletora di
plugin che ha Rails. E non ha la letteratura che ha Rails.
Insomma, mentre Python e’ pi’ avanti e pi’ supportato di Ruby, Rails e’
pi’ avanti e pi’ supportato di Django.
Personalmente preferisco avere Rails che Python, per questo ho switchato
nel 2005 (credo, forse 2004). Da dire che a quei tempi Django non c’era,
il massimo che si trovava per web su Python era ā€œzopeā€, che ai tempi mi
costringevo a far piacere, e che riporta alla mia mente ricordi di
castrazioni con coltellacci arrugginiti di varia guisa.

ngw

Il 12 agosto 2011 14:05, Michele C. [email protected] ha scritto:

Scusa l’ignoranza, ma quando escono nuove versione di RoR delle
vecchie continua ad essere fatto bug fix o sono considerate ā€œchiuseā€ e
di corregge solo l’headline?
Grazie.

Faci una domanda simile chiedendo tra Grails e Rails. Mi dissero invece
di pensare ai framework di pensare al linguaggio, alla sua comunitaed all'innovazione che ci gira intorno. Io aggiungerei anche il fattore del mercato. Python e piuveloce, ma usando JRuby non ne son sicuro. Vedo tanta innovazione nel mondo Ruby e Rails sta diventando sempre piu
popopolare. Ho visto veri progetti migrati da Java a Rails ed ho la
sensazione personale che Rails goda di piupopolarita di Django.

Alla fine Python e Ruby sono come fratelli e sono molto simili. La
scelta epersonale ma dovrebbe essere presa tenendo conto le possibilita di lavoro, sia come dipendente che come azienda. Se poi
lavori in una grossa azienda od ente pubblico allora il mercato ha una
valenza minore.

Concordo pieamente con ngw. Lā€˜unico neo che mi ā€œdisturbaā€œ di rails Ć© lo
sviuppo a dir poco frenetico. Non hai tempo di finire un progetto che la
nuova versione di rails non è più compatibile con quella con cui hai
sviluppato. Altro neo sono i plugin, belli e funzionali finchƩ mantenuti
oppure finchƩ ne esce uno migliore (ripeto belli e funzionali e aggiungo
ti fanno risparmiare molto tempo).
La cosa che mi piace di rails Ć© la gestione ā€œintegrataā€œ di ajax.
Django Ć© zoppo delle migration (anche se cā€˜ĆØ un progetto che gestisce le
migration).
ƈ una scelta difficile. Molto dipende da cosa devi sviluppare.

On Friday 12 August 2011 14:44:54 Maurizio T. wrote:

Scusa l’ignoranza, ma quando escono nuove versione di RoR delle
vecchie continua ad essere fatto bug fix o sono considerate ā€œchiuseā€ e
di corregge solo l’headline?

Le vecchie versioni continuano a beneficiare dei fix di sicurezza per un
certo
periodo di tempo. Non ricordo l’esatto numero di anni, ma comunque non
vengono
abbandonate dopo che l’ultima versione di rails e’ stata rilasciata.

ciao
Flavio