Have you thought about which parts of the exercises will/won’t be translated? A lot of exercises deal with strings (raindrop sounds, allergies, error messages). Will those parts be translated, in which care there would be per language tests?
I think we should not. I don’t really want to handle this at the backend, and it sounds messy at the GitHub level.
I think for the most part strings are strings, rather than words. ie I don’t think it matters that Two-Fer uses an english sentence structure as long as its explained. But this might be a good example of where we want translations to pivot from the original a bit (for extra context)
There are some exercises (e.g. pig-latin) which rely on english rules - maybe we have some sort of flag for these relies-on-english or something. But even for those, I think it’s probably ok.
I am intending to JIT-translate test names though.
I think this is a decent stance to take that’s explainable to people who will eventually and definitely ask this.
Agree — thinking we should maybe [info] block whether or not an exercise assumes ASCII, extended ASCII, Unicode, or a combo. (in addition to explaining mostly English-only concepts like Anagrams, PigLatin, Palindromes, and Pangrams).
It would be a PITA, but code comments inside example codeblocks probably should be translated as well.
I can only speak for Python, but we have some pretty verbose error messages in our tests. They’re mostly for concept exercises, but they are along the lines of:
“Ran function() with ____ parameters. The tests expected _______ as a result, but the function returned ______ instead.”
Too complicated to localize, methinks, but maybe we could do some sort of translated doc on how to read test output?
The Python track also has concept exercises like little sisters essay and little sisters vocab that rely on the rules of English. So we may have to rework them. We can cross that bridge when we come to it. ![]()
We also have special error messages for Hello World and Lasagna about not using print(), etc. Again, we can deal … later. ![]()
I already do mentor some exercises where other languages come into play as the content of strings. Scrabble is one that I often use other languages for, after solving the basic problem, we can explore a few other ideas there and learn just a little but more about the programming language we are using and “programming” in general.