Abstract Wikipedia/Updates/2023-12-13

Abstract Wikipedia Updates Translate

Abstract Wikipedia via mailing list Abstract Wikipedia on IRC Wikifunctions on Telegram Wikifunctions on Mastodon Wikifunctions on Twitter Wikifunctions on Facebook Wikifunctions on YouTube Wikifunctions website Translate

Looking back at 2023

edit

For Wikifunctions, 2023 will always be remembered: it is the year Wikifunctions launched! It was an exciting year.

 

We have come a long way from where we were at the beginning of the year. We reworked the entire user experience, and we plan to continue updating and experimenting with it. In many ways, Wikifunctions is a first of its kind, and so, by necessity, we are exploring new ways to interact and maintain a new form of knowledge in the Wikimedia realm: functions. We also rebuilt the evaluators on the backend shortly after making the site public, in order to run them entirely on WebAssembly, which made our backend more stable and secure. The orchestrator has also come a long way towards working more correctly and predictably.

The beginning of the year saw the completion of the Google.org fellowship program with us and the discussion around the fellows’ recommendations and Maria Keet’s reflections. We announced financial support from the Wikimedia Endowment, the Rockefeller Foundation, and Google.org, totaling a sum of US$ 5 Million. We presented and demoed at numerous conferences and community events remotely and in-person, most notably Wikimania in Singapore.

We reflected on Wikifunctions picking up the historic mantle of a Compendium of Calculations, also on the role it can play in the wider context of decolonizing knowledge.

And, last but certainly not least, we made Wikifunctions public, moved to general availability, and announced it to the world.

Wikifunctions started with a limited set of types: just strings and Booleans. And yet, we saw the creation of more than 500 functions, with contributions from hundreds of volunteers. Particularly of note are the creation of natural language related functions for seventeen languages: Bangla, Brahui, Breton, Croatian, English, Esperanto, Finnish, French, German, Hindustani, Igbo, Japanese, New Persian, Punjabi, Rohingya, Sindhi, and Turkish. In November, we already crossed half a million monthly pageviews. The community continues to take over important roles, such as managing the Functioneer role autonomously, and creating the relevant policies for self-governance.

We plan to kick off 2024 by making new types available, and there are a lot of improvements and new features that are going to roll out throughout the year. We will have planning sessions in January, and update here afterwards. One big question that will become more relevant and that might need to be decided soon is around the location for the content for Abstract Wikipedia.

I want to express my sincere gratitude to the Abstract Wikipedia team, current and past members! To the many teams and individuals throughout the Foundation and Affiliates who have helped us and who have contributed to the project. To the donors, and to the fellows. And, foremost, to all the volunteers who have helped on every level and at every step of the project and who are embracing this new Wikimedia project and making it your own. You are incredible, and a joy to work with. Thank you all!

Thanks to a great 2023, and forward to an exciting 2024! Welcome to the first year of Wikifunctions.

The next edition of the newsletter will be in early January. We wish you all happy holidays, and peace and health for the new year!

Recent changes to Wikifunctions software

edit

In our main work on support of custom Types (T343469), we've worked on both the front- and back-ends this week. We're very close to completing the re-design, -finement, and -build of the core control to select a Type, which will let you fluently select a List of Strings as much as you today choose a String (T351272). We've changed the definition of a Type to add new fields to specify the additional functions needed to serialise and deserialise a Wikifunctions Type into a programming language's type and back again (T346991), and tested this on Beta Cluster, where we've run into some bugs. We expect to fix these this week and next, with the first new Types potentially coming to production in the New Year.

We implemented checks for the restrictions that stop users creating new Booleans beyond True and False or Units beyond Void (T349497). We switched our wrapped use of Codex's "Select" component to use it directly, now that we no longer need to add features to it (T347668). We've also completed our audit of all error cases on the back-end, making sure we send proper, translatable errors when they occur (T292804, T321114).

We designed and implemented a metrics system tracking UI interactions, inventory of objects in the system, and usage statistics, to make sure that features work well and identify patterns in usage calling for improvements (for example, were users of Firefox to get much higher failure rates, that might indicate a browser-specific bug that wasn't otherwise reported). We recently fixed this metrics logging to also count edits using the "About box" edit pencil to start, as well as those using the "Edit" tab (T350066). We deployed a dashboard presenting visualizations of our reported metrics.

You can browse the full list of deployed changes for the MediaWiki front-end for Wikifunctions. We didn't deploy any back-end service changes to production this week. As we approach the end of the Western calendar year, there will be a Wikimedia-wide pause in new code deployment from next week until January 2024. We look forward to sharing new improvements with you then!