Le débat sur le framework JavaScript de base de WordPress s'intensifie, les contributeurs limitent la discussion pour réagir contre Vue

Publié: 2017-05-31
crédit photo : oskay Small Parts – (licence)

Les principaux contributeurs de WordPress se sont réunis ce matin pour poursuivre la discussion sur la sélection d'un nouveau framework JavaScript à utiliser avec les nouvelles fonctionnalités de base. La discussion sur le post Make/Core s'est intensifiée au cours du week-end avec plus de partisans de Vue.js commentant pour ajouter leurs réflexions.

Adam Silverstein et Andrew Duthie ont animé la réunion de ce matin et ont commencé par ouvrir la discussion pour inclure d'autres frameworks tels que Preact, Angular et Ember. Cependant, la discussion s'est rapidement réduite à React vs Vue.

Silverstein a encouragé les participants à se rappeler que le nouveau cadre est destiné à être utilisé avec de nouvelles fonctionnalités telles que le nouvel éditeur et qu'ils continueront à utiliser Backbone lorsqu'il s'agira du bon outil, ainsi que dans le JavaScript existant. Il a également souligné que la discussion porte sur un cadre pour le noyau et que les développeurs sont libres d'utiliser le cadre de leur choix pour créer des plugins ou des thèmes.

Les partisans de Vue.js considèrent la "facilité d'apprentissage" comme un facteur important dans le choix d'un nouveau framework

La facilité d'apprentissage ne fait pas partie des critères identifiés par les contributeurs pour sélectionner un nouveau framework, mais c'est l'une des préoccupations majeures des promoteurs de Vue.js.

"Vue peut faire tout ce que React peut faire et est beaucoup plus accessible", a déclaré Justin Kopepasah. "Il y a une énorme adoption de Vue et la croissance ne montre aucun signe d'arrêt. Certains des meilleurs frameworks open source ont adopté Vue et il est utilisé par les trois plus grandes entreprises technologiques en Chine (y compris Alibaba). Bien que je convienne que React est également un bon choix, il n'est pas très accessible aux nouveaux développeurs et a Facebook derrière lui, ce qui peut être très alarmant pour les gens à bien des égards (pas seulement pour la technologie).

Justin Tadlock, un contributeur principal dont le code et les tutoriels ont aidé de nombreux développeurs à apprendre WordPress, a partagé des réflexions similaires au cours du week-end sur le post Mare/Core :

J'ai essayé React à plusieurs reprises. Même avec plus de 10 ans d'expérience en programmation, c'était difficile à comprendre pour moi. Je ne peux pas imaginer essayer de l'apprendre en tant que personne novice dans le développement de WP.

Vue est extrêmement simple pour commencer à apprendre. J'ai eu une petite application en place et en cours en quelques minutes. En quelques heures, je construisais des trucs sympas liés au formulaire sans les docs.

Si cela ne tenait qu'à moi, je pousserais WP à construire son propre framework JS qui résout les problèmes spécifiques à WordPress. Mais, si nous allons choisir un framework existant, optez pour Vue.

Matias Ventura, ingénieur Automattic et contributeur aux projets Calypso et Gutenberg, est partisan de l'adoption de React par WordPress. Il soutient que considérer ce qui est le plus facile à apprendre n'est pas le bon objectif pour déterminer ce dont les futures interfaces de WordPress auront besoin.

"À mon avis, au lieu de" plus facile à démarrer ", nous devons examiner des paradigmes de programmation robustes et une approche expressive des interfaces de codage", a déclaré Ventura. "C'est ce que je retiens fondamentalement de "apprendre JavaScript profondément" de Matt - le corollaire étant que WordPress devient une plate-forme pour enseigner JavaScript aux nouveaux programmeurs, et nous devons prendre cela au sérieux, pas seulement comme une commodité pour nous à court terme. ”

Ventura a également noté que WordPress n'a jamais réussi à attirer les développeurs JavaScript et que les interfaces JS dans le noyau manquent de contributeurs par rapport au côté PHP.

"Nous avons l'opportunité de rendre le développement WordPress plus attrayant pour une nouvelle génération de développeurs qui ont appris à coder via JavaScript", a déclaré Ventura. Il a encouragé les autres participants à examiner les types d'interfaces dont WordPress a besoin pour se moderniser et à sélectionner le meilleur cadre pour les gérer dans le noyau.

"Le" plus facile à démarrer "[argument] me semble un peu fallacieux", a déclaré Ventura. « Plus facile pour qui ? A quel prix apprendre correctement JavaScript ? Les exigences d'interfaces riches dans les applications Web nécessitent une compréhension plus approfondie des technologies utilisées. Ce n'est pas quelque chose que nous pouvons éviter. JavaScript ne peut plus être considéré comme une simple amélioration progressive car c'est le langage dans lequel les interfaces modernes sont exprimées.

Les contributeurs craignent que React soit soutenu par Facebook

Pour le moment, React est plus établi et plus largement adopté que Vue, mais les contributeurs s'inquiètent du fait que le framework soit soutenu et licencié par Facebook. En plus des inquiétudes concernant l'interprétation de la délivrance de brevet supplémentaire de React, la société a été à l'origine de nombreuses controverses concernant la censure, l'exploration de données et la confidentialité, entre autres problèmes. Les opposants ne veulent pas voir WordPress atteler son chariot à Facebook en utilisant React dans le noyau.

