CHAT 
 
Laurent Julliard et Richard Piacentini
Développeurs Ruby
L.Julliard et R.Piacentini
"Ruby on Rails tourne sur de très gros sites Web aux USA"
L'engouement autour du langage Ruby et de son framework Web Rails ne cesse de croître. Nos invités, traducteurs du premier livre sur le sujet en France, ont pendant une heure rassuré les inquiets et conforté les convaincus.
24/03/2006
 
D'ou vient le nom "Ruby" ?
  En savoir plus
 Nuxos
Dossier Logiciels libres/Open Source
  Sur le Web
Site Ruby On Rails
Livre "Ruby on Rails"
Portail RailsFrance
L. Julliard et R. Piacentini. Il semblerait qu'il y ait plusieurs explications. Le créateur du langage, Yukihiro Matsumoto, dit "Matz", aurait choisit Ruby en référence à Perl (deux noms de pierres précieuses). Une autre variante est le fait que Perl et Ruby seraient deux noms de pierres symbolisant au Japon des mois qui se suivent .

Ruby a mis 10 ans pour avoir un framework valable, pourquoi tant de temps ?
Ruby est un langage à part entière qui a eu un grand succès au Japon depuis plus de 10 ans et qui s'applique à de très nombreux domaines. Le côté framework Web n'est apparu que plus récemment. Il se trouve que le créateur du framework Rails a vu dans Ruby un langage idéal pour mettre ses idées en oeuvre.

Quels arguments mettre en avant vis à vis de la direction informatique pour utiliser Ruby On Rails ?

Tout d'abord le gain de productivité, les bonnes pratiques qui découlent des conventions adoptées par le framework, l'architecture MVC qui se trouve au coeur de Rails, l'intégration des tests unitaires et fonctionnels, et le fait que tout les composants travaillent ensemble de manière totalement intégrée, ce qui accentue la productivité du développeur Rails.

Pourquoi un tel fatras de dossier générés automatiquement ? Pourquoi ne pas faire plus simple ?
Le but de cette arborescence est précisément de structurer les divers composants de l'application : modèle, vue, contrôleur, tests unitaires et fonctionnels, etc.

   
"Les arguments en faveur de Rails sont le gain de productivité, l'usage des bonnes pratiques et de MVC, et l'intégration des tests unitaires"
Un des arguments à mettre en avant vis à vis d'un DSI peut être l'hébergeabilité de cette technologie. Quelle est la position des hébergeurs professionnels. Quels sont ceux ayant déjà les compétences en la matière ?
Bonne question, il est vrai qu'à l'heure actuelle en France, l'offre n'est pas encore aussi importante qu'aux USA. En ce qui concerne les hébergeurs professionnels, il n'y a à notre connaissance que Telecom Italia qui propose une offre packagée, et Typhon qui est plus orienté hébergement mutualisé. Il est vrai que par rapport à PHP les applications Rails sont plus complexes à héberger en mode mutualisé pour le moment. Mais nous espérons que les choses vont évoluer rapidement dans ce domaine.

Y'a-t-il moyen de convertir un projet PHP en projet RoR ? N'y aura-t-il pas conflit avec le concept de gestion de la BDD de RoR ?
Il n'y a bien sûr pas de "traducteur" de PHP vers Ruby. Donc en ce qui concerne le langage lui même on doit passer par une réécriture. Par contre Rails est parfaitement capable de reprendre un schéma de base de données existante même si celui-ci ne respecte pas les conventions de nommage de Rails.

On parle beaucoup de Rails, mais j'ai l'impression que la France est retard. Est-ce le cas ?
C'est un euphémisme !! Mais ce n'est pas spécifique à Rails... Ceci étant les choses avancent vite. Le livre Ruby on Rails de Eyrolles se vend bien (12éme des ventes chez Amazon) et la fréquentation du portail RailsFrance augmente régulièrement.

Quel est le meilleur exemple français en ligne basé sur cette technologie ?
Un exemple francophone, à défaut d'être français, est le portail de news Scoopeo et il y a plusieurs projets français en préparation.

Python avait déjà une syntaxe particulière, maintenant Ruby : se dirige-t-on vers des langages de plus en plus exotiques, après plusieurs années de domination du style C ?
Il est vrai que Ruby propose des concepts de programmation "avancés" tels que les itérateurs et les blocss mais la syntaxe de Ruby est très simple et finalement moins éloignée des langages dits classiques. Par rapport à Python, les choix faits concernant la syntaxe sont nettement moins inhabituels et plus cohérents.

Il me semble que l'un des points clés qui ralenti la pénétration de Rails est lié aux performances moyennes qui sont inacceptable dans un environnement de production. Confirmez-vous ? Connaissez vous de gros sites qui tournent sous Rails ?
Pas du tout. C'est une légende. Rails tourne sur de très gros sites Web aux USA depuis plusieurs mois. Plusieurs articles sont parus récemment sur Ruby Buzz à propos de sites qui absorbent plusieurs millions de transactions par jour (voir http://poocs.net).

   
"L'hébergement Rails en France a encore du chemin à parcourir pour arriver au niveau des Etats-Unis"
Ruby on Rails est-il accessible au grand public ? Où est-ce plus un méta langage qui implique des connaissances de pointe en XML, ou en MySQL ?
RoR n'est pas vraiment destiné au grand public mais plus aux développeurs Web expérimentés. Par contre Ruby vous isole de la complexité des fichiers XML et aussi du langage SQL.

Le Ruby est-il portable, à la fois côté client et serveur d'applications ?
Oui, oui, oui. Ruby et donc RoR est disponible sur un très grand nombre de plateformes matérielles.

