FluxRSS FlickR Twitter

Maxime Gaillard

DESCARTES : Je pense, donc je blog !

10 mai 09

Passage à Ruby On Rails…ou pas

Posté dans Naeka | Tags :, , , | 5 Commentaires »


ruby_solid

Le mois d’avril dernier a été pour toute la joyeuse équipe de Naeka l’occasion de tester Ruby On Rails. L’occasion de passer sur un Framework qui nous paraissait très bien. Vous avez compris, j’ai parlé au passé car on va pas dire que se fut une franche réussite. Et ça s’est conclue par un arrêt pur et simple du test de RoR…pour l’instant.

Je sais que pas mal de monde voulait un feedback de notre apprentissage. Donc je vais essayer de le donner à ma sauce. La première chose c’est qu’en passant sur RoR il faut apprendre un nouveau langage qu’est Ruby. Même si dans les grandes lignes c’est un langage comme un autre il faut quand même l’apprendre. Un point qui n’est pas à négliger.

La seconde chose et qui là est le point central de l’abandon de Rails, c’est le manque de documentation. Et je ne parle même pas de documentation française ! On a bossé avec l’aide d’un livre assez bien fait mais ce n’est qu’un livre. Dès que l’on cherche quelque chose sur internet il est assez rare de trouver ce qu’on recherche. Et quand on trouve ce que l’on cherche c’est souvent de la documentation qui n’est plus à jour. De belles soirées passées à s’arracher les cheveux !

Car c’est bien là que se pose aussi le problème. Rails évolue vite. Très vite. Trop vite. Du coup entre 2 versions majeures (v1 et v2) une majorité des choses qui existaient n’existent plus. Si vous aviez de la documentation pour la version 1 de Rails vous pouvez la jeter, et c’est quand même très embêtant…Et on retrouve le même phénomène à l’intérieur des branches mineures. De la documentation de 2008 ne marchera pas (sauf avec de la chance) avec la version 2009 de Rails. Rails n’est donc pas rétro-compatible. Très très embêtant…

Il y a quand même des points positifs que je vais vous lister car je commence à trop parler :

  • Le code est très clair et mieux découpé
  • La possibilité de créer des choses fonctionnelles très rapidement
  • Assez bonne gestion de l’Ajax
  • Orienté gros projets
  • MVC (Model View Controller)
  • Abstraction de la base de donnée
  • Plugins (mais pas toujours documentés)

Dernière chose qui n’a pas été un sentiment partagé par tout le monde. En effet il est assez difficile de comprendre ce qu’il se passe dernière la machine qu’est RoR. En une ligne vous sélectionnez, recherchez et sauvegardez un élément dans votre BDD. Personnellement ça me fait mal au cul de pas savoir comment ça se passe. Du coup on peut pas optimiser, sécuriser (même si Rails le devrait pouvoir le faire tout seul). Il y a trop d’abstraction pour moi.

Du coup on repasse à notre très cher ami PHP en testant Zend Framework. Et si c’est pas concluant on fera notre propre Framework PHP. Naa !

Autrement, amis lecteurs, sur quel framework travaillez-vous ? Lequel recommanderiez vous ?

19 avr 09

Mongrel et Nginx : déploiement de Ruby On Rails

Posté dans Tutoriaux | Tags :, , , , | 3 Commentaires »


Tout ce qui va suivre implique que vous connaissiez un minimum Nginx et que vous l’utilisiez déjà en frontal et non pas en proxy.

Pour avoir Ruby On Rails sur Linux (Debian ici) il va falloir installer un serveur web qui le gère. Mon choix s’est porté sur Mongrel car il est le plus rapide. Et devient encore plus rapide avec Nginx en frontal (on parle de plus de 60% plus rapide !).

Installation de Mongrel, Rails et Ruby :

gem install mongrel
 
gem install rails
 
apt-get install ruby

(si vous avez pas gem, un apt-get install gem devrait suffire !)

Ensuite allez à l’endroit où votre projet Rails se trouvera.

cd /var/www/rails
 
rails nom_du_projet

Vous avez maintenant un projet Ruby On Rails dans /var/www/rails. Il faut maintenant configurer Nginx et Mongrel pour que vous puissiez y avoir accès.

Mongrel :

cd /var/www/rails/nom_du_projet
 
mongrel_rails start -d -p 3000 --prefix=/nom_du_projet

Ici le serveur Mongrel démarre en Daemon (-d) sur le port 3000 (-p 3000) et avec le prefix de votre projet.

Maintenant si vous tapez xx.xx.xx.xx:3000/nom_du_projet (où xx.xx.xx.xx est l’ip du serveur) vous devrez avoir une belle page de Ruby On Rails vous disant que tout marche. Il va maintenant falloir configurer Nginx.

Nginx :
Dans votre Virtual Host ajoutez :

server {
   listen 80;
   server_name votre_nom_de_domaine.com;
   access_log /chemin_vers_les_logs_access.log;
   error_log /chemin_vers_les_logs_error.log;
 
  location / {
      root /var/www/rails/;
      index index.html;
      }
 
   location /nom_du_projet {
   proxy_pass http://localhost:3000;
   }
}

Maintenant si vous allez sur votre nom de domaine (ou sous domaine) vous devriez avoir la même page de Ruby On Rails que précédemment. Il vous reste plus qu’à coder ;)

1 pages




Agence Web Grenoble Django

Articles récents

Nuage de Tags

Articles les plus populaires


Catégories


Articles Aléatoires