Skip to content
This repository has been archived by the owner on Mar 5, 2020. It is now read-only.

Forge a Globalization Strategy #916

Closed
toolness opened this issue May 15, 2015 · 17 comments
Closed

Forge a Globalization Strategy #916

toolness opened this issue May 15, 2015 · 17 comments

Comments

@toolness
Copy link
Contributor

This issue is intended to document the strategy through which we'll make the Teach site possible to localize, rather than specific tooling to use for localization (#808).

Here I'm using the word "Globalization" in the sense described by Wikipedia:

Whereas localization is the process of adapting one product to a particular locale, globalization designs the product to minimize the extra work required for each localization.

I'm going to go through every part of the current site in an attempt to address its globalization needs.

General

  • Images - Do we want to always present the same photos, e.g. pictures of Maurya and Mikko, to all locales, or will we want to present localized images to some locales?
  • Social Media - We mostly mention Twitter and Facebook on the site, but other countries may have different dominant social media networks. Should those localizations be able to tailor the display of social media information?
  • Email - At some points we tell visiors to email us at [email protected]. Should this email address be used for all locales, or will some have locale-specific support email addresses?

Login

We'll likely want to communicate the currently-selected locale to id.webmaker.org, so that if the user manually set the site to Spanish but their browser indicates an English preference, they don't have to manually tell id.webmaker.org to be in Spanish too.

Sidebar

This should be pretty straightforward to localize, as all content is relatively short blurbs of text that are unlikely to change often.

Tabzilla

I assume that Tabzilla is already localized, because the rest of Mozilla is awesome at localization.

We'll just have to verify this, and then figure out how to communicate the user's currently-selected locale to Tabzilla, so that it shows its content in the same language.

Footer

Pretty straightforward to localize.

For links out to other Mozilla websites, such as our Privacy Policy link, we should be sure to either link out to the non-localized version of the URL (e.g. without the /en-US/ at the beginning of the path), or dynamically set the path locale based on the user's language setting on the Teach site.

I'm also not sure what to do about the Twitter link. As I mentioned above, if a particular social media network is dominant in a particular locale, should this actually be a link to Mozilla Webmaker's presence on that social network, instead of Twitter?

Pages

Teaching Activities and Clubs Curriculum

While the content on these pages is currently static, in the future, much of it probably won't be. We've discussed the likelihood for curriculum metadata to be pulled from a searchable database, rather than hard-coded into the HTML.

If the curriculum metadata here is ideally in a database rather than hard-coded into the site, I recommend migrating it into the database before adding support for localization to the Teach site. Otherwise we'll have to migrate all existing static localizations for the metadata into the DB, which will complicate the migration process.

Furthermore, much of the content we're linking out to--such as the Kraken The Code activity--is localized separately from the rest of the site. For example, while the Teach site itself might be localized in Spanish, the Kraken The Code activity may not be. If it is localized, then the Teach site should link directly to the Spanish version of the activity to provide a seamless transition. If it is not localized, we may want to consider warning users, e.g. by linking to "Kraken El Código (en Inglés)", or perhaps even omitting the link entirely.

Mozilla Clubs

Everything except the actual club listing is pretty straightforward.

How should we go about localizing club listings? Will any clubs be bilingual? If they are, should the club leads be able to provide multiple translations for their club description?

Assuming we can accurately detect what language a club description has been written in--either because the club lead explicitly told us, or because we used a tool like Google Translate to detect it for us--what will our strategy be for displaying the content to users? For instance, should a user in the Spanish locale be shown clubs whose descriptions are in English?

Teach Like Mozilla

Wow, if this page isn't changing anytime soon, this will be ridiculously easy to localize.

Web Literacy

My understanding is that the Web Literacy Map is actually already localized, so we should just pull from that. The main usability challenge here won't be for our end-users, but rather for localizers--if the existing process of localizing the Web Literacy Map is significantly different from the process for localizing the rest of the Teach site, it could frustrate people.

Update: Also just realized from #947 that it's quite possible, particularly in the early stages, for the weblitmap to be available in more languages than the rest of the site. We may need to figure out a UX solution for this.

Maker Party

Video

It seems YouTube is doing some kind of audio analysis to provide its own English captions, and then running those captions through Google Translate, but the results are kind of hilarious:

2015-05-15_11-49-55

We'll probably want to investigate how to actually provide accurate captions, and also decide whether we want our community to provide translations, or use YouTube's default translation capabilities.

Note that this isn't just a localization issue--it's an accessibility concern as well.

Mailing List

Will there be different mailing lists for different locales? If the mailing list is English-only, should we warn non-English users about that?

Clubs Toolkit

This is a lot of content. Does it need to be merely translated, or is it likely that different locales will want to actually maintain separate versions of their content?

For example, are some bullet points not relevant in certain locales? I'm noticing that one bullet point links to NWP Digital Is, which I assume won't be particularly useful for non-English (possibly even non-US) audiences.

Similarly, will some locales want to add additional bullet points specific only to them?

There are some mentions of Twitter here, which I have the same concerns about that I addressed in the "General" section above.

Event Resources

This is big.

  • Event Guides - Similar concerns as curriculum: if an event guide isn't available for a particular language, how do we deal with it?
  • Logos and Assets - Almost all of these have English text on them, and I assume they'll be very hard or impossible for our community to localize. My assumption is that, similar to teaching activities, the localizations of these assets will be a small subset of the localizations for the Teach site as a whole. If that's the case, do we want to "fall back" on the English-language assets for a locale?
  • Event Details - I have the same concerns here that I do with the Clubs Toolkit above.

Phew, I think that's it!

@toolness
Copy link
Contributor Author

