Un développeur estime que Ruby on Rails est dépassé
Et conseille aux entreprises de se tourner vers Node.js, partagez-vous ce point de vue?

Le , par Olivier Famien

0PARTAGES

6  0 
Estimez-vous que Ruby on Rails est dépassé ?
Rails est un framework écrit en Ruby. Apparue pour la première fois en version stable en 2005, son utilisation dans la création rapide des applications web n’est plus à démontrer. Au fil des années, ses fonctionnalités et sa communauté ont concomitamment gagné en volume.

Avec la dernière version 4.2 parue août dernier, l’on a assisté à l’introduction d’un nouveau framework Active Job, qui est une couche d’adaptateur tournant au-dessus des systèmes de gestion de la file d’attente des processus tels que Resque, Delayed Job, SideKiq, etc.

En plus de cette fonctionnalité, plusieurs apports majeurs ont été intégrés dans cette version. Nous avons par exemple, Action mailer qui permet maintenant de différer l’envoi de mails en utilisant la méthode deliver_later et Adequate record qui permet d’améliorer les performances dans Active Record en accélérant les requêtes d’un facteur de 2. Aussi, avec la migration DSL l’on peut maintenant ajouter ou supprimer des clés étrangères pour les bases de données mysql et postgre en utilisant les adaptateurs adéquats.

Toutes ces fonctionnalités ont été implémentées afin d’offrir aux développeurs des outils à jour pour faciliter leurs projets de développement. Cette grande popularité du framework a incité dès ses débuts les ingénieurs du site de partage de fichiers Scribd pour le développement de cette plateforme.

Toutefois, en dépit de ces fonctionnalités qui font la joie de certaines personnes, un développeur du nom de Jared Friedman déconseille l’utilisation de ce framework pour les nouvelles entreprises. Pour lui, ce framework a connu son heure de gloire et est maintenant sur le déclin. Il serait donc judicieux pour les nouvelles entreprises de ne pas investir dans une technologie qui est en baisse, mais plutôt de se tourner vers celles qui sont en forte progression.

Pour mieux étayer ses propos, Jared a effectué un comparatif entre les langages Ruby on Rails, Django et Node.js avec l’outil Google Trends.


Comme on le constate, Ruby on Rails a connu son niveau le plus important en 2007 et est depuis lors entrainé dans un long processus de décroissance. Django lui connait une stagnation tandis que Node.js fait une percée substantielle.

Pour Jared, le véritable problème lié à Rails est Ruby. Dans un benchmark comparant Ruby, PHP, JavaScript, Go, Java et C, on constate que Ruby on Rails a le temps de latence le plus élevé.


Selon lui, Ruby a besoin d’un sponsor pour booster ses performances à l’instar de JavaScript qui a connu un fort attrait depuis l’implémentation du compilateur à la volée par Google. PHP a connu également des améliorations significatives avec l’investissement effectué par Facebook, ce qui a contribué à attirer les développeurs vers cette plateforme.

Twitter qui a adopté Rails dès ces débuts aurait pu corriger l’interpréteur de Ruby qui est assez lent et constitue un gros handicap pour Rails. Mais ce réseau social a préféré réécrire sa plateforme dans un langage encore plus performant.

Autres arguments avancés par Jared afin d’emmener les entreprises à se détourner de Ruby on Rails est que les autres langages ont rattrapé les avantages liés à ce langage. Par exemple, la facilité avec laquelle les développeurs arrivaient à mettre en œuvre les applications web a été également intégrée aux autres langages.

Enfin Jared souligne que l’enseignement de ce framework est privilégié dans les programmes de camps de démarrage ce qui fait que les développeurs aguerris le perçoivent comme un outil pour débutants et préfèrent se tourner vers d’autres outils ou langages.

À l’opposé de ce framework, Jared préconise l’utilisation de Node.js qui comme le montre Google Trends est en pleine évolution. Le site Coding VC confirme ces tendances dans le rapport mettant en avant les technologies utilisées par les startups.


