PRD sample from a development meeting
Localization Implementation for Rock
1) tl;dr: What is it?
Expand app's language support to include Polish, Spanish, and Hindi.
Translate UI text and content dynamically without altering user input.
Implement responsive design to handle different grammatical structures.
Ensure user preference for language selection is respected.
Avoid asking for user grammatical gender information initially.
2) Problem Statement
Many Rock users are non-English speakers. They face difficulties navigating an English-only interface, leading to lower engagement and higher drop-off rates. Localization addresses this by providing a more inclusive experience. It will also help Rock expand its user base in non-English speaking regions.
3) Goals
Business Goals
Increase user engagement across various regions.
Improve user retention in non-English speaking markets.
Enhance customer satisfaction by providing a localized experience.
Expand market reach in countries with high non-English speaking populations.
User Goals
Enable users to interact with the app in their native language.
Ensure seamless user experience despite language differences.
Avoid confusion related to grammatical gender and UI text.
Provide an easy-to-navigate and intuitive interface.
4) Non-Goals
We will not translate user-generated content.
We will avoid supporting right-to-left (RTL) languages for now.
We will not ask users for their grammatical gender information.
We will not provide real-time translation for user interactions.
5) Audience
Persona 1: Ankit from India
Age: 25 years
Occupation: Software Developer
Language Preference: Hindi
Needs: Understands English but prefers Hindi for ease of use.
Challenges: Faces difficulty understanding complex English terms.
Persona 2: Marta from Poland
Age: 30 years
Occupation: Marketing Manager
Language Preference: Polish
Needs: Comfortable in English but prefers Polish for a natural experience.
Challenges: Finds English interface less intuitive.
Persona 3: Carlos from Spain
Age: 35 years
Occupation: Sales Executive
Language Preference: Spanish
Needs: Prefers using apps in Spanish for better comprehension.
Challenges: Struggles with English technical terms.
6) User Experience
Language Selection: User selects preferred language from settings.
Localized Interface: Interface updates to the selected language instantly.
Consistent Terminology: UI uses consistent terms across languages.
Grammar Adaptations: UI text respects grammatical rules of each language.
Notification Messages: Alerts and notifications appear in selected language.
Error Messages: Errors are displayed in the user's chosen language.
Help Section: Assistance and FAQs are available in all supported languages.
Onboarding Experience: New users receive a language-specific introductory guide.
User Feedback: Collect feedback in the user's preferred language.
Regular Updates: Updated language packs are pushed with app updates.
7) Narrative
Localization will transform the Rock experience for non-English speakers. By addressing the language barriers, Rock will become a more inclusive platform. This feature will empower users to engage in their native language, leading to improved satisfaction and retention. It also sets the stage for Rock's growth in untapped markets.
8) Success Metrics
Increase in active user count from non-English speaking regions.
Higher user retention rates post-localization roll-out.
Growth in daily engagement metrics.
Positive user feedback regarding localized experience.
Decrease in customer support tickets related to language issues.
9) Technical Considerations
Ensure text strings are properly externalized for easy translation.
Implement dynamic UI adjustments for different grammatical structures.
Conduct extensive testing for language-specific edge cases.
Maintain efficient language file management and version control.
Ensure scalability for adding more languages in future.
10) Milestones & Resources
Milestones
**Milestone 1**: Research and Planning
Identify target languages based on user data
Analyze language-specific grammatical challenges
Collect resources and tools for localization
**Milestone 2**: UI Text Compilation
**Milestone 3**: Translation & Integration
**Milestone 4**: Testing and QA
**Milestone 5**: Roll-out and Feedback
Resources
Translation tools and services
QA testers fluent in target languages
Localization project managers
Development resources for UI integration
11) Ask Bash
How do we prioritize languages for initial roll-out?
Can we develop a scalable translation system for future languages?
What are the best practices for handling grammatical gender?
How do we integrate user feedback into the localization process?
Should we provide language customization features for power users?
Audio Localization Meeting.mp4/2023-10-26
Correct. So the main purpose of this meeting is to talk a bit more about localization. David has spent some time looking into different ways to get localization done for ROC. So he has a proposal that he can walk everybody through. The goal is to get feedback and then figure out how we want to take on this project. From a user feedback perspective, a lot of users are asking for different languages. We still have a decent amount of users in English-speaking languages, but we also have a lot of users from India, from Spanish-speaking countries, from France, etc. So from Poland, for sure. So localization is important. So it's one of the projects that David will take on. First question, what languages are we expecting to add in the first place? Those you mentioned? We still need to take a look at the actual languages and the countries that people are from. In general, I would stay away from right to left languages for now, because that requires, I think, also a lot of UX changes. But other than that, yeah, still DBD. One point I mentioned earlier is not a matter for, for example, Spanish, I'm not sure about Indian. So we are missing data about grammatical gender of our users. And we kind of use it a lot if we switch from English to any language that uses grammatical gender in phrases like Marta has updated something. So we need to request this information from users. Otherwise, it would sound extremely strange. But then, so we would actually ask them for gender, so male, female or? For grammatical gender. I mean, for example, in Slavic languages, Marta has updated something, it depends on the grammatical gender of Marta, which is a male or female. Yeah, but I think that this is a risky thing to do. Yeah, I agree. I think we should... And how would you translate it in Polish? Zaktualizowane przez Martę. Zaktualizowane przez Martę. Okay, then you need to actually... In a passive voice. Yeah, zaktualizowane przez Marta. So you can't... How is it called? So you can't change the... Yeah, I know. Mm-hmm. The declination of the name would be wrong, but... It's easier to just get gender information and change it instead of basically changing the name. Aren't you just translating the static text that are available in the app or website itself and not the dynamic text? Like Marta did something that's not in the UI, right? You're only translating the UI text, right? So... Sorry, I missed the point in half of... Sounds like you were breaking. Okay, so we are only going to translate the actual UI, right? UI text, right? We are not going to translate the user content, right? So... Yes, yes, yes, of course. But depending on the language, sometimes in English something don't have to be gender related. And in Polish, for example, it have the different grammar for different genders. So in Spanish, for example, if you are adding adjective to a noun, adjective has to follow the grammatical gender of a noun. And in Slavic languages, it's even worse. Like a verb in past voice has to follow the grammatical gender of a noun. So you can't translate Marta has updated a label without knowing whether Marta is grammatically male or grammatically female. Oh, okay, okay. Okay, good. Sorry, can I say something? I think that apps in Polish that I have seen would go around this by doing something like writing label updated space, updater Marta, something like that. Because otherwise it wouldn't make sense at all. You would need to make user type declination, for instance, which is in Polish and in Romance language as well. So five cases additionally. No, but we actually we are avoiding this by using the active voice that Marta is nominative case, updated something and not updated by Marta, which would cause this translation issues. So how often we can do it by name? So can we try to understand the gender by name? It's extremely, so it might cause more issues than just asking the user because there are multiple names that are used in both genders. For example, in Slavic languages. And you better ask directly than making some assumptions and then like missing those assumptions. It's always possible to write something like Marta has updated some slash A and go on with this. Just if you want to make it more native, then you should ask for this. Yeah, actually, that one sounds the most reasonable for me. What you just said, Gorilla. So, yeah, if you don't want to ask for grammatical gender anyhow, then we would go this way, just probably. Yeah, so I think it's a bit like I'd rather not ask for like a grammatical gender because it just like complicates like things and it can get messy. So what I would suggest we do here is, Marta, maybe you can look at like a couple of other apps. I think Polish is probably a good language to start with, like Spanish, like that has those issues or like those challenges as well. See how other apps localize this and see if there's anything we can use for inspiration there. OK, so I have another question follow up to that, because I just realized I have I don't have any one single app in Polish. I will, of course, to just test it, but but I'm not doing that. So just to be sure, this localization, it will be not enforced. So I still can have the interface in English, right? Yeah, like it should be like a user preference. OK, I can tell you how this works in CyWord Thunderbird, Thunderbird is email client, it just ignores those things. It's only translated individual words and it doesn't care about grammar. And to be honest, I never noticed it before, like today, that it is so. That would suck big time when it comes, for example, to emails we generate, we put some complex sentences into it. So it has to be translated in whole. Like this stuff. Also, as I mentioned once, Skype localization in Ukrainian uses the same verb for exit and log out. Like you have the same word as to many items for different purposes. Again, it's probably something that should be considered a big anti-pattern in localization. So I believe they did. There is one anti-pattern with asking for gender these days. If you get hired by a company, say what, Google, and you're on board, they ask you for a gender and there is like 30 gender pronouns to choose from. And if we do just male, female, someone may get offended or something and start nagging us. It's really, really touching. I mean, it's grammatical gender. It's not any other concept. So we just should ask whether we should call you «зактуализовала» or «зактуализовал». And that's all. I mean, it's only for specific, like groups of languages, for example, for Polish. So we even shouldn't ask it if your language is not supported this kind of, let's say, infection of words by nouns. So, OK, but we can go on without this. So, yeah, as I suggested, you can just write something as two different endings. And these are what I understand still. One thing to add also. Sorry, please go on. No, I'm done. OK, what's this feature is for? Actually, to answer this question first, in my opinion, it is for, like, some limited number of users who can't really understand English UI because they don't know English even on A1 level. So, basically, does it matter that much to be, like, top-notch Polish in terms of grammar, etc.? It gives us extra stars in the eyes of users that have some bones with their mother tongue. And that's why they consider it... I would say, if you are fluent in English and it doesn't matter to you which interface you're using, you won't matter whether the grammar is correct. But if you never learned basic English, probably you'll be paying attention to whether we are referencing you in the right grammar.