Open ehuthmacher opened 1 month ago
@regisb Do you have any ideas/further context regarding this effort?
Pulling in @Ali-Salman29 who might have more information about how the course translation feature was implemented, technically speaking. @ehuthmacher correct me if I'm wrong, but the goal here is to identify techniques that have been used so far to implement multi-language courses, right?
Ali, would you mind giving a high-level overview of how that feature works in the case of Wikimedia?
@regisb Sure,
@ehuthmacher In General, Instructors initiate the process by creating a course in the Open edX studio. They then request a translated version of the course in the desired language by creating a rerun. The system updates backend mappings in the Open edX database to accommodate the translated content. Through scheduled tasks, the content is sent from the database to the Wikimedia Meta Server for translation. The translated content is then fetched from the Wikimedia Meta Server and updated back into the Open edX database. Finally, staff members compare the original and translated content to ensure accuracy and quality and apply these translations to the translated rerun course components.
Behind the scenes, the system extracts content from Open edX modules (Xblocks), transforms content to strings; usually key-value pairs, stores transformed data in the database, sends content to the meta-server (Wikimedia server for translating the strings), and fetches and stores translated data back to the database. Finally, when the course instructor approves translated strings, the structured strings (key-values) pairs get converted to the format required by the xblocks.
You can further explore this feature from here: https://github.com/wikimedia/edx-platform/tree/develop/openedx/features/wikimedia_features/meta_translations
@regisb Yes, that is correct. @Ali-Salman29 Thank you for the additional context. We will look into this in greater detail and get back to you with any questions we may have.
Edly by Arbisoft assisted Wikimedia in this effort. However, it is a fork only: https://github.com/wikimedia/edx-platform. Howevr, they do not use Transifex, but rather their own platform, https://learn.wiki/