JavaScript et Node.js apparaissent en tête suivis de Ruby et Ruby on Rails. Enfin, un argument de poids pour convaincre les sceptiques sur l’orientation vers Node.js, ce sont les tendances d’offres d’emploi répertoriées. Sur ce site, les offres d’emploi concernant Node.js sont en pleine croissance tandis que les entreprises demandant les aptitudes pour Ruby et Rails sont à peine visibles.


Source : Blog Jared

Et vous ?

Trouvez-vous que Ruby on Rails est dépassé ?

Trouvez-vous que Node.js est un successeur valable face à ce framework ?

Ou pensez-vous que ce Ruby on Rails a encore de l’avenir ?

Voir aussi
Forum Ruby on Rails
Forum JavaScript
Forum développement web

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de RyzenOC
Inactif https://www.developpez.com
Le 23/09/2015 à 7:14
On ne choisit pas un langage pour ces perfs, ruby a comme avantage par exemple d'etre un langage fortement orienté objet.

Pourquoi node.js ?, pourquoi pas php7 ?, ou python3.5 ?
Avatar de deusyss
Rédacteur/Modérateur https://www.developpez.com
Le 23/09/2015 à 7:22
Citation Envoyé par sazearte Voir le message
Pourquoi node.js ?, pourquoi pas php7 ?, ou python3.5 ?
Eh oui pourquoi? A la lecture de l'article, j'ai l'impression que ce monsieur s'est juste contenté de lire et d’interpréter quelques graphs sans se demander quels besoins avaient les entreprises. Chaque techno a ses avantages et ses inconvénients. Il ne faut pas juste tenir compte de quelques "tendances" pour faire des choix, mais de tout un ensemble de paramètre. Et ce n'est pas non plus par que X% de devs utilise une techno donnée que c'est le meilleur choix.

Alors, manque d'experience, ou naiveté?
Avatar de RyzenOC
Inactif https://www.developpez.com
Le 23/09/2015 à 7:36
De plus Node.js est il assez mature pour pouvoir être utilisé en production actuellement ?
Je sais qu'il y'a 1 ans en tous cas il n'y avait aucune version stable utilisable en entreprise en tous cas, sa a peut être changé depuis ?

Pour moi le principale intérêt de node.js c'est si l'on doit faire beaucoup de requêtes au serveur (les jeux en en ligne par exemple).
Avatar de grunk
Modérateur https://www.developpez.com
Le 23/09/2015 à 8:35
Il serait donc judicieux pour les nouvelles entreprises de ne pas investir dans une technologie qui est en baisse, mais plutôt de se tourner vers celles qui sont en forte progression.
Il est surtout judicieux de se tourner vers des technos matures , stable et qui ne vont pas mourir dans les 2 années à venir.

nodejs m'inspire tout sauf la confiance pour le moment. L'exemple de io.js est typique du monde javascript actuellement. On fork parce que on est plus trop en adéquation avec l'original , puis finalement on revient parce que les rancoeurs passées sont oubliées ... c'est vivant , mais pour l'utilisateur ça inspire pas confiance.
C'est le risque des effets de mode. Suffit de voir Angular qui est remplacé très rapidement par Angular 2 , les dév qui espéraient un peu de support et de sérénité pour leur code doivent l'avoir mauvaise
Avatar de Sodium
Membre extrêmement actif https://www.developpez.com
Le 23/09/2015 à 9:11
Il y a quelques temps, j'ai voulu m'intéresser à node.js.
J'ai constaté la complexité et le manque de maturité de node.js.
J'ai abandonné node.js.

Privilégier une technologie sous le seul prétexte qu'elle serait plus performante est rarement la meilleure solution.