I know we're committed to naming milestones after things from the 80's, but if we ever do a milestone where we focus on accessibility, I think it should be called Make Your Party Is Missiles Campaign To Celebrate The Web.

@simonwex
Copy link
Contributor

@toolness, this is really thorough and exactly what we needed. Thanks! Shall we meet and figure out the best way to do this with the long-term goal in mind?

@alicoding
Copy link
Collaborator

I've read an article once about globalization and how to really support or really say that we finally do globalized the application.

There are certain requirements that we need to make sure we are ready to support in order to do that.

  1. Make sure we do localized everything in our applications
  2. Marketing in that language
  3. Support in that language

It's pretty much what you have in your general section there @toolness and I don't know if we are even close to the point where we can do that, but I guess that's mostly not a mandatory thing to do, but always nice to have. It's just how we can maintain and grow if we do support those.

I guess mostly the rest of the questions you brought up here on your OP we just need to make sure we are ready for what I've just mentioned about ready to support them and pretty much we can solve the rest of the issues for mailinglist, image localization, support and dynamic content etc.

The top I think they are our long term goal, but what we might need for short-term goal here is the basic localization support where we can at least let our translators start translating our static content and able to show them off or use the application for different part of the world.

@toolness
Copy link
Contributor Author

Ah cool, @alicoding do you have a link to that article? Would love to read it.

I'd like to meet and discuss this but I want to make sure some folks from the teach team are involved, because I think a lot of the questions I mentioned above can only be answered by them!

@ldecoursy do you think we can set up a meeting to discuss some of the questions I raised at the top of this issue? Who do you think would be best to have at the meeting from the teach team? Or alternatively would you like to just provide feedback asynchronously in this issue?

@ldecoursy
Copy link
Contributor

@toolness I'd recommend @hannahkane @thornet @amirad and I be involved from the teach team. Probably best to try to set something up late next week. If you and @simonwex want/need to have a preliminary conversation before that, that works too :)

@panaggio
Copy link

I'm going to localize part of this material to pt-br and put it online in 4 weeks, because I'll need it in my language to be able to use them with teens. It seems we're not going to have the l10n infra set up in time for that.

Is there any known way that I can do this in such a way that it's easier to import my localizations later? If not, I'll just localize in the easiest way possible for me and when this issue is done, I can write some code to make the import possible.

Just trying to prepare for the predictable future. If it isn't predictable yet, np at all :)

@amirad
Copy link

amirad commented May 29, 2015

Panaggggiooooooooo. What parts of the material or info are you going to localize specifically? Might help answer your quesiton! @panaggio

@panaggio
Copy link

For starters, it'd be at least:

We'll use this material on one workshop inside a bigger "course" (6-week long web module of http://jovemhacker.org). For now, this is the only material from this repo that we're going to use. But this could change. But I believe we would localize session material, and maybe some related stuff.

@amirad
Copy link

amirad commented May 29, 2015

Yes Yes Yes. That's wonderful curriculum to start remixing and will be super helpful to other Portuguese speaking clubbers. Can you fork the pages, translate and then share the new links? I think that's best for importing them later and even linking to them now. Right @ldecoursy @hannahkane

@hannahkane
Copy link

Yes! Those github pages can be forked and, once they exist, we can link to them from https://teach.mozilla.org/activities/web-lit-basics/. We don't yet have a process for translating that page of the site. Perhaps @toolness can advise on the best method for getting that going?

It will be fantastic to have these resources available in pt-br! Thanks, @panaggio!

@toolness
Copy link
Contributor Author

Ah, awesome!!!!! @panaggio, I'd really really like to use your localization needs as a "forcing function" to get my act together here. I am going to noodle on this and get back to you soon.

@panaggio
Copy link

@toolness cool. Let me know if you want to discuss or if you want any help. Maybe I can help in something else besides the localization to pt-br.

@amirad @hannahkane it looks like a really good plan b if I need to translate anything before this is set up. I'll go for it and adapt the localization to plan a if it needs to be that way (it'd be really easy to import my localizations: the same thing done to the original sources could be done to the localized ones). But for now, I'll put some effort on helping @toolness, if he wants me to, of course. And also I'll put a bet that we can sort something out before I can start localizing :)

@toolness
Copy link
Contributor Author

toolness commented Jun 1, 2015

I could use a bit of help from a designer to figure out how best to link out to the externally localized resources (e.g. thimble makes). For instance, here's my extremely amateur mock-up of what the event guides might look like if available in Spanish (since melissa has indeed already localized them):

2015-06-01_7-04-52

We could add similar blurbs in Teaching Activities but mock-ups would be really helpful here. As we discussed in our meeting last week, for the forseeable future we don't need to worry about scaling the number of languages that are displayed, because it's actually quite hard to localize one of these resources and we don't yet expect a ton of them to be localized. But it would be great if we link out to the ones that are.

@toolness
Copy link
Contributor Author

toolness commented Jun 1, 2015

Also, last week Amira, Lainie, Hannah and I met to discuss the topics I outlined in the description of this issue. I still need to formally report-back on our findings, but for now anyone who's interested can take a look at our etherpad notes: https://etherpad.mozilla.org/teach-globalization

@ldecoursy
Copy link
Contributor

In case this is at all helpful or interesting http://twistedsifter.com/2015/06/proportional-pie-chart-of-the-most-spoken-languages/

@hannahkane
Copy link

Putting this in a January 2016 milestone, since we'll be starting this work then.

@hannahkane hannahkane added this to the January 15 milestone Dec 21, 2015
@hannahkane hannahkane removed this from the January 15 milestone Jan 4, 2016
@hannahkane
Copy link

Closing this as out-of-scope for now, though we'll likely reference this later on.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants