Extension:Graph, propositions pour l'avenir

This page is a translated version of the page Extension:Graph/Plans and the translation is 100% complete.

Mise à jour d'avril 2024

Bonjour à tous, je m'appelle Marshall Miller; Je suis directeur senior des produits à la WMF et travaille avec les chefs de produit et les équipes consacrées à l'expérience utilisateur de lecture et de rédaction des Wikis. Merci à tous d'avoir participé à cette conversation en cours et d'avoir fait preuve de patience pendant la panne frustrante de l'extension Graph. J'ai donné la dernière mise à jour sur les graphes ici et sur wikimedia-l. Depuis, j'ai parlé à de nombreux bénévoles de leurs expériences et de leurs besoins en matière de graphiques, et j'ai rassemblé un groupe d'employés pour proposer un plan. Je suis de retour avec une proposition de plan pour vos commentaires et contributions. Je publie ici sur la page du projet au lieu de la page de discussion afin que cette mise à jour puisse être marquée pour traduction dans d'autres langues. Il y a un nouvel en-tête sur la page de discussion pour la discussion.

Résumé

En bref, nous, à la Fondation Wikimédia, proposons de continuer avec une approche suggérée par de nombreux membres de la communauté: construire un nouveau service pour remplacer l'extension Graph. Cette approche permettra aux éditeurs de créer des visualisations de base, nécessitera une coordination avec les communautés autour de la migration des graphiques existants et sera extensible par les développeurs qui souhaitent créer et maintenir des fonctionnalités supplémentaires.

Nous avons eu besoin d'un certain temps pour réfléchir à toutes les questions architecturales et à la manière de financer ce travail, et nous souhaitons maintenant entendre les bénévoles nous dire si cela semble être la bonne approche. Ce travail sera dirigé par Chris Ciufo, le chef de produit de l'équipe de conception de systèmes. Vous pouvez vous attendre à avoir de ses nouvelles à l’avenir. Vous trouverez plus d’informations ci-dessous pour ceux qui souhaitent voir plus de détails et de considérations de cette approche.

Ces travaux n’ayant pas encore commencé, il reste encore plusieurs mois avant que les nouveaux graphes soient opérationnels. Nous allons impliquer les bons ingénieurs et commencer à concevoir l'architecture au cours des prochaines semaines, en nous assurant que nous avons un plan solide et que nous sommes prêts à le mettre en œuvre, puis nous commencerons probablement ce travail en juillet, à mesure que les membres du personnel auront complété leurs projets précédents. On ne sait pas encore combien de temps il faudra avant que les premiers types de graphiques soient opérationnels. Nous sommes heureux de discuter des idées des membres de la communauté sur ce qu'il faut faire, au le cas où les graphes restent indisponibles au cours des mois à venir.

Raisonnement

Chris et moi proposons cette approche basée sur l'examen de la manière dont les gens ont utilisé les graphes dans le passé, sur la manière dont nous pensons qu'ils les utiliseront à l'avenir et sur des considérations visant à garantir que notre technologie sera sécurisée, évolutive et maintenable dans le futur.

En regardant comment les gens ont utilisé les graphes dans le passé, nous constatons que ceux-ci sont un outil précieux, mais pas extrêmement courant dans les Wikis. Sur la Wikipédia en anglais, les graphes sont utilisés dans environ 10.000 articles, soit 0,15% de tous les articles. Dans toutes les versions linguistiques de Wikipédia, les graphes sont utilisés dans environ 178.000 articles, soit un pourcentage de 0,28%. En dehors de l’espace de noms principal, les graphes sont utilisés plus souvent, fréquemment parce qu’ils font partie de modèles très affichés. Par exemple, sur la Wikipédia en arabe, il y avait un graphe de pages vues sur chaque page de discussion d'article (jusqu'à ce qu'elles soient récemment supprimées). Surtout, nous avons remarqué que la grande majorité des graphes sont relativement simples: Barres, courbes, secteurs, etc., et utilisent des données en ligne dans le texte Wiki ou dans l'espace de noms Data sur Commons. Les ressources affectées aux graphes doivent correspondre à cette utilisation modérée – une prise en charge suffisante, mais pas pour des fonctionnalités complexes qui ne sont pas largement utilisées.

Discussion technique

La fonctionnalité de la nouvelle extension serait plus limitée par rapport à l'ancienne, notamment dans la mesure où elle ne prendra pas en charge tous les types de visualisation et sources de données de l'ancienne extension. Cette approche représente un nouveau départ vers un avenir plus durable avec les graphes.

