Pourquoi Rails ?

J’avais survolé le sujet il y a peu alors que je faisais le point après un mois passé à développer du Rails, il est temps maintenant de m’expliquer un peu : pourquoi donc Rails et pas Cake, Symphony ou Django ?

Tout d’abord, j’en avais marre des points virgules, des accolades et du modèle objet boiteux. Voila, comme ça, c’est clair. J’ai beaucoup aimé PHP des années durant (le côté “rustine/4x4/passe partout“), mais… en quelques lignes de Ruby, l’affaire était entendue. TOUT y est plus simple, plus “logique“. J’ai lu que beaucoup de développeurs PHP utilisaient Cake ou Symphony par peur de Ruby. Franchement, dans mon cas, c’est plutôt l’inverse, c’est bien Ruby qui m’a attiré vers Rails et m’a vite fait oublier Cake, PHP (et les points virgules).

Ha, Cake PHP… tout pour plaire effectivement, quoique pour ce que j’en ai vu, cela me semble bien être une copie conforme de Rails, sans Ruby, ni ActiveRecord :-(. Pour Symphony, j’ai pas aimé. Bon, j’avoue ne pas avoir creusé plus d’une après midi, mais j’ai pas aimé. La Doc, le générateur d’Admin, Propel… rien ne m’a fait dire “Whaouuu, je veux ce truc !“. Donc, bon, bof, au revoir. Concernant Jango, il y avait d’emblé un sacré poid dans la balance : Python ! Pensez donc : mon premier language, avec lequel j’aimerais avoir à faire plus souvent que pour quelques rares scripts sous Linux. Bon, là, par contre, ça m’a paru un sacré engin à mettre en place. Après une demi-heure à batailler pour l’installation, j’ai commencé le premier tuto. 1 heure, deux heures… toujours pas UNE page Web !!!

Puis j’ai tenté Rails, dont un collègue lors de mon court passage chez SEB m’avait fait l’éloge. Sans guère plus d’a priori que pour les 3 autres Framework précedemment testés, tatonnant, suivant la logique habituelle, et sans même un seul tuto , j’ai pu obtenir une appli utilisable… en moins de 5mn montre en main, installation comprise. Oui, j’avoue, j’était sur le c***. La suite n’a été qu’un déroulement logique de ce début prometteur. Aujourd’hui, je ne compte plus le nombre de fois où je me suis dit “heuuu, bon, ça j’ai jamais fait, mais ça peut quand même pas être aussi simple que ça… je tente ? et….” et ça marche !!!

Bref, en un mot comme en cent : un Framework est sensé vous faire gagner du temps et améliorer la qualité de votre code. Que ce soit avec Cake, Symphony ou Django, je passais mon temps à me demander quelle forme pouvait bien avoir la courbe d’apprentissage avant de pouvoir maitriser de tels outils. Avec Rails, je me fiche de la courbe d’apprentissage : je code et en plus, ça marche. Tout de suite. Comme diraient certains… What else ?