The on-wiki version of this newsletter can be found here:
https://meta.wikimedia.org/wiki/Abstract_Wikipedia/Updates/2023-11-30
--
Welcome, Grace and Miguel!
This week we are happy to welcome two new members on the Wikifunctions team.
Grace Choi is joining us and the Foundation as a senior software engineer,
to work on all of the pieces of software Wikifunctions runs on. Here we
have Grace saying hello in her own words:
*As a classical violinist communicating in the small world of music (yes,
much smaller world than the small world as we know it), I long wanted to
learn how to communicate in the world of technology that was seemingly
dictating our very lives. After completing my masters, I carefully laid my
violin down for a rest and plunged into a bootcamp that introduced me to
web development. I then dabbled in some full-stack engineering followed by
nearly three years in backend development with Ruby; one could say the rest
is history.*
*I am thrilled to join the spectacular team at Abstract Wikipedia to
scrutinize yet another way to 'communicate' by way of functions and
linguistics to actualize an extraordinary project together. I don't have
many hobbies but does learning German on Duolingo count? For the winter
season, I have pulled out the Lord of the Rings books and am in search of
some delicious local (Seattle) hot cocoa to melt into my oat milk.*
Miguel Castro is joining us and the Foundation as our engineering manager,
to coordinate the engineers on the team, ensure their growth, and also
coordinate their work with the rest of the organization. Here we have
Miguel saying hello in his own words:
*I am excited and humbled to be part of the Abstract Wikipedia team! When I
was around 8, my mom bought me an old, worn-out encyclopedia set that
became a doorway to reading about everything that intrigued and fascinated
me. When I was around 10, I discovered computers and how they could grant
me access to knowledge. I began in the 90s, using my modem to connect to
local computers to download text files on subjects ranging from philosophy
to programming.*
*By the time I was 14, I was coding every day. After I graduated, I began
my first job in IT at 18 and have been working in the industry ever since.
I eventually graduated college with a degree in MIS and Computer Science.*
*I worked as a software engineer for most of my career, primarily with
open-source technologies. Today, my focus is engineering leadership and how
to bring people together to create things we are proud of and that have a
positive impact. Lastly, my work here with the Abstract Wikipedia team is a
full-circle moment as it connects me to why I started this journey.*
Please join me in welcoming Grace and Miguel to the team!
Functioneer rights control handed over to community
<https://meta.wikimedia.org/wiki/File:Wikifunctions_Functioneer_Icon.svg>Wikifunctions
Functioneers logo
The community has in the last few weeks successfully worked on and agreed
on a policy for Functioneer rights
<https://www.wikifunctions.org/wiki/Wikifunctions:Functioneers#How_to_request>.
Thank you all! Given that this is in place, we are happy to relinquish the
responsibility of giving out Functioneer rights, and allow the community to
implement the new rights.
All Functioneer rights that have been handed out by us so far have been
temporary and will expire by themselves, but the community is free to
manually speed that up if they so want. It is all up to you.
With that, we will archive the current request page
<https://www.wikifunctions.org/wiki/Wikifunctions:Apply_for_editing>. Thank
you for working with us on this step!
Recent changes to Wikifunctions software
Our main focus right now continues to be on better support of types (T343469
<https://phabricator.wikimedia.org/T343469>). To this end, the biggest
visible change this week is our continued work on the front-end to allow
the use of lists as inputs and outputs of functions (T326301
<https://phabricator.wikimedia.org/T326301> mainly, plus T351276
<https://phabricator.wikimedia.org/T351276> and others). This feature is
not quite ready yet for us to encourage use, as we're working on their uses
in compositions (T351272 <https://phabricator.wikimedia.org/T351272>) and
other places – expect progress in the next few weeks!
On the back-end, we've struggled through several related issues that were
blocking progress or even deployment (T350700
<https://phabricator.wikimedia.org/T350700> and T352328
<https://phabricator.wikimedia.org/T352328>, alongside several others), and
we've now finally updated the evaluator service to our latest work. Our
thanks to colleagues in SRE for their help on how we could hunt down
evidence to debug our issues. Beyond being a little faster now, the main
user-visible change from the newly-updated services is that reports of
duration less than 50 µs, previously reported as 0 (as the OS tries to
mitigate timing attack security concerns), will now show "< 50 µs".
We've changed the mechanism we use to pass your function calls into the
WebAssembler environment after we found our original approach caused some
hard-to-debug errors in some cases (T349385
<https://phabricator.wikimedia.org/T349385>). Additionally, a number of
rare error-states will now return proper, translatable errors, rather than
hard-coding a message in English, such as for timeouts (T327275
<https://phabricator.wikimedia.org/T327275>), recursion limits (T350608
<https://phabricator.wikimedia.org/T350608>), and invalid responses (T349785
<https://phabricator.wikimedia.org/T349785>).
For minor issues, we fixed and released early a bug that hid the button to
trigger test runs on implementations (T351121
<https://phabricator.wikimedia.org/T351121>), and we altered the "Function
explorer" box on Implementation and Test case pages to show now just the
ZID but the label when inputs are function-call types like a list (T351274
<https://phabricator.wikimedia.org/T351274>)
You can browse the full list of deployed changes
<https://www.mediawiki.org/wiki/MediaWiki_1.42/wmf.7#WikiLambda> for the
MediaWiki front-end for Wikifunctions. We didn't deploy any back-end
service changes this week.
Volunteers’ Corner on Monday, 4th of December 2023
We will have our monthly Volunteers’ Corner on the upcoming Monday 4
December 2023 at 18:30 UTC <https://zonestamp.toolforge.org/1701714600>.
You can join the meeting in the usual Google Meets room
<https://meet.google.com/xuy-njxh-rkw>.
We will give a quick update on the development and upcoming changes, offer
space for questions, and, if time permits, collaboratively create a new
function. Bring ideas for a new function along!