The on-wiki version of this newsletter can be found here:
https://meta.wikimedia.org/wiki/Abstract_Wikipedia/Updates/2022-10-05
--
As you may have noticed, for a while we stopped posting our updates. This
was mostly because Denny was traveling. Apologies for being so quiet
without prior notice. We will improve that in the future.
The travel was mostly work related: some of us spent one week in Zürich on
an off-site to which
Google.org invited us with their fellows. It was great
for the fellows and for us to meet each other in person, and to discuss how
the fellowship is going and the plans for the future. We also had the
pleasure to listen to a tech talk
<https://commons.wikimedia.org/wiki/File:Knowledge-to-text_Natural_Language_Generation_for_Agglutinating_African_Languages.webm>
by Professor Maria Keet <http://www.meteck.org/> from the University of
Cape Town particularly on the challenges of Niger Congo B languages in
Natural Language Generation. Given that some of the fellows are offboard
during these weeks, we will soon publish a newsletter with an update on the
fellowship, discussing some results and the future work. It was amazing to
meet the fellows, and as much as we are used to remote working, it was
great to catch up in person with each other.
<https://meta.wikimedia.org/wiki/File:Google.org_fellowship_offsite_office.png>
<https://meta.wikimedia.org/wiki/File:Google.org_fellowship_offsite_office.png>
From right to left: on the right side, sitting: Eunice Moon, Ali Assaf, Ori
Livneh, Maria Keet. Standing: James Forrester, Rebecca Wambua, Ariel
Gutman. On the left side, sitting: Dani de Waal, Olivia Zhang, Mary Yang,
Sandy Woodruff. Standing: Edmund Wright, Denny Vrandečić
<https://meta.wikimedia.org/wiki/File:Google.org_fellowship_offsite_dinner.jpg>
<https://meta.wikimedia.org/wiki/File:Google.org_fellowship_offsite_dinner.jpg>
Left hand side on the table, from front to back: Ariel Gutman, Ori Livneh,
Maria Keet, Sandy Woodruff, Mary Yang, Eunice Moon. At head of table:
Rebecca Wambua. Right hand side of the table, fromt front to back: Olivia
Zhang, Denny Vrandečić, Edmund Wright, Dani de Waal, Ali Assaf, James
Forrester
The second trip was to Germany. Denny attended a Dagstuhl
<https://en.wikipedia.org/wiki/Dagstuhl> seminar on “Knowledge Graphs and
their Role in the Knowledge Engineering of the 21st Century
<https://www.dagstuhl.de/en/program/calendar/semhp/?semnr=22372>”, where
Wikidata was an important topic, and where he also discussed the extensions
we plan with Wikifunctions. A report of the seminar is being written and
will be published later this year. Denny wants to thank my co-organizers
Elena Simperl, Marieke van Erp, and Paul Groth.
In Berlin, the Wikimedia movement first met for the Wikimedia Summit
<https://meta.wikimedia.org/wiki/Wikimedia_Summit_2022>, and then a meeting
of the Tech and Product departments of the Wikimedia Foundation. It was
brilliant to meet so many old friends again, and to make new friends. It
was the first time that Adam and Denny met each other, and it allowed us to
get a picture of the original Abstract Wikipedia team of James, Adam, and
Denny:
<https://meta.wikimedia.org/wiki/File:Abstract_Wikipedia_Team_-_Group_photo,_2022-09-15.jpg>
<https://meta.wikimedia.org/wiki/File:Abstract_Wikipedia_Team_-_Group_photo,_2022-09-15.jpg>
From left to right: Adam Baso, Denny Vrandečić, James Forrester
Weekly updates
We also used to publish the weekly progress on the individual workstreams
in the newsletters. In order to pick up that habit again, you can find
below the weekly updates that we skipped. We will re-start publishing them
weekly.
August 12: Officially invited users to Beta!
This week, our team reached one of the major milestones of the project. We
officially invited users to the Wikifunctions Beta
<https://wikifunctions.beta.wmflabs.org/wiki/Wikifunctions:Main_Page>. In
the weekly newsletter, we described what works and what doesn't work on
Beta and encouraged users to report issues via Phabricator. A lot of team
members recorded short presentations in preparation for a Wikimania slot
about Wikiunctions on Sunday.
Performance:
- Started performance analysis methodology documentation
- Set up health-check API endpoint for Wikilambda
Natural Language Generation:
- Not too much progress due to team members' vacation time. Started
adding noun class information for isiZulu, Mboshi, Kiswahili
Meta-data:
- Finished display of metadata dialog on tester page
- Created some new PHP utilities for ZMaps
Experience:
- Fixed and merged Beta launch blockers
- Made great progress on fixing various bugs
- Began researching diffing options
August 19: First Deep Dives session with Selena and Wikimania presentation
The Abstract Wikipedia team had the first Deep Dives session with new
Foundation CTPO (Chief Technology and Product Officer) Selena Deckelman and
gave an overview of the project. Despite technical problems with the
Pheedloop platform, the team was happy about the Wikifunctions presentation
during Wikimania. We had a relatively large number of attendees and
received good questions. Elena Tonkovidova drafted the QA (Quality
Assurance) Abstract Wikipedia playbook in preparation for the new QTE
(Quality and Test Engineer) hire.
Performance:
- Removed mutex locks and async references in function schemata
- Migrated Beta Cluster monitoring from Uptimerobot to Wikimedia infra
Natural Language Generation:
- Drafted initial proposal of the Abstract Representation
Meta-data:
- Finished the work for showing tester status & adding metadata dialog
to the implementation table
- Implemented DB schema for caching tester results in MediaWiki
Experience:
- Finished pagination in implementations/testers table
- Fixed more front-end bugs
August 26: In person
Google.org offsite in Zurich
This week, all
Google.org fellows and a few members of the AW team gathered
in Zürich for an in-person offsite. As a result, the progress for the
Performance and NLG workstreams has been paused. Members of the remaining
workstreams participated in some offsite sessions virtually.
Performance:
- Paused due to offsite
Natural Language Generation:
- Paused due to offsite
Meta-data:
- Finished setZMapValue PHP utility
- Added validation errors & actual / expected test values into metadata
Experience:
- Merged “impactful change” dialog and pagination in
implementations/testers table
- Fixed more front-end bugs
September 2
Performance
- Started on benchmarking performance before and after the async removal
(T296841 <https://phabricator.wikimedia.org/T296841>)
- Productive discussions around validation, have some ideas about how to
improve performance (T315027 <https://phabricator.wikimedia.org/T315027>)
but still needs more work
- Started ideating on architecture review
- Sent CL for logging improvements (I7126a1d49)
- Productive discussions around validation, have some ideas about how to
improve performance (T315027) but still needs more work.
- Added sections to function model formalization doc
Natural Language Generation
- Offsite in Zurich (TechTalk by Maria Keet & NLG UI session)
- Drafted DIFF blogpost & sent to team for review
- Started defining NLG-related types in Wikifunctions Beta
- Started prototyping the NLG system
Metadata
- Finished i18n coding for validation errors & actual / expected test
values
- Adapted metadata dialog code to work with updated dialog components
- Analysis / discussion / tickets about modal-dialog implementation
strategy
Experience
- Fixed function “input” field as placeholder instead of literal
- Using Cdx input field in function page
- MOBILE: confirmation dialog, function page, implementation and test
tables
- Fixed ZObjectSelector behavior issues (T314401
<https://phabricator.wikimedia.org/T314401>)
- Update language selector to match designs (T315919
<https://phabricator.wikimedia.org/T315919>)
- [Ongoing research] refactoring/renaming zobject store module
- Fix Z3K1/value type initialization on type creation: T314945
<https://phabricator.wikimedia.org/T314945>
- Fix ZObjectSelector jumpiness
- Detail requirements for zobjectDiffing algorithm
- Wrote initial ZObjectDiff, ZObjectMapDiff and ZObjectListDiff
- Wrote initial ZObjectDiffTest to ease development
September 9
Performance:
- Resolved performance issue in aysnc patch (T296841
<https://phabricator.wikimedia.org/T296841>)
- Fixed Beta Cluster issues
Natural Language Generation:
- Reviewed the initial proposal of the Abstract Representation
- Made good progress on prototyping the NLG system through Scribunto and
exploring prototype on Wikifunctions beta
- Drafted documentation
<https://www.wikidata.org/wiki/Wikidata:Lexicographical_data/Documentation/Languages/zu>
for
basic lexicographic information on Wikidata for isiZulu (and similar
languages)
Meta-data:
- Progress is paused due to vacation plans
Experience:
- Fixed more front-end bugs
- Refactored modal dialog
- Finished the initial version of ZObjectDiffer
September 16
A few members of the team had a chance to join the Inclusive Product
Development V2 Kickoff. Rebecca Wambua will be driving this initiative in
our team. Adam, Denny, and James are in Berlin this week for the Product &
Tech Leadership Summit.
Performance:
- Started drafting a document on how to improve validation
- Initial patch sent for creating benchmark suite
- Shared first draft of the semantics proposal
Natural Language Generation:
- Conducted Abstract Representation Discussion
- Drafted post-NLG ideas gathered during the offsite
- Drafted internal document to clarify some aspects of architectures
- NLG Scribunto prototype has all needed basic capabilities
Meta-data:
- Adapted metadata dialog code to work with recent re-factoring patches
Experience:
- Fixed more front-end bugs
- Identified the critical user journeys that should have strong test
coverage
- Reviewed and discussed default component designs
- Fixed CI-flagged issues
- Created ZObjectDiffer tests
September 23: DIFF post about representing abstract content in natural
languages
Members of the Natural Language Generation workstream published this
month's DIFF post
<https://diff.wikimedia.org/2022/09/21/the-state-of-abstract-wikipedia-natural-language-generation/>
about
representing abstract content in natural languages. The first 6-month cycle
of the Google fellowship program is coming to an end. Next week will be the
last week for two fellows. And the remaining members of the first cohort
will finish the fellowship in October (different dates). Fellows are
putting together a detailed handoff plan.
Performance:
- Propagated the no-async validator changes
<https://gerrit.wikimedia.org/r/c/mediawiki/services/function-orchestrator/%2B/824808>
to
orchestrator
- Landed benchmark suite for orchestrator
Natural Language Generation:
- Added sub-template support in the NLG prototype
- Discussed refining the template language specification
Meta-data:
- Finished refinements & testing of validation errors & actual/expected
test values
<https://gerrit.wikimedia.org/r/c/mediawiki/extensions/WikiLambda/%2B/826692>
- Investigated adding backend server id(s) to metadata
- Corrected element key names in ZTypedPair (patch)
Experience:
- Fixed more front-end bugs
- Iterated on default component designs
- Designed proposals for the mode switcher, publish component, and an
"Aliases" input field
September 30: Fix-it Week and welcomed Stef Dunlap to the team
September 26 – 30 was a ‘Fix-it’ week for the Abstract Wikipedia team.
During this week, the team paused the development of new features and
focused on tasks related to technical debt. We welcomed Stef Dunlap, Staff
Software Engineer in Test, to the team. On September 29th, the team had the
Inclusive Product Development Playbook V2 Kickoff. September 30th was the
last day for two
Google.org fellows.