Your SlideShare is downloading. ×
The technical side of Internationalization at Eventbrite or "Sh!t we're going global, now what?"
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

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

2,391
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 …

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
7 Likes
Statistics
Notes
No Downloads
Views
Total Views
2,391
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
27
Comments
2
Likes
7
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 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