Wikipédia abstraite/Mises à jour/2023-01-19
◀ | Actualités de la Wikipédia abstraite | ▶ |
État d’avancement de Wikifonctions, janvier 2023
Où en sommes-nous ?
À l’occasion de notre 100e infolettre de mise à jour, et aussi pour bien commencer 2023, nous voulions donner un aperçu général de l'état d’avancement du projet et de ce qu’il reste encore à faire avant le lancement.
L’année dernière, nous avons constaté des progrès majeurs. Nous avons lancé la version bêta de Wikifonctions et y avons vu un certain engagement — merci à toutes les personnes qui l'ont essayé ! Nous avons également eu la participation des boursiers de Google.org, ce qui a conduit à un certain remaniement de notre travail pour tenir compte de la disponibilité limitée de compétences spécifiques. Cela a été une année chargée !
Wikifonctions fournit déjà un grand nombre de fonctionnalités :
- les utilisateurs peuvent appeler des fonctions ;
- Wikifonctions permet d’exécuter des mise en œuvre en Python et en JavaScript ;
- Wikifonctions permet de la composition de mises en œuvre à partir de fonctions qui sont en fin de compte écrites dans différents langages de programmation ;
- Wikifonctions permet les types définis par l’utilisateur et les validateurs définis par l’utilisateur pour ces types ;
- les contributeurs peuvent créer des instances des types définis par l’utilisateur ou pré-construits et de les stocker sur le wiki ;
- il existe un cadre de travail facile à utiliser pour créer des fonctions ;
- les types génériques et les fonctions génériques sont prises en charge par le serveur, ce qui permet de puissantes mises en œuvre ;
- les fonctions peuvent avoir plusieurs mises en œuvre et le serveur sélectionne la mise en œuvre à exécuter pour un appel de fonction donné
- les cas de test unitaire sont exécutés envers les mises en œuvre données ;
- la communauté peut approuver et désactiver individuellement des mises en œuvre et des cas de test unitaire, ce qui fournit un mécanisme permettant à la communauté de découvrir ce que signifie exactement chaque fonctionsignifie exactement ;
- l’interface de présentation est entièrement multilingue et prend en charge l’affichage et la modification des libellés dans des centaines de langues ;
- le site fonctionne à la fois sur les ordinateurs de bureaux et les mobiles' ; nous sommes ravis de fournir un environnement où les utilisateurs de mobiles peuvent bénéficier des fonctions et en créer ;
- diverses métadonnées sont collectées lorsqu’une fonction s’exécute et rendues disponibles dans l’interface utilisateur.
Il y a seulement deux semaines, ma fille âgée de huit ans m’a demandé sur quoi je travaillais et je lui ai donné un tour rapide de Wikifonctions. Je lui ai montré la fonction renverser sur Wikifunction et a particulièrement apprécié parvenir à saisir dans Wikifunction des chaînes apparemment sans signification, exécuter la fonction et faire que le système nous affiche des gros mots.
Durant les dernières semaines, nous nous sommes concentrés sur la replanification et la définition de nouvelles priorités des fonctionnalités afin d’avancer plus rapidement vers le lancement.
Nous somme actuellement en plein dans la conception et de la mise en œuvre de notre expérience utilisateur. Vous pouvez voir les changements qui ont atterri et ceux sur lesquels nous travaillons dans les deux paires de captures d’écran ci-dessous.
Pour l’instant, vous pouvez obtenir un aperçu du nouvel inspecteur d’objet et le mettre en contraste avec l’actuel inspecteur d’objet dans la version bêta. Les fonctionnalités interactives sur les objets complexes sont particulièrement intéressant à expérimenter et comparer. Cette vue est dès à présent en plein développement.
Nous avons également fait atterrir un correctif majeur pour la mise en cache persistant des résultats de test, ce qui nous aidera avec quelques problèmes majeurs de performance que de nombreux visiteurs de la version Bêta ont pu remarquer. De plus, cela permettra bientôt une autre étape majeure : en se basant sur les métadonnées des résultats de test, le serveur commencera à sélectionner les mises en œuvre ayant les meilleurs performances. Alors qu’actuellement il sélectionne une mise en œuvre de façon aléatoire, dans un futur proche il sera considérablement plus futé que cela.
Que reste-t-il à faire ?
What are the main pieces of work we hope to do before we launch Wikifunctions?
- ensure that function evaluation always runs correctly; there are a few stubborn edge cases left to be addressed (current phase, θ, Goal 2)
- complete the design and implementation of the user experience, so that readers and contributors have a pleasant experience using Wikifunctions (current phase, θ, Goals 5, 9 and 10)
- create and manage user rights relevant to Wikifunctions, as there are a few new rights that the current wikis don’t have (current phase, θ, Goal 6)
- display edit history / diffs, so it becomes possible to understand changes in the wiki (current phase, θ, Goal 6)
- fixing a few issues with error reporting (next phase, ι)
- provide a language switcher for the website, so that users can use and read Wikifunctions in their own language (next phase, ι)
- collect metrics that will help us to understand how Wikifunctions develops, and to recognize opportunities and bottlenecks in the system (next phase, ι)
- get search working, to help folks find their way around (next phase, ι)
- enable users to write documentation for their own functions, to explain their functions and foster their use (next phase, ι)
There is still plenty of work to do. You can follow the progress either on the Beta, where we run the newest development version, or through these updates, where we will continue to report on our progress.
Looking forward to 2023!
Development update (as of January 13, 2023)
- Major progress on Goal 4 (Implementing the Function view). In a closing event, we closed two of the three Critical User Journeys (connect an implementation and create a function definition) associated with this Goal, and identified the remaining tasks for this Goal. Since then, all but one could be closed and the last one (implement separation between fields and blocks changes) is in review. We’re very likely to close this last Critical User Journey on this Goal next week, including Goal 4 itself too.
- The Experience workstream has appropriately shifted to Goal 5 mostly (Implementing the default object viewer). This week we saw the design for lists being locked in, and the first parts land.
- In Goal 3 (Meta-data) we only have three tasks left! A major patch, which has been cooking since August, has finally hit the review, and which will considerably improve the performance characteristics of the system.
- We had the first volunteer’s corner of the year. We used Jitsi this time (but couldn’t use the Foundation instance), and we had seven volunteers attending. The session was lively and had numerous questions, and we hope to recruit a new volunteer developer to our wider ecosystem.