MarketplaceUX / marketplace-community-editorial

The Community Editorial project for Firefox Marketplace Feed.
http://marketplaceux.github.io/marketplace-community-editorial/
2 stars 2 forks source link

Research project: translating and localising app details #16

Closed brampitoyo closed 9 years ago

brampitoyo commented 9 years ago

Note: talk to SUMO’s Roland Tanglao about their localisation system, and to Peiying Mo.

I’m available for a design and feature walkthrough through SUMO’s localisation tools.

pwalm commented 9 years ago

Peiying is on PTO until the 15th, speaking with Roland today. In the meantime, here are some pertinent links: https://wiki.mozilla.org/L10n:Teams https://wiki.mozilla.org/images/9/90/L10N_Marketplace.pdf

pwalm commented 9 years ago

Notes on Translation

Chat with Roland

What we do

What others are doing

Google Translate

Facebook

"We created a feature to allow users to submit proposed translations of the strings we display on our site, and then we implemented a Reddit-like voting system to allow those same users to vote up or down those translations. To aid in creating the most natural flow and context, this feature allows you to enter a special mode where you can view the site with the proposed translations (and the one with the most current votes) displayed in-context. If you're in this mode, you can then refine a translation even further (or just vote on it) if it doesn't quite fit."

Duolingo

User translation is called "Immersion". Used to translate sites like Buzzfeed and CNN, Immersion is a site where community members can translate articles from the language they're learning to their native tongue. This service keeps Duolingo free for users, but their participation is optional. Users can translate, toggle between translations, discuss, and up/down vote changes (which contributes to the users "Translator Tier"). Colour coding is used to define what has been done to the text. https://www.duolingo.com/comment/1276245

What we should do

pwalm commented 9 years ago

localization-flow

brampitoyo commented 9 years ago

Hi Phil,

I’ve came up with a few customer journey maps that represents what I think this service should do based on your 5 criteria:

  1. Avoid voting/ratings and other superfluous tasks
  2. Allow developers to opt-in
  3. Track changes
  4. Offer guidance documentation
  5. Give ability to attribute/credit localisers

While constructing these maps, I ran into some questions that I’ve put outside of the box. Some of these questions are:

On to the maps:

1 . This map represents the base model. There are other models, but this is the simplest one. Contributors start by agreeing to terms and reading the guides, then they start localising right away.

community-translation-1

1a. What happens after the translated string gets displayed is interesting. In this scenario, Mozilla is the one who tracks, vouches and give attribution to contributors. This model lines up with your idea perfectly.

community-translation-2

1b. In this scenario, the developer is the one who vouches. Remember: the translated string is already up. We’re just talking about giving attribution here.

community-translation-3

1c. In this scenario, other users are responsible for vouching.

community-translation-4

My thoughts:

Moving on.

2 . One of the problem spaces I want to explore was whether there should be a place where contributors can easily find apps that can be localised.

You can go to the app details page and clicking the “Translate” button many times. Or, you can simply set a preferred language you’d like to translate to, then go to one place that lists all the app descriptions that have been marked as localisable.

It will require us to build a new tool, though. This idea may require something more than a simple UI modification.

community-translation-5

3 . The second problem I explored was translation approvals.

You can have your translation published instantly, a la Wikipedia. But what if somebody need to approve it first before it goes live?

If somebody needs to approve it, then obviously there can be a state where a translation is disapproved, and this is where you run into all sorts of new problems.

If my translation is disapproved, am I the only one who gets the comment from developer? What if other users are translating at the same time, not knowing that I am about to submit a revised version?

I’m wagering that this idea is pretty complex because it will require a Talk page that sits on the backend of every app details page. Again, I’m borrowing from the Wikipedia publishing model.

At any rate, this map might have a few ideas that we could use in a simpler map.

community-translation-6

brampitoyo commented 9 years ago

TL;DR Your diagram is simple and workable, but we might still like to explore the problem space to see if we’re missing something.

pwalm commented 9 years ago

I think the best option we create is the one of least resistance. I'd even remove the developer approval from my original flow: they'd get a notification saying "Your app details page has been translated into French!", but at this point they'd have already opted into the program so approval isn't necessary. And the users who are making these translations are vouched, so chances of a crappy translation are minimal. After our chat on Monday, I'm thinking the one thing that would be useful to our contributors is the "Most Viewed App Detail" page, just like what we do with the localization dashboard. This way, our contributors can see exactly what is being viewed the most, and what needs to be translated first (even though that list will be the same in most countries). I'm even wary of that, since it means building something.

Other stuff:

mhanratty commented 9 years ago

"Most Viewed App Detail Page" will probably = Most Popular app. So nothing necessarily new to build here, just maybe a link to a potato search (https://github.com/mozilla/fireplace/wiki/QuickSearch-%28PotatoSearch%E2%84%A2%29).

Reading about an app in my language and then downloading it only to find out the app itself hasn't been localized as well would be a bit of a piss off. Should we only enable translations to app detail pages to apps that have been localized in said language? I think this ok. A lot of apps (like games) don't have many strings--people will suffice even if the app is not in their language. This is at least what I heard from the Localization team at Yahoo when we were investigating user generated translation of Flickr and other properties. Would be great though, if a user could request that the app be translated in their language. This could put the bee in a developer's bonnet to get their strings up in Transifex.

pwalm commented 9 years ago

Some Ideas for what "localize this" could look like: img_0005 img_0004 img_0003

brampitoyo commented 9 years ago

I think the best option we create is the one of least resistance. I'd even remove the developer approval from my original flow: they'd get a notification saying "Your app details page has been translated into French!", but at this point they'd have already opted into the program so approval isn't necessary. And the users who are making these translations are vouched, so chances of a crappy translation are minimal.

This is a great idea. I’ve revised your customer journey flow so that it’s now even simpler. No developer approval required.

What I would do is to add a step where developer can consent to having the app description be translated by other people. I would also add a step where contributors agree to terms at the beginning of their sign up process.

So the tweaked customer journey map looks a little something like this:

app-description-localisation

pwalm commented 9 years ago

Light visual flow for the user translation: screen shot 2014-10-06 at 3 33 11 pm

brampitoyo commented 9 years ago

I’ve put the new customer journey map and UI mockup up on the spec page, completing the scope of this bug.