Upload
renaud-visage
View
2.556
Download
0
Embed Size (px)
DESCRIPTION
Presented at the London Web Summit 2013, it describes how Eventbrite internationalized its platform and successfully launched fully localized sites in 14 countries and 9 languages over the course of 2 years. It gives you a good idea of all the issues you will need to tackle when taking your company global.
Citation preview
Sh!t we're going global,now what?
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Eventbrite & i18n in 2010
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
• US English site only, but used in 150 countries
• no strings marked for translation
• no i18n/l10n framework
• large help center only in English
• no non-English customer support
• all on .com
Fast forward to 2012
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Successfully launched local sites in14 countries and 9 languages
.ca
Dec 201
1
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
here is how we did it and what we learned
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
PDFs
Emails
Front-EndDocumentation
SEOSEM
Help Center
Back-End
Javascript
Graphics
Marketing
Houston, we have a problem!
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
where do I start????
Roadmap to global domination
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
1. Assess your situation2. Get your localised site in shape3. Don't forget about everything
else
Are you unicode ready?
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
What's your domain name strategy?
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Global dot com or local TLDs?
Pick the right database, framework and templating engine
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
I'm ready, now what????
Mark strings
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
from django.utils.translation import ugettext_lazy as _
my_str = _("Welcome to the London Web Summit!")
<script>alert(gettext("Welcome to the London Web Summit!"));
</script>
<html><body><h1>${ _("Welcome to the London Web Summit!") }</h1></body></html>
HTML
JAVASCRIPT
PYTHON
Extract strings
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
pybabel
Mako and Handlebar Templates, Javascript Files, Python Files
strings.pot
#: django/templates/cool_template.html:26msgid "Welcome to Eventbrite! You chose wisely."msgstr ""
Translation strategy
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
low low
lowmed med
high
high
highhigh
Automate the translation workflow
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Graphics are evil!
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Localize your back-end
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Total : 2.000,00Date : 1 mars 2013
_("Total:") <b>${ format_number(2000) }</b>_("Date:") <b>${ format_date('2013-03-01', format='medium') }</b>
if domain == 'eventbrite.fr':request.locale = FRLocale
MIDDLEWARE
HTML
OUTPUT
TADA!
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
cool! i'm done, right?
What about mobile?
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Can you help me?
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Want to get paid?
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
What about taxes?
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
What about marketing?
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
SPAIN sign-ups: SEM only
PORTUGAL sign-ups: No marketing activity
TLD Launch FRANCE sign-ups: Press and SEM
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
you're almost there...
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
long term, you don't need a dedicated international
team
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
...but you do need dedicated local teams
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
all your teams need to adapt to be a truly global
company
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
now, listen to your audience
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
and don't forget to...
Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
...have fun!