68 votes

Qu'est-il arrivé à Dojo en 2008 ?

Beaucoup d'entre vous ont vu ce graphique des tendances Google des frameworks AJAX populaires (Dojo, jQuery, YUI).

Le graphique semble indiquer clairement que l'intérêt pour Dojo s'est effondré au deuxième trimestre 2008, chutant de 80 % ; jQuery a pris le relais et a fini par tripler la taille de Dojo.

Pourquoi ? Que s'est-il passé au deuxième trimestre 2008 qui a démoli l'intérêt pour Dojo ?

(Notez que je ne suis pas vraiment intéressé par une comparaison de Dojo et jQuery même si vous pouvez expliquer pourquoi l'un est meilleur que l'autre, il est difficile de voir pourquoi cela est soudainement devenu clair pour le monde en avril 2008).

147voto

Eugene Lazutkin Points 22414

Clause de non-responsabilité : Je suis un participant à Dojo, mais il s'agit de mon point de vue personnel en tant qu'initié à JavaScript.

Tout d'abord, le graphique est absolument et complètement incorrect. Regardez attentivement le lien du graphique, et lisez "événements". Il s'agit de la liste des événements "liés" à Dojo :

  1. "Déclarer Dojo pour Ajax" - ok, c'est peut être pertinent .

  2. "IT Dojo" : Empêcher les programmes de s'exécuter au démarrage de Windows Vista [vidéo]" - - non pertinent .

  3. "IT Dojo" : Ajouter les commandes "Copier vers" et "Déplacer vers" à l'Explorateur de Windows XP grâce à ce piratage de registre" - - même pas proche .

  4. Dragon Dojo Martial Arts® est nommé "Petite entreprise officielle de NASCAR®, avec l'aimable autorisation d'Office Depot®". - non, encore raté .

  5. "Le dojo des hackers à Mountain View suscite des idées et des bricolages" - loin de là .