Il y a certaines questions qu'il est nécessaire de se poser avant :
- Dispose-t-elle d'une très grande base de ressources, tant niveau documentation que niveau bibliothèques tierces activement maintenues ?
- Dispose-t-elle d'un ancrage et d'un passé assez solide pour pouvoir raisonnablement estimer qu'elle sera très présente à moyen-terme (je me rappelle d'une époque où Adobe Flex était le gros truc à la mode dans lequel il fallait se lancer) ?
- Trouvera-t-on facilement des développeurs disposant d'une vraie expertise, disposent-t-ils de suffisamment d'expérience pour produire du code solide et durable ?

Je ne dis pas que node.js est une mauvaise technologie et qu'il ne faut jamais en essayer de nouvelles, mais les discours sur le mode "ce langage est mort, dirigez-vous tous vers ce nouveau truc à la mode" sont aussi inintéressants qu'inutiles.
Avatar de abriotde
Membre éprouvé https://www.developpez.com
Le 23/09/2015 à 9:26
On ne choisit pas un langage pour ses perfs
Bien sur que si c'est le rapports performances / souplesse de développement qui détermine un langage. Or aujourd'hui il existe aussi souple que Ruby sans ses inconvénients de performances.

Le facteur performances, contrairement a ce que l'on a voulu nous faire croire, est déterminant en informatique. Même si les performances des processeurs / mémoires ne cessent de progresser, les besoins explose et ne pas avoir besoin de puissance limite les coûts a tous les niveaux : matériel, humain et complexité (et donc fiabilité).

Un autre facteur déterminants dans le choix du langage est sa dynamique, sa communauté et sa perspective a long terme. Mais tous ces critères sont déterminé par son rapport performances / souplesse de développement. Au détail près qu'il est toujours difficile de percer. Mais Ruby a déjà percé et justement sa communauté bien que encore conséquente a tendance a baisser pour les raisons cités.

Choisir node.js est encore un peu prématuré bien que cela constitue un très bon choix surtout pour une start-up dont le but est de développer rapidement une base fiable. Pour une PME il manque encore de perspectives a long terme et pourrait se faire balayer par des Coffee-script ou autre.
Les valeurs sure sont C/C++, Php (Hack), Python et Java ou pour des besoins très spécifiques Erlang et Awk.
Les 3 alternatives crédibles sont Javascript (node.js), Google Go voire Rust.

Choisir un autre langage est pour moi inutile voire risqué. Une chose est sûr, il est très important de ne pas se tromper dans le choix du langage.
Avatar de
https://www.developpez.com
Le 23/09/2015 à 9:45
Les valeurs sure sont C/C++, Php (Hack), Python et Java ou pour des besoins très spécifiques Erlang et Awk.
Les 3 alternatives crédibles sont Javascript (node.js), Google Go voire Rust.
Pourquoi pas ASP.NET ? C'est un des frameworks les plus polyvalents/puissants/utilisés au monde. En plus il est multiplateforme maintenant
Le tooling et le langage sont juste prodigieux (C#, Visual Studio, ...)
Avatar de deltree
Membre averti https://www.developpez.com
Le 23/09/2015 à 10:09
ça fait pas déjà 3 ans qu'il est dépassé Ruby on Rails?

Le REX était déjà très mauvais à cette époque
Avatar de tomlev
Rédacteur/Modérateur https://www.developpez.com
Le 23/09/2015 à 10:22
Citation Envoyé par sazearte Voir le message
On ne choisit pas un langage pour ces perfs
Bah un peu quand même... à moins que tu aies très peu d'utilisateurs, tu es bien obligé de te poser la question des perfs.

Citation Envoyé par sazearte Voir le message
ruby a comme avantage par exemple d'etre un langage fortement orienté objet.
Ni plus ni moins que Javascript (typage dynamique, duck typing)
Si tu veux du fortement orienté objet, va voir plutôt du côté de Java ou C#
Avatar de Hellwing
Membre chevronné https://www.developpez.com
Le 23/09/2015 à 10:23
Vraie question : Comment une techno émergente peut-elle être considérée comme éprouvée et mature si tout le monde attend qu'elle le soit pour l'utiliser ?
Contacter le responsable de la rubrique Accueil

Partenaire : Hébergement Web