Timeline for LinguaLibre
|Beginning of the first test period in a small group||27 March 2018|
|Midpoint Report submission||20 April 2018|
|Beginning of the public beta test period||16 May 2018|
|LinguaLibre outreach at Wikimania||20 July 2018|
|Final Report submission||31 July 2018|
last update: 2018-10-14
|Develop a new recording Extension for MediaWiki (RecordWizard)|
|1 - Take back and adapt the existing Lingua Libre's recording studio||4|
|2 - Change the interface to use OOjs-ui||7|
|3 - Turn it into a MediaWiki extension||14|
|4 - Improve the recording studio with alternative recording methods||9|
|5 - I18n||2|
|6 - Develop a guided tour (using the GuidedTour extension) to help newcomers||5|
|Migrate Lingua Libre on a wiki-based architecture|
|7 - Setup of a dedicated MediaWiki and Wikibase instance, with the newly-created recording extension||3|
|8 - Use OAuth for the authentication||5|
|9 - Define the RDF Schema||4|
|10 - Create a dedicated MediaWiki skin||12|
|11 - Develop specific on-wiki JS scripts to facilitate the navigation and the modification of items||18|
|12 - Initialize the wiki with all the necessary basic wikibase properties and items||2|
|13 - Import all our existing sound records in the new database||4|
|Reuse on Wikimedia wikis|
|14 - Setting up OAuth to allow uploading sounds to Commons||10|
|15 - Develop bot-tools to add the uploaded sounds to articles on wikis that asked for (currently the French Wiktionary)||15|
|16 - Contact other communities to extend the reuse of these sounds||4|
|Data exploration and visualization|
|17 - Setup a SPARQL endpoint||10|
|18 - Create turnkey SPARQL queries||7|
|Total project||135 d|
Please prepare a brief project update each month, in a format of your choice, to share progress and learnings with the community along the way. Submit the link below as you complete each update.
The Grant period officially started the 15 January. During the first two weeks, I've mainly setup all the technical and organizational stuffs required to work efficiently:
- A publicly accessible development Mediawiki instance with debugging tools: https://v2.lingualibre.fr;
- A github organization gathering in one place all the Lingua Libre's related repositories (all lines of code I'll write will go there): https://github.com/lingua-libre;
- Technical details are available on weekly reports I keep updated: LinguaLibre:Weekly updates (January are weeks 3 and 4);
In term of communication, I've also introduced a video meeting every two Tuesday with the complete Lingua Libre team (or at least all who are available), to involves them in the development process and important decisions.
In February, the technical work has really started at his full speed. I've first focused on developing two prerequisites for the RecordWizard:
- The creation of an independant MW extension, Upload2Commons, which allow a user to upload a local file to a remote wiki through OAuth, via an API module.
Using this two components, I was then able to start to develop the core of the RecordWizard. I took inspiration from the technical structure of the UploadWizard to build the step manager of the recorder. 3 steps out of 5 are already at an advanced stage of completion, but this is still work in progress.
For more technical details, see weeks 5 to 9 on my weekly reports.
This month, I've finished a first stable release of the RecordWizard. This is fully functional, including speaker profile management, word list generators, the recorder itself, uploading files to Commons and the link with our local wikibase (to create and updates items for the speakers and the record files). Even if all major features are included in this release, there is still work to do on this extension, including design and UX enhancement for example.
A testing period has started with a small number of person to get some feedbacks and to guide the upcoming development on it. Meanwhile, I've started some work on the skin of LinguaLibre, switching from timeless to foreground, which correspond more to our needs, and starting to customize it.
For more technical details, see weeks 10 to 13 on my weekly reports.
In April, I've focus my work on the data exploration and visualization part. I had two goals in minds: made the data easily available for newcomer who had never seen code before, but also let SPARQL experts play around with our data and share their work with anybody.
So, I've set up a SPARQL endpoint (currently available at https://sparql.0x010c.fr/bigdata/#, but it will move shortly) with blazegraph's default GUI on top to let anybody write and run their own queries. Once done, I've written a new small MediaWiki extension (activated on LinguaLibre), QueryViz, allowing any (experimented) contributor to add a SPARQL query to a page on the wiki, which will be replaced by it's result for the visitor.
As usual, more technical details can be found on my weekly reports (see weeks 14 to 17).
This month's schedule was centered around the Wikimedia Hackathon of Barcelona.
During the first half of the months, I've focused on code quality, feature stabilization and documentation. I've also started to setup a production environment for Lingua Libre. This allowed me to deploy the first public version of Lingua Libre on May 16!
During the Hackathon, I had the opportunity to show off the project to many people, including WMF / WMDe staff; we recorded there around 500 words in Catalan, French, Occitan and Fon-gbe languages. I had also interesting talks about the best way to integrate Lingua Libre with the incoming Lexeme on Wikidata and Structured Data on Commons. Last, this was the occasion to get some help from other Wikimedians about specific stuff, especially from Nikerabbit (he added the Record Wizard to translatewiki) and from Trizek (he helped me for the UI/UX-part), thanks to them.
All those interactions and demos I've made brought me many new ideas and ways of improvement. I've extended the Record Wizard for it to be able to support homograph words and way more languages (basically every language having a Wikidata item).
By the way, Lingua Libre has now it's own phabricator project!
More technical details are available on my weekly reports (see weeks 18 to 22).