En fait, sans Rails, Ruby serait encore totalement inconnu en occident, non ?
C'est vrai en ce qui concerne l'Europe. Ruby avait déjà fait une percée aux US avant RoR. On dit que chaque langage à sa "killer application" et sans conteste, Ruby on Rails est celle de Ruby.

J'ai essayé Ruby pendant deux jours, ça m'a amusé, mais je ne vois ce que je peux faire de plus qu'avec les langages que je maîtrise déjà. Quel est le "killer argument" pour Ruby - hors Rails ?
L'expressivité du langage, la conception nativement orientée objet et puis continuez un peu après les deux premiers jours, vous découvrirez sûrement des tas de nouvelles opportunités avec ce langage.

Vous avez effectué la validation technique: ça veut dire quoi concrètement ?
Ca veut dire qu'il a rattrapé toutes les bêtises du traducteur (à savoir moi) et validé le code d'exemple que j'ai dû localiser.

En tant que décideur dois-je plutôt embaucher un développeur PHP ou un développeur Rails pour la pérennité de mon entreprise ?
Et si vous embauchiez un bon développeur PHP qui a compris les limitations de PHP et de ses framework disparates et qui a vu tout l'intérêt de Rails. Pour avoir fréquenté les forums de discussion, on peut vous dire qu'il en existe déjà...

   
"Un site Rails est capable d'absorber plusieurs millions de transactions par jour"
A quand un PHP On Rails ?
Et bien il y en a déjà un qui sort du lot il s'agit de Symfony. Pour information après la sortie de Rails tous les autres langages se sont mis à concevoir leur framework "à la Rails" avec plus ou moins de bonheur.

D'ou vient votre expertise ? Avez vous publié des produits Ruby ou Rails ? Des sites ? Des librairies ? Autre chose ?
Le traducteur (L. Julliard) a essentiellement une expérience du langage Ruby et Richard est le créateur du portail Rails France, et depuis Mars 2005 sa société (Nuxos) ne fait plus que des développements en Rails.

Quelles sont les nouveautés de Rails 1.1 ?
En résumé, car il y en a beaucoup dans la nouvelle mouture, on peut citer : les RJS Template (Remote Javascript), l'extension des modèles de jointure (:through, :polymorphic), l'infrastructure de test d'intégration, et bien d'autres choses encore...

Si vous deviez abandonner Ruby, vous choisiriez quel autre langage ?
Joker !

Ruby On Rails est-il complexe à prendre en main pour un développeur Web habitué à Websphere Application Server ?
D'après nous, ça va plutôt lui faire des vacances. L'expressivité de Ruby et de Rails est loin devant Java et tous les serveurs d'applications Java que nous connaissons.

Que veulent les décideurs ? Des solutions. Quelles solutions apportent Rails ? Et à quels problèmes ?
Les solutions apportées par Rails sont l'amélioration de la productivité et de la réactivité des développeurs, donc des domaines particulièrement intéressants pour le décideur, non ?

Quelles genres d'applicatifs sont envisageables avec ce framework ?
Tout les types d'applications Web peuvent être abordés avec Rails, particulièrement ceux qui s'appuient sur une base de données, ce qui constitue la majorité des applications actuelles.

Pourquoi avoir traduit un livre, et non pas écrit le votre ?
Parce que c'était le moyen le plus rapide de faire connaître Ruby on Rails en France, et surtout parce que ce livre est une référence dans le domaine. En plus, cela nous a permis de lâchement profiter de la notoriété des auteurs de la version anglaise.

   
"Il existe plusieurs projets pour porter Ruby sur .Net"
Ca rapporte, de traduire un livre ?
[Rires] Oui, énormément, d'ailleurs Laurent a garé sa Porsche en double file en bas de l'immeuble... En ce qui me concerne, étant juste le validateur, je suis venu en métro... Sérieusement, attendez un peu avant de lâcher votre emploi de développeur pour celui de traducteur...

Comment Ruby gère t-il les liens avec les bases de données ?
Rails dispose d'un ORM (correspondance automatique entre objet et table de la base de données) qui abstrait totalement la communication et permet de ne plus écrire de requêtes SQL dans la grande majorité des cas.

Ruby est-il intégré à la plate-forme .Net ?
Il existe plusieurs moyens de faire coopérer Ruby et .Net. Il existe un projet, Ruby.Net, qui est un compilateur de Ruby vers le CLR de Microsoft. Ce projet est en développement. Récemment est apparu le projet RubyCLR, qui parait très prometteur et qui permet de piloter le framework .Net depuis le langage Ruby.

Si Microsoft vous embauchait, vous diriez oui ?
[Rires] Bonne question, ça dépend si on accès aux codes sources de Windows...

  En savoir plus
 Nuxos
Dossier Logiciels libres/Open Source
  Sur le Web
Site Ruby On Rails
Livre "Ruby on Rails"
Portail RailsFrance
Vous vous connaissiez déjà avant de travailler sur ce livre ou pas du tout ?
Pas du tout. Ruby on Rails sert aussi à ça...

ROR est-il bon pour le ROI ?
Autant que le ROI est bon pour RoR ! Sérieusement, il est vrai que l'amélioration de productivité obtenue par l'utilisation de RoR ne peut que contribuer à améliorer le ROI.

L.Julliard et R.Piacentini : Merci beaucoup de nous avoir supportés, dans tous les sens du terme, pendant ce chat.
 
Propos recueillis par Xavier Borderie, JDN Développeurs

PARCOURS
 
 
Laurent Julliard est Chief Architect chez Xerox. Il a créé le premier groupe d'utilisateurs Linux français, en janvier 1995.

Richard Piacentini est cofondateur de la SSL Nuxos Group, spécialisée dans le développement d'applications Ruby on Rails. Il est également créateur du portail RailsFrance.org