Wikimedia Hackathon 2019/Outcomes

Event metrics
We are collecting metrics from the event here:

https://phabricator.wikimedia.org/T223973

Event blogging

 * No people, no software, hackathon story by Jon Robson
 * Wikimedia Hackathon 2019 Prague experiences, summary by Geert Van Pamel
 * Into GSoC and WMF Hackathon 2019, blogpost by Gopa Vasanth
 * My WMF Hackathon 19 experience: 3 Days, 2 Projects and many cool things!, blogpost by Mahuton POSSOUPE
 * Wikimedia Hackathon 2019 (Prague, Czechia), blogpost by Lucie-Aimée Kaffee
 * Wikimedia Czech Republic hosts hackathon to improve Wikimedia’s software, article by Andre Klapper and Sarah Rodlund
 * Wikimedia Hackathon 2019 je za námi, by Martin Urbanec
 * Чеська національна технічна бібліотека, article about NTK on Wikimedia Ukraine by Антон Обожин

Add your own posts or check back for others here: https://phabricator.wikimedia.org/T219198

Completed projects
Projects presented at the showcase and other projects completed but not presented can be seen here:

https://phabricator.wikimedia.org/T216260

{| class="wikitable"
 * colspan="5" | Projects presented at the showcase session at Wikimedia Hackathon 2019 Prague: 
 * No
 * Name
 * Interesting for Developers (D) / Interesting for Editors (E)
 * Link to phabricator
 * Description
 * 1
 * Do Log Msg for Toolforge
 * D
 * https://phabricator.wikimedia.org/T222244
 * With the new “dologmsg” command on Toolforge, tool developers can now post updates to their tool’s server admin log straight from the command line – no need to go on IRC.
 * https://phabricator.wikimedia.org/T222244
 * With the new “dologmsg” command on Toolforge, tool developers can now post updates to their tool’s server admin log straight from the command line – no need to go on IRC.

Video: https://commons.wikimedia.org/wiki/File:Toolforge_dologmsg_QuickCategories_demo.webm
 * 2
 * Tesseract OCR
 * E
 * https://phabricator.wikimedia.org/T223533
 * Tesseract OCR is a new Wikisource gadget that derives text from a scan of a document on Wikisource, using optical character recognition (OCR) technology, in almost 60 languages. https://wikisource.org/wiki/Wikisource:Tesseract_OCR
 * Tesseract OCR is a new Wikisource gadget that derives text from a scan of a document on Wikisource, using optical character recognition (OCR) technology, in almost 60 languages. https://wikisource.org/wiki/Wikisource:Tesseract_OCR

Video: https://bit.ly/2VQ3J96
 * 3
 * Scribe
 * E
 * https://phabricator.wikimedia.org/T223661
 * Scribe will help Wikipedia editors create new articles by automatically recommending broad, high-level outlines and suggesting references from newspapers and web searches.
 * Scribe will help Wikipedia editors create new articles by automatically recommending broad, high-level outlines and suggesting references from newspapers and web searches.

Video: https://www.youtube.com/watch?v=VWeQwhkzvEw
 * 4
 * Secure log out
 * E
 * https://phabricator.wikimedia.org/T222626
 * On wikis, a cross-site request forgery (CSRF) token was not required to log out of the wikis. This was considered a security issue, so CSRF tokens are now required and logouts without CSRF tokens are deprecated.
 * 5
 * WDQS:
 * 5
 * WDQS:

GPS-friendly download of query result & Download of RDF Format
 * Both
 * https://phabricator.wikimedia.org/T216601 & https://phabricator.wikimedia.org/T211177
 * Users will be able to download Wikidata Query Service results in a variety of new file formats: GeoJSON, GPX, and KML for data containing geolocation, and RDF Formats for CONSTRUCT queries.
 * 6
 * Wikigrade
 * E
 * https://phabricator.wikimedia.org/T223735
 * WikiGrade is a tool to make judging article-writing contests more efficient by automatically calculating scores and ranking contributors.
 * WikiGrade is a tool to make judging article-writing contests more efficient by automatically calculating scores and ranking contributors.

Demo: https://tools.wmflabs.org/wikigrade
 * 7
 * Password-less Login
 * E
 * https://phabricator.wikimedia.org/T220418
 * This proof-of-concept tool could allow users to log-in without requiring the user to enter a password by pressing a button on a pre-registered smartphone.
 * This proof-of-concept tool could allow users to log-in without requiring the user to enter a password by pressing a button on a pre-registered smartphone.

Video: https://youtu.be/Hfg0A1H0X8s
 * 8
 * MediaWiki Apps Gallery
 * D
 * https://phabricator.wikimedia.org/T223748
 * This is a new showcase of interactive demo apps that have been built using the MediaWiki Action API.
 * This is a new showcase of interactive demo apps that have been built using the MediaWiki Action API.

Site: https://tools.wmflabs.org/apps-gallery/
 * 9
 * ShEx Tools Documentation for Wikidata
 * E
 * https://phabricator.wikimedia.org/T223622
 * Wikidata recently implemented Shape Expressions (ShEx), a new feature to define schemas within Wikidata. Substantial documentation will be needed for this new feature. We started documenting a potential workflow for developing schemas.
 * Wikidata recently implemented Shape Expressions (ShEx), a new feature to define schemas within Wikidata. Substantial documentation will be needed for this new feature. We started documenting a potential workflow for developing schemas.

Video: https://www.youtube.com/watch?v=AR75KhEoRKg
 * 10
 * Voice Assistant editing for Wikidata
 * E
 * https://phabricator.wikimedia.org/T223510
 * Voice assistants like Alexa, Siri, or Google Assistant are all read-only. What if users could talk back and become first-class participants in our projects? This tool facilitates two-way interaction with Wikidata by accepting qualitative and quantitative feedback. You can say, "hey, that doesn't sound true," and it will post a comment to the talk page on the talk page accordingly. You will be able to save edits directly. (Screenshot of the interaction) https://commons.wikimedia.org/wiki/File:Two-way_voice_interaction_for_wikidata.png
 * 11
 * Wikichat
 * E
 * https://phabricator.wikimedia.org/T223807
 * An experiment to support real-ish time chat in MediaWiki, making full use of MediaWiki’s native infrastructure. This could potentially be used to provide user-to-user support within MediaWiki.
 * 12
 * Languageinfo API module
 * D
 * https://phabricator.wikimedia.org/T220415
 * The MediaWiki Action API gains a new module, action=query&meta=languageinfo, to get information about languages supported by MediaWiki, such as fallback languages, variants, and writing direction.
 * D
 * https://phabricator.wikimedia.org/T220415
 * The MediaWiki Action API gains a new module, action=query&meta=languageinfo, to get information about languages supported by MediaWiki, such as fallback languages, variants, and writing direction.

screenshot: https://phab.wmfusercontent.org/file/data/3o74ucogr7zkxifmqf6l/PHID-FILE-zdvphnedi23e4rnku3qn/Screenshot_from_2019-05-19_11-12-04.png
 * 13
 * Wikidocumentaries
 * E
 * https://phabricator.wikimedia.org/T223532
 * A service for discovering openly licensed media through Wikidata items. In particular, we succeeded at developing Indonesian and Russian translations and adding Creative Commons search. We also filtered out certain sources that were not useful to the project. In the future we plan on supporting Structured Data on Commons and importing files to Commons directly.
 * A service for discovering openly licensed media through Wikidata items. In particular, we succeeded at developing Indonesian and Russian translations and adding Creative Commons search. We also filtered out certain sources that were not useful to the project. In the future we plan on supporting Structured Data on Commons and importing files to Commons directly.

https://wikidocumentaries-demo.wmflabs.org/Q514420?language=id
 * 14
 * Integraality for Wikidata
 * E
 * https://phabricator.wikimedia.org/T220219
 * This tool helps you identify missing Wikidata statements by generating reports of “property coverage” on existing Wikidata items. This could be used to find items that are missing images or geographical coordinates.
 * This tool helps you identify missing Wikidata statements by generating reports of “property coverage” on existing Wikidata items. This could be used to find items that are missing images or geographical coordinates.

Demo: https://tools.wmflabs.org/integraality/
 * 15
 * Echo Push Notifications
 * E
 * https://phabricator.wikimedia.org/T113125
 * This adds in-browser push notifications to MediaWiki for both mobile and desktop users. This adds to existing email and on-wiki notifications.
 * 16
 * From Google Drive to Wikimedia Commons
 * E
 * https://phabricator.wikimedia.org/T223541
 * This tool enables users to upload pictures directly from Google Drive to Wikimedia Commons! Coming soon: https://tools.wmflabs.org/google-drive-photos-to-commons/
 * 17
 * Wikidata Quality Score Display
 * E
 * https://phabricator.wikimedia.org/T223590
 * This is a new gadget that adds information to the top of a Wikipedia article, indicating the quality level of the related Wikidata item as calculated by ORES.
 * 18
 * Common templates in the visual editor
 * E
 * https://phabricator.wikimedia.org/T55590
 * Communities can now define the most common templates on their wiki, giving easier access via the "insert template" menus.
 * Common templates in the visual editor
 * E
 * https://phabricator.wikimedia.org/T55590
 * Communities can now define the most common templates on their wiki, giving easier access via the "insert template" menus.

https://bit.ly/2HBxdOg
 * 19
 * ISBN Scanner
 * E
 * https://phabricator.wikimedia.org/T216775
 * https://bit.ly/2JtHVcJ
 * https://bit.ly/2JtHVcJ

Use your phone’s camera to scan ISBNs to automatically generate references for Wikipedia articles. Uses the visual editor.
 * 20
 * Commons Mobile App refreshed UI
 * E
 * https://phabricator.wikimedia.org/T223159
 * Developed a new home screen and Explore UI for the Commons mobile app. This improved the usability and discoverability of features within the app, and reduced the background color to make the images shine more.
 * Developed a new home screen and Explore UI for the Commons mobile app. This improved the usability and discoverability of features within the app, and reduced the background color to make the images shine more.

Slides: https://bit.ly/2Q7RzCk

Video: https://drive.google.com/file/d/1IQG7n34yRkHek4I4yfRp9mNV4mXsQyNL/view?usp=sharing
 * 21
 * Search page sorting options
 * E
 * https://phabricator.wikimedia.org/T197525
 * This new interface feature in the Advanced Search page helps users sort their search results by date-created, date-last-edited, or by relevance (default).
 * This new interface feature in the Advanced Search page helps users sort their search results by date-created, date-last-edited, or by relevance (default).

Image: https://upload.wikimedia.org/wikipedia/commons/7/77/Advanced_Search_-_sorting_option.png
 * 22
 * THICC
 * E
 * https://phabricator.wikimedia.org/T220765
 * Experimental work on a content-model structured-voting system and structured-discussion system. It attempts to solve the issues with threading of comments and replies.
 * 23
 * Namescript Improvements
 * E
 * https://phabricator.wikimedia.org/T223806
 * Namescript is a Wikidata user-script that assists with cleaning up items for names, such as given names or family names. It now has a documentation page. Additionally, the descriptions for Kanji names were improved.
 * https://phabricator.wikimedia.org/T223806
 * Namescript is a Wikidata user-script that assists with cleaning up items for names, such as given names or family names. It now has a documentation page. Additionally, the descriptions for Kanji names were improved.

Docs: https://www.wikidata.org/wiki/Wikidata:Namescript
 * 24
 * Score Extension refactoring
 * E
 * https://phabricator.wikimedia.org/T135597
 * https://phabricator.wikimedia.org/T135597
 * https://phabricator.wikimedia.org/T135597

Now when you upload .midi files, it transcodes automatically on Commons and Wikipedia pages, so you don't need to download the file and run it through a synthesizer in order to hear it.
 * 25
 * Newcomer Homepage improvements
 * E
 * https://phabricator.wikimedia.org/T220145 and https://phabricator.wikimedia.org/T220146
 * A new feature for the Newcomer Homepage extension which will allow mentors to customize their short description. We also created a GuidedTour (walkthrough tutorial) to help users understand how to follow-up on their questions with notifications.
 * A new feature for the Newcomer Homepage extension which will allow mentors to customize their short description. We also created a GuidedTour (walkthrough tutorial) to help users understand how to follow-up on their questions with notifications.

Slides: https://docs.google.com/presentation/d/1F6Z0-2iKM_6flUVfqS2kL7c70aj6p6pJiy_fqLILob8/edit?usp=sharing
 * 26
 * Cite Unseen
 * E
 * https://phabricator.wikimedia.org/project/profile/4050/
 * Cite Unseen is a user script to help identify and flag sources based on origin or ideological bias. There are different classifications for sources, including biased, government controlled, press release, newspaper, book, opinion piece, etc.
 * Cite Unseen is a user script to help identify and flag sources based on origin or ideological bias. There are different classifications for sources, including biased, government controlled, press release, newspaper, book, opinion piece, etc.

Docs: https://meta.wikimedia.org/wiki/Cite_Unseen
 * 27
 * Using a bot to import structured data to Commons
 * Both
 * https://phabricator.wikimedia.org/T223746
 * Structured data on Commons has been introduced, but we don't have any bots yet that can migrate data. We built some proof of concepts, and tested it by importing the existing multilingual captions for Picture Of The Day, giving us 5,000 nice multilingual captions without any extra work.
 * 28
 * Technical Conference 2019
 * D
 * https://phabricator.wikimedia.org/T220212
 * Announcement of this year's Technical Conference, Nov 12 - 15 in Atlanta, Georgia, USA.
 * https://phabricator.wikimedia.org/T220212
 * Announcement of this year's Technical Conference, Nov 12 - 15 in Atlanta, Georgia, USA.

Site: https://www.mediawiki.org/wiki/Wikimedia_Technical_Conference/2019
 * 29
 * Advanced Tutorial for OOUI
 * D
 * https://phabricator.wikimedia.org/T223810
 * We wrote a tutorial on how to create a larger-scale application with the OOUI front-end development library that follows the Model-View-Controller pattern to make it more maintainable. In a series of refactoring steps we show how the "Todo List" application we created in the basic tutorials goes from a collection of Widgets to a full-fledged application with proper separation of concerns.
 * 30
 * Wikidata Query Service in Blocky
 * E
 * https://phabricator.wikimedia.org/T223811
 * A new drag-and-drop interface for building Wikidata queries. No SPARQL queries required!
 * https://phabricator.wikimedia.org/T223811
 * A new drag-and-drop interface for building Wikidata queries. No SPARQL queries required!

Demo: https://tools.wmflabs.org/blockyquery/
 * 31
 * Topic-works matrix
 * E
 * https://phabricator.wikimedia.org/T223809
 * Added a new visualization experiment for Scholia, to have a query for applications of research and implied topics, placed in an air plot.
 * Added a new visualization experiment for Scholia, to have a query for applications of research and implied topics, placed in an air plot.

Demo: https://tools.wmflabs.org/scholia/author/Q18618629#Topics-works%20matrix
 * colspan="5" |
 * colspan="5" |

Additional projects pulled out of the Non-Presented projects list (bottom half of https://phabricator.wikimedia.org/T216260 ):

 * 1
 * Flickr Dashboard
 * E
 * https://phabricator.wikimedia.org/tag/flickrdash
 * Edit photos on Commons and Flickr at the same time.
 * Edit photos on Commons and Flickr at the same time.

https://tools.wmflabs.org/flickrdash/
 * 2
 * Wiki Loves iNat
 * E
 * You can now upload much needed photos from iNaturalist to commons
 * You can now upload much needed photos from iNaturalist to commons
 * You can now upload much needed photos from iNaturalist to commons

Demo/URL: https://wikilovesinat.netlify.com
 * 3
 * VideoCutTool
 * E
 * https://phabricator.wikimedia.org/T217503
 * This tool can be used to trim (crop) videos in Wikimedia Commons and uploads the results back to Commons.
 * This tool can be used to trim (crop) videos in Wikimedia Commons and uploads the results back to Commons.

Tool: https://tools.wmflabs.org/video-cut-tool/
 * 4
 * Mortar
 * E
 * https://phabricator.wikimedia.org/T223608
 * Created and documented a unified, user-friendly workflow for GLAM uploads on both Wikidata and Commons. We created a workflow using Pattypan and OpenRefine, defined the missing steps needed, and started the documentation.
 * Created and documented a unified, user-friendly workflow for GLAM uploads on both Wikidata and Commons. We created a workflow using Pattypan and OpenRefine, defined the missing steps needed, and started the documentation.

https://mortar-app.herokuapp.com/ - https://mensuel.framapad.org/p/mortardocfr
 * 5
 * Wiki Education Dashboard
 * E
 * After meeting with Czech Wikipedians who use Programs & Events Dashboard for classroom projects, we identified 14 bugs and feature requests, then we tackled many of the highest priority ones:
 * After meeting with Czech Wikipedians who use Programs & Events Dashboard for classroom projects, we identified 14 bugs and feature requests, then we tackled many of the highest priority ones:
 * After meeting with Czech Wikipedians who use Programs & Events Dashboard for classroom projects, we identified 14 bugs and feature requests, then we tackled many of the highest priority ones:

* The 'Article Finder' tools for searching for high impact underdeveloped articles now has a language picker: https://outreachdashboard.wmflabs.org/article_finder.

* Campaign organizers can now make edits to any programs in their campaign.

* We added an API that can be used by a mediawiki gadget to display information about courses from Special:Contributions (gadget in progress).

* We made it easier to copy previous programs for a new academic term.

* We made a number of UI improvements and bug fixes.

* We made the features for downloading detailed campaign metrics more discoverable.

* We upgraded several key dependencies, and improved build speed.

* Wikidata labels show up in more places.

All of these improvements are live now on https://outreachdashboard.wmflabs.org
 * 6
 * Audio subtitles for video.js
 * E
 * https://phabricator.wikimedia.org/T121387
 * For our next generation video player based on video.js, I created a plugin to show subtitles/captions to users for audio clips
 * 7
 * Global Search Tool Released cloudelastic
 * E
 * https://phabricator.wikimedia.org/T223519
 * Provides keyword and source regex queries against all wmf wikis in a single search request. Powered by cloudelastic.
 * https://phabricator.wikimedia.org/T223519
 * Provides keyword and source regex queries against all wmf wikis in a single search request. Powered by cloudelastic.

https://tools.wmflabs.org/global-search

like mysql replicas in wmf cloud, except elasticsearch.

https://wikitech.wikimedia.org/wiki/CloudElastic
 * 8
 * Scrape all the pictures of the digital image repository of the National Archive of Curaçao with the Copyright status 'negative'
 * E
 * https://phabricator.wikimedia.org/T223050
 * Attempt to scrape the image URLs and metadata out of the National Archive of Curaçao's imagebank for images that have a copyright status of "Negatief". So far the metadata of all 1103 images with this status has been cleaned; the URLS are still underway. Once the CSV file is ready, Yupik will send it to Ecritures, who will batch upload the images to Commons.
 * 9
 * Fix longstanding Bug in Wikidata-Lua-Module in German Wikipedia
 * E
 * When using data from Wikidata in German Wikipedia duplicated sources were shown multiple times, they now get reused.
 * 10
 * Add copy button to URL shortener result
 * E
 * After shortening, you need to select and copy the link from Special:UrlShortener. It would be amazing if we had a button and when you clicked it, boom, magically it stores it in the clipboard. https://meta.wikimedia.org/wiki/Special:UrlShortener
 * 11
 * Normalize homoglyphs in mixed-script tokens
 * E
 * https://phabricator.wikimedia.org/T222669
 * Oзон and Озон look the same, but the first one starts with a Latin O rather than a Cyrillic О. Searching for either will not find the other. Working on an Elasticsearch plugin to attempt to map homoglyphs in mixed-script tokens and index any single-script variants that can be generated.
 * 12
 * Wikidata Stream
 * E
 * A nice view of the Wikidata edit stream to use as an eye-catcher for people interested in Wikidata
 * https://phabricator.wikimedia.org/T222669
 * Oзон and Озон look the same, but the first one starts with a Latin O rather than a Cyrillic О. Searching for either will not find the other. Working on an Elasticsearch plugin to attempt to map homoglyphs in mixed-script tokens and index any single-script variants that can be generated.
 * 12
 * Wikidata Stream
 * E
 * A nice view of the Wikidata edit stream to use as an eye-catcher for people interested in Wikidata
 * A nice view of the Wikidata edit stream to use as an eye-catcher for people interested in Wikidata
 * A nice view of the Wikidata edit stream to use as an eye-catcher for people interested in Wikidata

https://tobias47n9e.gitlab.io/wikidata-stream/
 * 13
 * Wikidata autocomplete gadget for external-id properties
 * E
 * Created a gadget that provides autocomplete for selected external-id properties (like VIAF) by querying external search APIs.
 * 14
 * Host Primerpedia on Toolforge and add multilanguage support
 * E
 * Migrated the tool to Toolforge, complete with auto-update and everything! Now also works in multiple languages.
 * Host Primerpedia on Toolforge and add multilanguage support
 * E
 * Migrated the tool to Toolforge, complete with auto-update and everything! Now also works in multiple languages.
 * Migrated the tool to Toolforge, complete with auto-update and everything! Now also works in multiple languages.

https://tools.wmflabs.org/primerpedia
 * 15
 * Collect information on SPARQL query builders
 * E
 * https://phabricator.wikimedia.org/T192967#5194136
 * All the currently working SPARQL query builders are now listed in a single place: https://www.wikidata.org/wiki/Wikidata:Tools/Query_data#SPARQL_query_builders
 * 16
 * Conduct usability experiments of SPARQL query builders
 * D
 * The various existing tools for visual building of SPARQL queries incorporate different design decisions, with different usability consequences. User testing these tools helped identify areas to improve in these or future tools.
 * 17
 * Research and document how to set up auto-updating of Toolforge tools from a GitHub repository.
 * D
 * https://wikitech.wikimedia.org/wiki/Help:Toolforge/Auto-update_a_tool_from_GitHub
 * 18
 * Improve Toolforge documentation at wikitech.org
 * D
 * Updates were made to various help pages, including Portal:Toolforge, Help:Toolforge, Help:Getting Started, Help:Toolforge/Web, and others.
 * 19
 * Improve documentation for WMDE's Wikibase Docker images repository
 * D
 * The README for https://github.com/wmde/wikibase-docker was a bit sparse and confusing for a beginner, which hinders its usage. It was improved so that newcomers can easily understand and follow it, with more in progress.
 * }
 * Updates were made to various help pages, including Portal:Toolforge, Help:Toolforge, Help:Getting Started, Help:Toolforge/Web, and others.
 * 19
 * Improve documentation for WMDE's Wikibase Docker images repository
 * D
 * The README for https://github.com/wmde/wikibase-docker was a bit sparse and confusing for a beginner, which hinders its usage. It was improved so that newcomers can easily understand and follow it, with more in progress.
 * }
 * The README for https://github.com/wmde/wikibase-docker was a bit sparse and confusing for a beginner, which hinders its usage. It was improved so that newcomers can easily understand and follow it, with more in progress.
 * }
 * }