corona-warn-app / cwa-wishlist

Central repository to collect community feature requests and improvements. The CWA development ends on May 31, 2023. You still can warn other users until April 30, 2023. More information:
https://coronawarn.app/en/faq/#ramp_down
Apache License 2.0
105 stars 14 forks source link

iOS: Add more translations (e.g. French, Turkish) #418

Closed Jeehut closed 3 years ago

Jeehut commented 4 years ago

Current Implementation

Currently only English and German are supported.

Suggested Enhancement

We should add the most spoken languages for immigrants (Turkish, Arabic) and also languages for our neighbor countries who should use the app when they come to Germany (French, Dutch, Polish).

We should probably add support for a Translation Management System like Lokalise or Transifex (which both are free for open source projects) to make contributions here easier (for example I could ask my wife who's not a developer to provide Turkish translations then). I could set this up myself if you agree.

Expected Benefits

Immigrants will be able to understand the app in their native language. This is especially important because they might not know as much about the latest news as native speakers, so we should help them within the apps at least.

Also the borders in Germany will not be closed and people are entering Germany and those people should be able to use this app as well because they also come in contact with people in Germany.


Internal Tracking Id: EXPOSUREAPP-2041

haosap commented 4 years ago

Hi @Jeehut , Thanks for your suggestion. We have our internal plan to release different versions.

Jeehut commented 4 years ago

What do you mean by "different versions"? Doesn't really sound like it has anything to do with translations ...

haosap commented 4 years ago

What do you mean by "different versions"? Doesn't really sound like it has anything to do with translations ...

I mean we have plan to release some versions with other languages. btw, I don't think i18n is only translation.

dasdom commented 4 years ago

Isn't the concept that people visiting from France just can use their app (or any other app Corona warn app) and everything works automatically? If this is the case I would suggest to concentrate on people living in Germany.

manoloxxl commented 4 years ago

English should be enough as additional language for the first 10 versions.

benekuehn commented 4 years ago

In about 40% of households with at least one person with migration background, German is not their main language. These households are equally important. The main languages spoken in these households are Turkish, Russian, Polish and Arabic. Source: Destatis, 2018

benekuehn commented 4 years ago

And I strongly agree with @Jeehut! I think making the translation open-source as well, like Mozilla does, can speed up the process. We have such a diverse community in Germany and I guess many of them will contribute / review to make the app available in as many languages as possible.

Jeehut commented 4 years ago

@dasdom I don't think inter-app compatibility is a high priority for the first major version of these apps. As each country has a different idea on how this should be tackled, unfortunately that probably won't be possible. At least that's what was clearly stated in the German press & media. So everyone will probably need to install the apps from the countries they visit.

@haosap Sure, I18n isn't only translation, but translation is a good start, if dates and other things look off in the first version, no one will complain, but not being able to understand it is a bad thing.

@manoloxxl @haosap Who decided that? And what do "first 10 versions" even mean, does this mean for the first 2 weeks of beta testing or does it actually mean 10 final releases? And why 10? It all sounds just like someone made a weird decision out of the blue, at least you don't explain the rationale.

So please either be more elaborate of the reasoning behind this or face the truth that people (maybe me if not anyone else) will create a fork and start translating this to other languages without asking for your permission, cause it's a real obstacle you seem not to care about enough.

Just my opinion.

dasdom commented 4 years ago

@Jeehut Wait, then I don't understand it at all. I thought the devices talk to each other and exchange keys. This happens in the background on system level without any app installed. The apps are there to notify the user about potential contact to an infected person. So I don't unterstand what you mean with inter-app compatibility.

benekuehn commented 4 years ago

@dasdom True that, but as a German, I right now do not know which keys from foreigners, I collected, are marked as infected. As only the German app users upload their keys to the German servers

dasdom commented 4 years ago

I see. Thanks for the clarification.

manoloxxl commented 4 years ago

In about 40% of households with at least one person with migration background, German is not their main language. These households are equally important. The main languages spoken in these households are Turkish, Russian, Polish and Arabic. Source: Destatis, 2018

Maybe the people will learn the language for that country they are living in ;) It will not just help for a simple app but also for the hole life.

But: Feel free to support the developers. Maybe they provide the PO / language files true the regular translation platforms and you can provide the translations for them for any language you can translate.

benekuehn commented 4 years ago

But: Feel free to support the developers. Maybe they provide the PO / language files true the regular translation platforms and you can provide the translations for them for any language you can translate.

That's what this issue is about afaik

Jeehut commented 4 years ago

@manoloxxl How dare you say that. I don't want to get personal here, but that's really a bold statement that shows your policital opinion. It's clearly discrimination and if that's really the rationale behind this, I will simply ignore your opinion here and create a fork and translate that.