En terme de sécurité, d'évolutivité et de maintenabilité, nous avons décidé en décembre qu'il n'existait pas de moyen viable de corriger et de continuer à utiliser l'ancienne extension Graph. Entre autres options, nous avons tenté de mettre à niveau vers Vega 5 (mais avons continué à trouver les mêmes problèmes de sécurité), et nous avons essayé d'envelopper le canevas Vega dans un brouillon iframe (ce qui a entraîné des problèmes significatives de performance). La conclusion était donc qu'il fallait trouver une nouvelle extension pour les graphes.

Voici un bref aperçu de l'approche à laquelle nous pensons:

  • L’ancienne extension Graph serait abandonnée.
  • La Fondation construirait une nouvelle extension de balise d'analyseur qui prendrait en charge un ensemble limité de types de visualisation prédéterminés, comme des graphes et des cartes de base, qui couvrent la majorité des cas d'utilisation existants, que les éditeurs spécifieraient dans le texte Wiki et seraient affichés sous forme d'images statiques sur les pages Wiki.
  • Le rendu côté serveur éviterait les risques de sécurité connus ou substanciels, tels que ceux de l’ancienne extension Graphs.
  • Nous ne connaissons pas encore la ou les bibliothèques de visualisation à utiliser, que ce soit Vega, d3 (qui alimente Vega), quelque chose comme Notre monde dans Data-Grapher, ou autre chose.
  • La nouvelle extension prendrait en charge les données de définition de graphes spécifiées en ligne ou via des données tabulaires Commons (dans l'espace de noms Data:namespece), comme cela était pris en charge par l'extension Graph. Nous essaierons d'offrir une assistance pour migrer les graphes existants à l'aide de ces sources de données.
  • Elle pourrait être étendue avec de nouveaux types de visualisation par le personnel ou les développeurs bénévoles à travers un processus contrôlé, centralisé et révisable par le code.
  • Elle pourrait être étendue pour extraire des données d’autres sources, telles que Wikidata, ce pour quoi elle n’est pas été conçue au départ.
  • Elle afficherait des graphies sur les applications Wikipedia iOS et Android (cela n'était pas possible avec l'extension Graph après la mise hors service de Graphoid).
  • Elle serait officiellement entretenue par la WMF pour résoudre les bogues.

Dans les nombreuses conversations autour des graphes, les bénévoles ont également soulevé des questions à plus long terme sur le “contenu interactif”, tel que les chronologies et les objets 3D. Reconstruire la capacité de servir des graphes simples en toute sécurité représentera une énorme quantité de travail pour le personnel et les bénévoles. Dans ce cadre, la nouvelle extension sera facilement extensible par des bénévoles possédant les compétences techniques nécessaires pour ajouter des visualisations plus sophistiquées et davantage de sources de données. Cela peut être une porte ouverte à certains types de contenu interactif, mais le sujet plus général du contenu interactif mérite des conversations distinctes et continues à l’avenir.

Perspectives futures

Pour av1ncer, nous souhaiterions avoir votre avis sur cette approche :

  • Est-ce que cela semble être la bonne façon de procéder ?
  • Quels sont les types de visualisation de base les plus importants à soutenir ? Quels sont ceux dont on peut se passer ?
  • Quels cas d’utilisation craignez-vous d'avoir été oubliés ?
  • Comment les communautés devront-elles participer ou réagir à ces changements ?

Au fur et à mesure de nos discussions, de nombreuses questions importantes doivent être résolues. L’une de mes principales préoccupations est ce qui se passera avec l’écosystème de modèles et de sources de données qui a été construit autour de l’extension Graph au cours des dix dernières années. Même si nous souhaitons faciliter le fonctionnement de nombreuses spécifications de graphes existantes dans le nouveau système, nous devrons réfléchir à cela ensemble.

Merci d'avoir lu cette longue mise à jour et de continuer à faire partie de cet effort. Je sais que beaucoup d'entre vous ont passé beaucoup de temps au cours des derniers mois à discuter des graphiques et à élaborer des solutions de contournement. Nous sommes impatients de poursuivre le travail.

Discussion par rapport à cette mise à jour

Propositions techniques antérieures

Les propositions techniques antérieures peuvent être consultées sur ce lien d'archive. Malheureusement notre étude a montré qu'il y avait des problèmes de sécurité et (ou) de performance avec ces propositions. La mise à jour ci-dessus et les discussions associées sur la page de discussion détaillent la nouvelle proposition.