Sh!t were going global,                        now what?Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @r...
Eventbrite & i18n in 2010    • US English site only, but used in 150 countries    • no strings marked for translation    •...
Fast forward to 2012                            .ca                            Dec                            201         ...
here is how we did it and                   what we learnedRenaud Visage / co-founder & cto / www.eventbrite.com / twitter...
Houston, we have a problem!             Back-End                                                      Graphics            ...
where do I start????Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Roadmap to global domination    1. Assess your situation    2. Getyourlocalised site in shape    3. Dontforget about every...
Are you unicode ready?Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Whats your domain name strategy?                  Global dot com or local TLDs?Renaud Visage / co-founder & cto / www.even...
Pick the right database,       framework and templating engineRenaud Visage / co-founder & cto / www.eventbrite.com / twit...
Im ready, now what????Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Mark strings      HTML      <html>      <body><h1>${ _("Welcome to the London Web Summit!") }</h1></body>      </html>    ...
Extract strings               Mako and Handlebar Templates, Javascript Files, Python Files                                ...
Translation strategy                         high                              high                   low                 ...
Automate the translation workflow                                                   source code                           ...
Graphics are evil!Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Localize your back-end      MIDDLEWARE      if domain == eventbrite.fr:           request.locale = FRLocale      HTML     ...
TADA!Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
cool! im done, right?Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
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?                               TLD Launch                                                    FRANCE s...
youre almost there...Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
long term, you dont need a       dedicated international teamRenaud Visage / co-founder & cto / www.eventbrite.com / twitt...
...but you do need dedicated                 local teamsRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @r...
all your teams need to adapt       to be a truly global companyRenaud Visage / co-founder & cto / www.eventbrite.com / twi...
now, listento your audienceRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
and dont forget to...Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
...have fun!Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
Upcoming SlideShare
Loading in …5
×

The technical side of Internationalization at Eventbrite or "Sh!t we're going global, now what?"

4,582 views

Published on

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.

Published in: Technology
2 Comments
11 Likes
Statistics
Notes
No Downloads
Views
Total views
4,582
On SlideShare
0
From Embeds
0
Number of Embeds
132
Actions
Shares
0
Downloads
39
Comments
2
Likes
11
Embeds 0
No embeds

No notes for slide

The technical side of Internationalization at Eventbrite or "Sh!t we're going global, now what?"

  1. Sh!t were going global, now what?Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  2. Eventbrite & i18n in 2010 • 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 .comRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  3. Fast forward to 2012 .ca Dec 201 1 Successfully launched local sites in 14 countries and 9 languagesRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  4. here is how we did it and what we learnedRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  5. Houston, we have a problem! Back-End Graphics SEM SEO Front-End Documentation Javascript PDFs Help Center Emails MarketingRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  6. where do I start????Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  7. Roadmap to global domination 1. Assess your situation 2. Getyourlocalised site in shape 3. Dontforget about everythingelseRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  8. Are you unicode ready?Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  9. Whats your domain name strategy? Global dot com or local TLDs?Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  10. Pick the right database, framework and templating engineRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  11. Im ready, now what????Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  12. Mark strings HTML <html> <body><h1>${ _("Welcome to the London Web Summit!") }</h1></body> </html> JAVASCRIPT <script> alert(gettext("Welcome to the London Web Summit!")); </script> PYTHON from django.utils.translation import ugettext_lazy as _ my_str = _("Welcome to the London Web Summit!")Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  13. Extract strings Mako and Handlebar Templates, Javascript Files, Python Files pybabel strings.pot #: django/templates/cool_template.html:26 msgid "Welcome to Eventbrite! You chose wisely." msgstr ""Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  14. Translation strategy high high low med med high high low lowRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  15. Automate the translation workflow source code /fr_FR/strings.po strings.pot translation translation database database translatorsRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  16. Graphics are evil!Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  17. Localize your back-end MIDDLEWARE if domain == eventbrite.fr: request.locale = FRLocale HTML _("Total:") <b>${ format_number(2000) }</b> _("Date:") <b>${ format_date(2013-03-01, format=medium) }</b> OUTPUT Total : 2.000,00 Date : 1 mars 2013Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  18. TADA!Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  19. cool! im done, right?Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  20. What about mobile?Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  21. Can you help me?Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  22. Want to get paid?Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  23. What about taxes?Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  24. What about marketing? TLD Launch FRANCE sign-ups: Press and SEM SPAIN sign-ups: SEM only PORTUGAL sign-ups: No marketing activityRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  25. youre almost there...Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  26. long term, you dont need a dedicated international teamRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  27. ...but you do need dedicated local teamsRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  28. all your teams need to adapt to be a truly global companyRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  29. now, listento your audienceRenaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  30. and dont forget to...Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage
  31. ...have fun!Renaud Visage / co-founder & cto / www.eventbrite.com / twitter @renaudvisage

×