But I will give others the chance to explain until tonight, I assume @manoloxxl is just a random guy with this opinion. Please, let's keep the discussion non-political though, don't forget the Code of Conduct guys, specifically:

Examples of behavior that contributes to a positive environment for our community include:

  • Demonstrating empathy and kindness toward other people
dasdom commented 4 years ago

@manoloxxl Please read the Code Of Conduct.

manoloxxl commented 4 years ago

@manoloxxl How dare you say that. I don't want to get personal here, but that's really a bold statement that shows your policital opinion. It's clearly discrimination and if that's really the rationale behind this, I will simply ignore your opinion here and create a fork and translate that.

But I will give others the chance to explain until tonight, maybe @manoloxxl is just the only one with this opinion.

Uhhh, thats not a policital opinion but a nice try to from your side to play this stupid political game. But think whatever you want, it's a free country. Also a funny joke from your side as i am not a "100% german" ;) I can help to translate it into spanish. But i don't think it's really important.

mynchau commented 4 years ago

Dear @manoloxxl, as it has been twice referred to the Code of Conduct, I would like to ask all contributors of this issue including yourself to stay focused with further conversations on the initial issue and refrain from statements which could violate our Code of Conduct. Otherwise, we will need to continue on a second level of moderation, which we certainly don't prefer. Thank you. Best regards MC Your Corona Warn-App Open Source Team

manoloxxl commented 4 years ago

Dear @manoloxxl, as it has been twice referred to the Code of Conduct, I would like to ask all contributors of this issue including yourself to stay focused with further conversations on the initial issue and refrain from statements which could violate our Code of Conduct. Otherwise, we will need to continue on a second level of moderation, which we certainly don't prefer. Thank you. Best regards MC Your Corona Warn-App Open Source Team

Your CoC accepts to insinuate other people racism and after that insinuation the victim(!) is warned by the staff. Crazy world.

mynchau commented 4 years ago

Hi @manoloxxl I'm referring to your statement "Maybe the people will learn the language for that country they are living in ;) It will not just help for a simple app but also for the hole life." Furthermore, in my comment above, I have asked all contributors of this issue to stay focused on the issue and conform with the Code of Conduct, not just you. Thank you. Best regards MC Your Corona Warn-App Open Source Team

Jeehut commented 4 years ago

@dasdom I just really want to answer and explain why I think such a "harsh" reaction is the only correct reaction, but we were asked to not continue on that road and just keep the discussion to the original topic.

So instead, I'd like to ask the question: Do you guys have any experience with translations management services like the two mentioned in my original post or others? Which one would you recommend for this project?

benekuehn commented 4 years ago

@Jeehut I worked a lot with Pontoon as its used by mozilla in their projects. Another tool I previously used in a similar German governmental project environment was phrase. Although its neither open source nor free, hence requires the project team to buy licenses and is not suitable for an open source contribution.

Jeehut commented 4 years ago

I think there are four requirements for a translation manager for this project:

  1. Easy to setup (as time is an important factor here)
  2. Has a review process (so no one can provide rubbish)
  3. Free for open source (so no extra costs are added)
  4. Flexible enough to work for iOS, Android & Web technology