Pourquoi ? Dojo est un terme générique utilisé principalement en dehors du domaine du développement logiciel, Yui (comme YUI - l'autre boîte à outils JavaScript du tableau) est une célébrité de la chanson japonaise extrêmement populaire, et seul jQuery est un terme unique.

Que montre le graphique ? Malheureusement rien de pertinent.

Hmm, déjà vu. Oui, Je l'ai déjà dit une fois . Permettez-moi donc de me citer (en ajoutant des annotations mineures, et en corrigeant le lien) :

A propos de Google Trends. Sur les 5 bibliothèques en question [jquery, mootols, prototype, yui et dojo], seules deux (jquery et mootools) ont une chance d'être un tant soit peu pertinentes dans l'enquête, principalement en raison de leurs noms uniques. Les autres utilisent soit un nom générique (prototype et dojo), soit un alias (yui => Yui, chanteuse/compositrice/actrice japonaise extrêmement populaire). Donc, si vous voulez expliquer les pics soudains, essayez de chercher sur Google des articles de presse de l'époque pour voir si les hauts et les bas peuvent être expliqués sans moyens superficiels.

Voici un lien vers une autre étude "scientifique" qui prouve sans aucun doute que jQuery est plus populaire que Marilyn Monroe, Elvis Presley et a même dépassé Mickey Mouse récemment. : Tendances Google : jquery, mootools, marilyn monroe, elvis presley, mickey mouse .

Revenons maintenant à votre question. Le graphique est faux - rien de pertinent ne s'est produit en 2008. Tout a été fait au cours du second semestre 2007 :

  • 8/20/2007 - Dojo 0.9 est annoncé . C'était la principale rupture avec la version précédente : Dojo 0.4. Immédiatement, votre connaissance existante de Dojo a été décimée de 70% ou plus.
  • 11/5/2007 - Dojo 1.0 est annoncé . Cette version a rendu Dojo 0.4 psychologiquement ancien.

Si, techniquement, la rupture était justifiée, psychologiquement, elle a été un coup dur pour les utilisateurs (il y a d'importantes applications Dojo 0.4 en production, même aujourd'hui en 2010).

Certaines personnes ont commencé à apprendre l'API 0.9/1.0, d'autres ont décidé de migrer vers autre chose - le coût de la défection était presque le même que celui de l'apprentissage du nouveau Dojo. À l'époque, le marché comptait tous les anciens acteurs et un nouveau venu : jQuery. La majorité des anciens utilisateurs de Dojo ont choisi Dojo pour une raison précise après en avoir testé d'autres. La plupart des transfuges sont donc passés de Dojo à jQuery plutôt qu'à d'autres boîtes à outils, qui n'étaient pas disponibles lorsqu'ils ont choisi Dojo au départ.

Mais ce n'est pas la seule raison. D'une certaine manière, les gens aiment comparer Dojo à jQuery. Comparons leurs communautés et leurs aspects sociaux.

jQuery était et est bien meilleur en marketing - il suffit de comparer le nombre d'articles de blog produits par un John Resig par rapport aux articles de blog de tous les développeurs Dojo réunis, de comparer le nombre de fois où John a fait une présentation lors de conférences par rapport à toutes les présentations Dojo réunies. La vérité est que Dojo est fait par des geeks qui sont peut-être bons en technologie, mais pas en marketing.

Les fonctions sociales sont également importantes car elles contribuent à développer la communauté. Jetons un coup d'œil à la contribution d'un code aléatoire aux deux boîtes à outils. Dojo a un endroit pour les projets bizarres : DojoX. jQuery a un espace équivalent, jQuery Plugins. Tout le monde peut contribuer aux deux, mais pour DojoX la barrière d'entrée est beaucoup plus élevée parce qu'une soumission sera examinée, et peut être rejetée si elle ne répond pas à des critères stricts. En général, cela prend beaucoup de temps, alors qu'à jQuery land, tout le monde peut soumettre n'importe quel code en tant que plugin à tout moment et avec n'importe quelle licence. Il est ainsi plus facile d'"appartenir" à la communauté jQuery.

À mon avis personnel, le processus DojoX produit de meilleurs résultats techniques : presque n'importe quel projet DojoX aléatoire est de meilleure qualité que de nombreux plugins jQuery. Il est évident qu'il existe des plugins jQuery de haute qualité très bien supportés, mais ce n'est pas la question. La question est que le processus jQuery Plugins est meilleur pour construire une communauté que le processus DojoX.

Les marchés ciblés sont également différents. jQuery vise des choses relativement simples : ajouter un peu de magie JavaScript à des sites Web ordinaires, faire quelques "améliorations progressives", "utiliser cet extrait", etc. Dojo, avec son système modulaire, ses outils de construction et d'empaquetage, et ses dispositions OO/AOP, s'adresse aux utilisateurs d'applications Web. Devinez quel marché a le plus de monde. L'une des implications est simple : Dojo est largement utilisé en informatique, ce qui n'apporte aucune reconnaissance publique ⇒ même le "buzz secondaire" des développeurs de tels systèmes est plus faible qu'il ne devrait l'être pour Dojo.

Une autre vérité amère est que la communauté Dojo a laissé tomber la balle en 2007 : la documentation était en désordre, les articles de blog étaient rares et concernaient principalement des trucs techniques obscurs pour les programmeurs avancés, plutôt que des tutoriels "voyez comme il est facile de faire des choses simples". Le forum était pratiquement fermé par les spammeurs. La rupture entre la version 0.4 et la version 0.9 a nui à la visibilité de Dojo dans les moteurs de recherche - les personnes qui recherchaient de nouveaux éléments trouvaient principalement des éléments de la version 0.4, qui ne leur étaient d'aucune utilité.

Donc, vous l'avez : Le deuxième trimestre 2008 n'est pas le bon moment pour étudier. Regardez le second semestre 2007. Et voyez pourquoi jQuery est plus populaire que Dojo ou tout autre "concurrent".

Mais passons à "maintenant".

D'après mon expérience non scientifique, Dojo connaît un fort afflux de nouveaux utilisateurs. Je vois beaucoup plus de gens utiliser Dojo et je connais beaucoup plus de projets lancés avec Dojo. Cela a commencé quelque part au milieu de l'année 2009. Les raisons de ce phénomène, telles que je les vois :

  1. De nombreux problèmes mentionnés ci-dessus sont résolus ou en cours de résolution.

  2. Le canal #dojo sur freenode est extrêmement dynamique, et d'autres ressources en ligne sont plus pertinentes que jamais.

  3. Le Dojo, phénomène essentiellement américain, a finalement commencé à s'internationaliser.

Un soin particulier est apporté pour que les utilisateurs d'anciennes versions de Dojo ne soient pas laissés pour compte. Par exemple, en réaction au dernier avis de sécurité, toutes les versions publiées de Dojo ont été mises à jour : de la 0.4 à la 1.4 actuelle. Je suis sûr que la séparation 0.4/0.9 ne se répétera pas lorsque Dojo passera à la version 2.0 dans le futur : l'évolution plutôt que la révolution est plus acceptable socialement.

Je crois que les technocrates de Dojo ont finalement compris les implications sociales de leurs décisions techniques, des changements ont été effectués, la communauté est vivante et se porte bien.

Dojo va-t-il bientôt "battre" jQuery en termes de chiffres ? Bien que, techniquement, Dojo ressemble à un sur-ensemble propre de jQuery et plus encore, et que les deux peuvent être utilisés sur le même marché des "améliorations progressives", il est peu probable que Dojo bouleverse jQuery. Voir ci-dessus sur le ciblage de différents marchés, et rappelez-vous que la lutte contre d'autres boîtes à outils n'est même pas un objectif pour les geeks, qui travaillent sur Dojo, - ils sont concentrés sur le fait de rendre Dojo encore plus utile dans un large éventail de scénarios, et sur la construction de leur propre communauté. En fin de compte, c'est aux utilisateurs de prendre une décision sur ce qu'ils veulent en fonction de leurs besoins.

Mise à jour : J'espère que personne ne conclura que "Dojo a laissé tomber la balle et que jQuery est là par hasard". Rien de tel. jQuery avait beaucoup à offrir, surtout au niveau conceptuel. Nous aimons jQuery et lui souhaitons le meilleur. C'est la référence pour comparer nos efforts dans la construction d'autres boîtes à outils.

25voto

hyperslug Points 2162

Les joueurs en ont eu assez de jouer à "Super Smash Bros Dojo :"

http://www.google.com/trends/correlate/search?e=dojo&t=weekly

enter image description here

13voto

Kenneth Xu Points 851

Peut-être que les tendances de l'emploi révèlent la vérité : indeed job trend

Mais les emplois dans les dojos semblent être mieux payés. enter image description here

4voto

Gavin Points 114

Je suis aussi un participant occasionnel à Dojo, et même en précisant "javascript" dans la recherche de tendances, on obtient jquery en tête :

http://www.google.com/trends?q=jquery,dojo+javascript,yui+javascript&ctab=0&geo=all&date=all&sort=0

Cela dit, je pense qu'ils servent des publics différents. Dojo (et maintenant Closure de Google) sont des boîtes à outils "full-strength" avec une profondeur et des outils considérables, conçues pour être utilisées par des ingénieurs pour des applications à l'échelle de Gmail.

JQuery est conçu pour être utilisé par les concepteurs pour pimenter une page.

Vous peut Utilisez l'API des sélecteurs de Dojo pour faire du codage de style JQuery, tout comme vous pouvez utiliser les facilités de JQuery pour faire du développement plus "applicatif".

À mon avis, il y a beaucoup plus de concepteurs et de pages web que d'ingénieurs et d'applications web.

3voto

Vulcan Points 31

Le tableau de Mikey Mouse, dont le lien figure ci-dessus, présente une gamme différente. Le voici sans le paramètre YTD qui donne un autre son de cloche : jQuery n'a toujours pas atteint le sommet atteint par Elvis en 2007. En outre, la comparaison avec un terme générique réel montre que les termes génériques ne "perdent" pas. Le chat domine. (http://www.google.com/trends?q=jquery%2C+cat%2C+dojo%2C+elvis+presley%2C+mickey+mouse)

Cela dit, j'aime Dojo et jQuery. Je remercie les deux équipes de projet de nous avoir rendu la vie tellement plus facile. Eugène, merci d'avoir saisi l'occasion de fournir des informations utiles sur le projet Dojo. Gavin, je suis d'accord avec votre point de vue sur les publics cibles de chacun des outils. Il ne doit pas y en avoir qu'un seul.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X