You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Use Giza, which can be found in Pypi, to translate your po files.
First copy the files so you have a parallel directory tree, one for every distinct translator (consider machine translation to be one translator, unless you have multiple systems).
Put your docs in MongoDB
Use po-to-mongo to move the data into MongoDB.
Run this once for every "type" of translation you have. (i.e. Moses, Person1, Person2....), this will make the status and the username correct in each case.
You may need to put some users into your database first. Open up a shell and run the following for any users: db.users.insert({"username": "Moses", "num_reviewed": 0, "num_user_approved": 0, "num_got_approved":0, "trust_level": "basic"})
Alternatively use the admin page to do the same thing. Upload the docs you want. You will need to put them in a .tar.gz file before uplaoding them. You can't just upload a directory of docs.
Run the verifier
Run the verifier web app and have people contribute to it.
Make sure to add new users to the database before they begin translating.
Take the approved data (or all) from the verifier
Copy doc directory tree to back it up.
Use mongo_to_po to copy approved translations into the new doc directory tree.
This will inject the approved translations into all of the untranslated sentences.
Alternatively use the admin page to do the same thing. It will download a new copy of the translations rather than overwriting an old copy as the pharaoh command does.
Work to be Done
Authentication- This is key to it every being production ready. As part of adding authentication make adding users a more seemless process. Currently they have to be manually added into the database to be able to be used. Making it so that users can be created would be good. Also more improtantly adding better handling for users not in the system is a must. This could use JIRA or ideally would be more general so you can plug in different authentication systems.
Upload Docs Fixes- If the documentation ever gets edited (as it always will) currently the system can't handle it well. Having the upload and download scripts handle these better would be great. Uploading shouldn't overwrite sentences that haven't changed and it should remove sentences that don't exist anymore and add in ones that do now in the proper order (requires fixing sentence numbers for everything).
Translations from Scratch- Currently you need a set of docs on top of which you can do translations. It would be good to make it so that you can just start from a blank slate for a new language or for a language already in there. If the language already exists we shouldn't get multiple blank slate sets popping up, rather just one set of blank slate docs and one set of machine translation verifications.
Docs Pages Priorities- The infrustructure exists for prioritizing pages for translations, however there is no method for actually putting in these priorities well. Having a method in the upload script for adding in priorities could fix this. Google Analytics page views could be a good metric.
Edit Approved Translations- If someone makes a mistake but it accidentally gets approved there should be a way for trusted or admin users to unapprove them and allow others or themselves to edit them.
Gamification- Make it more like a game with awards, badges, and points for translating more things. Getting a higher reputation score should get you some improvements similar to how Stack Overflow works.