"L'adoption de React est bien plus que l'ajout d'une bibliothèque à WordPress : c'est l'ajout de la culture, des pratiques commerciales et de la base de code dirigée par un géant de la technologie", a déclaré Justin Kopepasah. "Si nous incluons React dans Core, nous demandons en quelque sorte aux utilisateurs (des propriétaires de sites uniques aux entreprises) d'accepter que Facebook joue un rôle clé dans l'avenir de WordPress. Je ne doute pas que cela causera une pause pour certaines entreprises qui envisagent d'adopter WordPress.

Cependant, d'autres contributeurs s'inquiètent de la longévité de Vue.js, car il dépend fortement de son créateur Evan You. Vous financez ses efforts sur Patreon, mais le projet ne bénéficie d'aucun soutien d'entreprise majeur.

"Je ne suis pas à l'aise de compter sur un projet géré par une seule personne qui pourrait disparaître", a déclaré Ryan McCue, promoteur de React et co-responsable de l'API WP REST. "Être dirigé par une société ayant un intérêt dans le jeu signifie un soutien à long terme et une stabilité relative." McCue a également noté que React a "une énorme communauté d'enseignement et de soutien pour les personnes qui apprennent".

Beaucoup pensent que WordPress sélectionner React car le nouveau framework JS est une fatalité

Malgré toutes les discussions lors des réunions et sur les publications Make/Core, de nombreux spectateurs et membres de la communauté sont convaincus que WordPress choisir React est une fatalité. Au début de la discussion de la semaine dernière, il semblait que la plupart des principaux contributeurs étaient en faveur de React, mais un fort contingent de partisans de Vue s'est avéré ajouter des commentaires à la discussion.

La sélection de React semble être le seul choix viable lorsque les critères du début incluent des éléments tels que "prouvé dans un contexte WordPress" et "alignement avec Calypso". Beaucoup ont commenté pour dire que les critères sont biaisés et ils supposent que la décision a déjà été prise par les canaux secondaires avec une discussion publique tenue pour "l'optique". L'ingénieur Automattic James Nylen a commenté la semaine dernière un ticket ouvert pour le projet Gutenberg, déclarant que "Selon une discussion récente dans le noyau Slack, le noyau WP a essentiellement décidé d'adopter React."

"Si c'était vraiment censé être une discussion communautaire, alors pourquoi a-t-elle lieu maintenant?" Le développeur WordPress Christopher A. a commenté notre récent article résumant la discussion initiale. «Le choix d'un cadre de vue aurait dû se produire avant que la première ligne de Gutenberg ne soit écrite. Il était connu dès le départ qu'un cadre de vue serait nécessaire. C'était le désir de Matt de le faire décoller le plus rapidement possible. La meilleure façon d'y parvenir était d'utiliser des développeurs Automattic qui ont de l'expérience avec React.

WordPress sélectionne un framework JavaScript à un moment où les frameworks évoluent rapidement, mais les contributeurs impliqués dans la décision ont déclaré qu'ils préserveraient la possibilité pour les développeurs de thèmes et de plugins d'utiliser n'importe quel framework de leur choix pour créer leurs produits. Aucun cadre n'a été sélectionné lors de la réunion d'aujourd'hui et Andrew Duthie a déclaré qu'il s'attend à ce que la conversation se poursuive lors du sommet des contributeurs de WordCamp Europe.

"En ce qui concerne React vs Vue (vs Angular vs …), nous avons discuté des arguments pour et contre chacun dans le chat hebdomadaire, et nous y prenons intentionnellement du temps", a déclaré Ryan McCue. « Les critères clés que nous avons choisis proviennent des besoins du projet et ne sont pas destinés à biaiser la décision dans une direction spécifique. Calypso et d'autres projets sont un signal fort vers React, mais ils ne sont pas l'argument ultime (s'ils l'étaient, nous n'en parlerions même pas).

McCue a déclaré qu'il ne voyait pas WordPress remplacer l'ensemble de l'administration par Calypso d'une manière qui ne permette pas aux développeurs d'utiliser ce qu'ils choisissent pour leurs propres extensions. La décision d'adopter un framework JavaScript pour le noyau vise davantage à faciliter le travail des développeurs principaux. À l'heure actuelle, les principaux développeurs travaillant sur de nouvelles fonctionnalités ont une meilleure connaissance de React que d'autres frameworks.

"En fin de compte, nous devons prendre une décision sur ce qu'il faut utiliser dans le noyau, et cette décision a un impact direct sur les personnes travaillant sur le noyau", a déclaré McCue. "Choisir un framework plutôt qu'un autre ne signifie pas que les autres sont pires, c'est juste nous (en tant que principaux contributeurs) qui essayons de faciliter notre propre développement."

Un résumé de la discussion devrait être publié prochainement sur le blog Make/Core et la discussion sur la sélection d'un nouveau framework JavaScript se poursuivra lors des prochaines réunions.