lundi, juin 15, 2009

Ruby at ThoughtWorks

Excellent article (comme presque toujours) de Martin Fowler: Ruby at ThoughtWorks
Le sommaire devrait suffire pour vous donner envie de le lire:
Contents
    * The Shape of Our Projects
    * Questions About Ruby
          o Was Ruby the Right Choice?
          o Is Ruby More Productive?
          o Is Ruby Slow?
          o Is a Ruby Code-base Hard to Understand?
          o Is Ruby a Viable Platform
    * Some Development Tips
          o Testing with Active Record
          o Active Record Leaks
          o Long Running Requests
          o Deployment
          o Controlling Gems
          o Schedule Time for Updates
          o Developing on Windows
Les points qui m'ont interessé au vue de mon expérience avec ruby:
  • Développer sous Windows, c'est faisable mais pas évident (c'est d'autant plus frustrant lorsqu'on a fait beaucoup de java et que globalement toutes les lib en java sont indépendantes de l'os).
    la plus grande partie des problèmes que j'ai rencontré vient de l'utilisation dans des scripts Rake de commande système qui n'existent que sous *nix (ssh, etc...).
    Oui il y a cygwin mais bof
  • Le problème de l'adoption de ruby en entreprise est lié à 2 facteurs:
    langage de script perçu comme impossible à maintenir par rapport à un langage compilé (alors que j'ai tant de fois vu des programmes java impossible à maintenir tellement ils sont mal écrit...) et
    résistance sociale au changement (peur de se lancer dans une techno s'il n'y a pas eu déjà 200 articles dans "01 informatique")

2 commentaires:

Anonyme a dit…

Hélas, la résistance sociale au changement est de loin le facteur le plus limitant. Et pas que provenant des boss qui ne jurent que par les annonceurs de 00 informatique.

Mais aussi de nombreux développeurs qui veulent rester cloîtrés dans ce qu'ils connaissent, même s'il faut 3 semaines en PHP pour faire de façon sale ce qui aurait pris 3 jours en Ruby de façon propre.

Rien qu'en utilisant Eventmachine, on aurait pu diviser par 10 le nombre de serveur dans certaines de nos grappes. Au lieu de ça on utilise PHP, Apache et des bidouilles genre serveurs de sessions/MySQL/memcache pour conserver quelques données d'une requête à l'autre.

Enfin bon...

Mickael a dit…

Si jamais on utilise Ruby au boulot, je change de poste. A vous de deviner pourquoi.