I chose Lokalise and Transifex because they fulfill those requirements (at least they appear to, haven't tested them out yet). I also found CrowdIn to fullfill those requirements. Phrase I have experiences with but they don't provide any specific open source plans.

Pontoon seems to fulfill 2. and 3. (not sure about 4.) but not 1. (we need to deploy it ourselves and maintain a server). If we were to go that direction, we would also have Weblate available, their hosted service also seems to provide an open source plan.

benekuehn commented 4 years ago

Both lokalise and transifex look like a suitable option, although I somehow like the feel of lokalise more.

benekuehn commented 4 years ago

@Jeehut you said you want to wait until this evening and than create the fork? Let me know if I can support you with anything when you do so

SebastianWolf-SAP commented 4 years ago

Thanks again for your initiatives on getting the app translated and localized properly for much more languages. We are of course aware of the fact that there are millions of people living/working/travelling/... in Germany who simply want to use the app in their native language for whatever reason. We don't judge about that and I would underline again that political or any other related discussions on the background of this motivations are not appreciated in this forum.

However, please also be aware that all localizations need to be done properly and completely. The application is still under heavy development and if you start already now, you will have to do much more in the long run. Probably, it makes more sense for languages beyond English and German that translations are done once the UI text for the final release are fixed and not before. By then, we probably also have a better process on involving interested native speakers into the localization process.

No matter what, I wouldn't recommend forking the app just for the sake of translations (bugfixes, features etc. is something else) right now. It might not be possible to merge these changes right now for the reasons mentioned above. We are aware of the topic and will come back to you and also the Android colleagues (see https://github.com/corona-warn-app/cwa-app-android/issues/86) once there are news.

Thank you for your understanding!

Mit freundlichen Grüßen/Best regards, SW Corona Warn-App Open Source Team

Jeehut commented 4 years ago

@SebastianWolf-SAP Thank you for that explanation. The only reason I considered forking this to get it translated is because I was expecting this state to be already close to final due to the publicly promised release (at least that's what I heard in media) within this month and some people stated that it's not necessary to hav emore languages. I just care about the official public first version which will be announced big and which will cause the first wave of users installing it. That's when the app should be already translated to several languages, or otherwise acceptance rates will be too low (I pretty sure about this from previous experience).

Your answer sounds more like the current progress isn't close to a releasable state though and things are still quite in flux. In that case of course I agree that it's not the right time for translations yet. I think the translations should be added 1-2 weeks before the planned final release or in case a beta phase is planned alongside the first beta. Also, as long as you're having plans to actually support more languages than just the current two in the first public version, I'm happy to wait for the right time and will not create a fork, which would only make things worse to manage.

Thank you for the more detailed answer and sorry for my impatience!

SebastianWolf-SAP commented 4 years ago

Thanks for your reply! Well, the first release is still targeted for mid-June, so we are talking about 2 weeks from now. However, as you can see in the repos, the dev teams are working almost day and night to make this happen, so time-wise we are close, but content-wise many things may change.

Probably, it's a good idea to reserve some time next week, but no promises yet. We are working on something...

Jeehut commented 4 years ago

Okay, let's wait another week then and discuss then again. Thanks for the update! Keep the good work going! 👍 💪

max-hzi commented 4 years ago

I second @Jeehut's suggestion on Crowdin. We use it for multiple languages in SORMAS (Surveillance, Outbreak Response Management and Analysis System; https://github.com/hzi-braunschweig/SORMAS-Project). So far we've translated from English to German, French, Suomi/ Finnish and Spanish. Currently working on Pashto/ Afghan language and others. We are satisfied with the tool.

SebastianWolf-SAP commented 4 years ago

A small update from our side: Other, officially supported languages beyond English and German will most certainly come much earlier than expected, not for the first version, but straight afterwards.

Once the final list of officially supported languages (you won't be disappointed most certainly ;)) is there, we will publish that list and also ask you all if there are additional ones which you would like to have supported and could translate and choose one or two to kick-start and work on a community translation process.

The point is that we still have quite some things to clarify as many UI texts and especially privacy notice, EULA and related things are legally binding documents, so they need to be 100% correct. But I'm quite confident that we will find a solution...

More updates will follow as soon as we have them. Thanks, colleagues!

Mit freundlichen Grüßen/Best regards, SW Corona Warn-App Open Source Team

Jeehut commented 4 years ago

@SebastianWolf-SAP Thank you for the update!

I'm not really happy though to hear that additional translations won't be available on the first public release, I think that's a missed opportunity for building trust (and trust is an important requirement for this project to be a success). So I at least hope the "straight afterwards" you mentioned is a question of days, not weeks.

It would be a bummer if the translations wouldn't be available within the first 10 days or so where probably most people are going to download and setup the app (and then never open it again unless they're tested positively to see that translations were added later on). Especially given that we offered to alleviate the hard work by helping setup the community translations (I'm still offering to help with that) and even start translating them. In my opinion, even if you planned to pay professional translators to do the translations, I think it could only help the quality and speed of the final translation if we already set the tooling up and provided initial translations that the translator could improve upon.

By the way, I don't think that translating the privacy notice, EULA and other legally binding documents is really relevant to people who just want to understand and use the app. If those are available only in German and English on initial release, I don't think that it's going to be an issue legally, as this app is targeting usage in Germany only. My concern here is not targeting other countries people, it's making the app more accessible and given the time constraints we're in, I think we should think practically and prioritize to translate the UI first. I think of it like a technical hurdle, the app will technically not work for many people because of missing translations of the UI, just like it will not work for many people if you don't provide accessibility labels. That's also why I think even if a language was only translated by 80% and missing some informational parts (like the key RiskLegend_Random_Text), it should be included in the app. I've never seen someone complain "either we should include 100% of the accessibility labels or 0%", so I don't understand why anyone would do that here. (And you could still decide against including a language if the quality or coverage wasn't high enough.) The legal part, in my opinion, is a completely separate, non-technical discussion.

Also, your text sounds very much like you're not planning to make the "officially supported languages" available for improvement on translation management platforms with easy access for non-developers. Because you're only mentioning "additional ones which you would like to have supported" that could be translated and you would setup a community tool for.

I'm sorry if I sound a little negative, it's just that as an app developer I feel responsible for the success or failure of this project and I just want to help make this a success if I can.

SebastianWolf-SAP commented 4 years ago

We all share the same goal, no question about that. On the other side, we can't discuss the issues exclusively on a technical/developer level. Especially in such a project, the legal side is very important.

And perhaps one more thing: Sorry that it sounded as if we only include additional ones in the community process. Of course, we also plan to include the existing ones for improvements.

Mit freundlichen Grüßen/Best regards, SW Corona Warn-App Open Source Team

flegfleg commented 4 years ago

Hi, for health (and privacy!) related issues it is essential to have translations — even if you are quite good in german/english, you need to know exactly what the app does, and in a second language you might not. Many people living in Germany speak German well enough to get around, but will not install an app that is not available in their mother tongue.

Jeehut commented 4 years ago

@flegfleg That's exactly what I also tried to express with my viewing of the translations as a pure technical hurdle (very much like accessibility labels). In this situation, I totally agree that accessibility is to be preferred over legal details. (Again, I don't think it's a problem if the legal documents are just not translated.) In my opinion not providing translations is nothing else but discriminiation, like any other absence of accessibility features.

But that's just how I would have handled this. Since I'm not the person responsible here, of course the people who are need to decide this and they seem to think differently.

SebastianWolf-SAP commented 4 years ago

Dear @Jeehut,

we really appreciate your engagement, but this comment is very close to justify an official warning with respect to our code of conduct. Your statements "People don't matter to them as much as money." or "They are following rules blindly sometimes..." are quite serious accusations and I'd kindly ask you to think about that again...

Our statements earlier (see above) are still valid and we kindly ask you all to treat each other with courtesy.

Mit freundlichen Grüßen/Best regards, SW Corona Warn-App Open Source Team

Jeehut commented 4 years ago

@SebastianWolf-SAP The way I wrote it can be misunderstood and this is probably not the right place to discuss that anyways. It was meant as a general social criticism, not something specific to this project, so I've removed the part that can be understood as personal accusations (which I didn't intend to do in the first place). Sorry for that.

But I stand to the general priority criticism and to the fact that in the end, from the users point of view, people are discriminated if translations in other languages are missing in the first version.

At least that's my opinion and that should be covered by the Code of Conduct:

Examples of behavior that contributes to a positive environment for our community include:

  • Being respectful of differing opinions, viewpoints, and experiences

What I can definitely not do is to watch how some people are prioritized lower than others right in front of my eyes and just stay silent. If you warn or ban me for that, so be it.

imdatceleste commented 4 years ago

@SebastianWolf-SAP I think you guys need to really read articles like this one: Ein Spielzeug für digitale Oberklasse

Localization (the minimum here being translation) in as many languages as possible, preferably all languages spoken in Germany, is just a straightforward issue and is a required service to the society for such an app.

I believe you should take this, if necessary, up to RKI or even German government - if you need resources (people, money), apply for it... the idea of CWA is not a to be a commercial app but rather a social sevice the value of which increases the more people use it. If this requires to support all iOS language then be it so...

sonicalchemy commented 4 years ago

Hi @Jeehut , Thanks for your suggestion. We have our internal plan to release different versions.

So as an update is not good enough If some one is exposed and doesn’t speak German how are they to know? A bit short sited especially in an international city like berlin and in an EU country that is supposed to be a leader. Not good optics or forethought in the development stage there.

SebastianWolf-SAP commented 4 years ago

Dear colleagues,

you can be sure that we read such as articles as the one @imdatsolak. As said, we are working on updates, but we are also tied to a legal framework in Germany that makes certain things mandatory before we can release anything.

Unfortunately, we still don't have a final list of upcoming languages, but you certainly heard the announcement which was made on the release press conference last week. As it turns out, also the management of additional languages is sightly more complicated than originally expected (once again the legal stuff). So there are no additional updates so far.

To show that these additional languages will definitely come in one of the next releases, but can't be implemented directly, we move this issue to the cwa-backlog repository.

The issue will move back to the development repository once the agreement with the contracting parties has been reached that it's due to be implemented shortly.

Mit freundlichen Grüßen/Best regards, SW Corona Warn-App Open Source Team

ghost commented 4 years ago

Hello community,

regarding this topic, we will keep you up to date using the following FAQ entry: https://www.coronawarn.app/en/faq/#available_languages. This thread will be closed soon.

Thanks, LMM Corona Warn-App Open Source Team