SlideShare ist ein Scribd-Unternehmen logo
1 von 28
Downloaden Sie, um offline zu lesen
Some of my best friends are localisers
A developers guide
Dwayne Bailey, Translate
A little about me
✔ Started Translate.org.za - non-profit focused
on South African languages
✔ Translate - focused on assisting language
communities across the globe
What we do and why
●
We assist localisation teams
●
We assist companies
●
We develop tools
●
Essentially our tooling is community needs
expressed by localisers
Why this talk
●
We’ve bumped out head against developers
●
We’ve often had a different focus to
upstream
●
We’ve hit the same problems access
projects
Some history
●
Why can speak to this?
●
Localising South Africa
●
11 languages - think differently
●
Saw PO as useful
●
Built converters not because PO was great,
but because the tools where better
●
Pain * 11
This talks long term goals
●
Been threatening to do this for 11 years
●
Really to distil some of what we’ve know
●
See this as a workshop and we’ll make this
better over time
The Social
Lower the barrier to
participation
●
Technical skills mismatch
●
Web based localisation tools can help
●
Complex processes might help you but likely
don’t add any benefit to the localisers
●
You need some process, but be careful that
you aren’t designing out contributors
●
Nobody has complained
●
Try not to force localisers to be coders
Own team own goals
●
Yes, they’re part of your team and some only
do your software
●
But many are spread across multiple projects
●
They’re doing their language
●
Bad tooling? - they’ll work around it. We did
with oo2po, moz2po and Pootle
●
Bad process? - they’ll learn it, try fix, give up,
just live with it
Best localisers are your
localisers
●
They use your software
●
They care about what you do
●
Snake oil, or millions of localisers.
The Assumptions
Translators use tools
●
Introducing a new file format which matches
your projects needs won’t necessarily match
localisers needs.
●
Imagine being told that you can’t use vim,
you need to use emacs, or visa versa
●
Its kind of what you’re doing.
●
Yip you can do a quick localisation. But you
do lose things
Assumptions of language
●
The way your language works is not the way all
languages work
●
Marketing - be most careful if you are from
California
●
Idioms - it might be crucial to your software, don’t
assume everyone reads scoff or understand your
references to Faulty Towers
●
Tone/chatty/register - you can’t change it, but be
aware of it
Technical
Use a standard format
●
Either an accepted standard PO, XLIFF or
what is expected in your domain
properties, .ts, etc
●
A new file format means people can’t use
their tools
Variables
●
If only there was one variable style? We live with what upstream
language gives us
●
We’d all want to avoid the situation as in OpenOffice.org with 11 different styles
●
What do variables contain?
●
%d vs %s but then you need to be a programmer
●
Comments can help
●
Only variable info - don’t put your program name in a variable
●
Allow reordering - some languages need to reorder your variables.
●
%s %s doesn’t help here
●
%1 %2 does
●
Careful named variables
●
%(file)s -> %(leer)s
Split sentences
●
I am a good sentence.
●
“I am a “, “bad”, “ sentence”
●
Why? “I am a sentence that is “, “good”.
Punctuation and
capitalisation
●
Don’t assume that how your sentences work
works the same in other languages
●
sentence[sp]? in French
●
Name: [ ]
●
Capital N and colon are a convention that might
not work for some languages
●
Title Case is not common in most languages,
don’t force it to be built in
Terminology
●
Rasterisation and Posterisation - does
anyone know that that means
●
Your tool will have terminology
●
Office suite: format, justify, word processor
●
Audio: levels, balance, volume, track
Comments
●
The best people to add comments are localisers
- see if you can help them be able to do that
●
Too many comments are a pain when they
restate the obvious
●
Good comments enhance or explain what might
be confusing
●
All comments need to be parsed by the localiser
Context is everything
●
Don’t take away context
●
Don’t sort a list of strings
Plurals
●
We have them, let’s use them
●
They don’t work like yours
●
CLDR plurals “zero” and “one” don’t mean 0
and 1
i18n
Localisation from the start
●
Adding it later means you’ve baked in
badness
●
RTL from the start, mostly solved by
frameworks
●
Don’t assume layout goes LTR and you’e
almost there
●
Use UTF8, etc and you are almost there
Number and dates
●
While I’m comfortable with 1,000,000.00 I
actually want 1 000 000,00 and so do many
others.
●
6/10 6 November, 10 June? - it just makes
be feel foreign in your software
Names
●
Names don’t work like yours
●
Alaa and el Fattah - is my friends name, but
how exactly does he squeeze that into your
First name, Surname widgets? He hacks it,
but you made him feel foreign
●
Brand names are translated in some
languages.
Conclusion
●
Hopefully you’re not overwhelmed
●
Help me expand and clarify this list
●
Take away:
●
You have some information to help you be
better when you are localising
●
Not make assumptions about language
●
Listen and ask your localisers
●
We want to localise your software!
Baie dankie
Contact me:
Dwayne Bailey <dwayne@translate.org.za>

Weitere ähnliche Inhalte

Was ist angesagt?

Xconf 2014 - Contributing to Open Source
Xconf 2014 - Contributing to Open SourceXconf 2014 - Contributing to Open Source
Xconf 2014 - Contributing to Open SourceParas Narang
 
Writing clean scientific software Murphy cleancoding
Writing clean scientific software Murphy cleancodingWriting clean scientific software Murphy cleancoding
Writing clean scientific software Murphy cleancodingsaber tabatabaee
 
why now is deep learning
why now is deep learningwhy now is deep learning
why now is deep learninglimeryuzaki
 
TAUS MT SHOWCASE, Moses in the Mix. A Technology Agnostic Approach to a Winni...
TAUS MT SHOWCASE, Moses in the Mix. A Technology Agnostic Approach to a Winni...TAUS MT SHOWCASE, Moses in the Mix. A Technology Agnostic Approach to a Winni...
TAUS MT SHOWCASE, Moses in the Mix. A Technology Agnostic Approach to a Winni...TAUS - The Language Data Network
 
Captioning Best Practices for Engagement
Captioning Best Practices for EngagementCaptioning Best Practices for Engagement
Captioning Best Practices for Engagement3Play Media
 
Living documentation mini-workshop
Living documentation mini-workshopLiving documentation mini-workshop
Living documentation mini-workshopMatthias Noback
 
Going Beyond the Listener: Accessible Audio for Podcasting
Going Beyond the Listener: Accessible Audio for PodcastingGoing Beyond the Listener: Accessible Audio for Podcasting
Going Beyond the Listener: Accessible Audio for Podcasting3Play Media
 

Was ist angesagt? (8)

Xconf 2014 - Contributing to Open Source
Xconf 2014 - Contributing to Open SourceXconf 2014 - Contributing to Open Source
Xconf 2014 - Contributing to Open Source
 
Writing clean scientific software Murphy cleancoding
Writing clean scientific software Murphy cleancodingWriting clean scientific software Murphy cleancoding
Writing clean scientific software Murphy cleancoding
 
Go Language presentation
Go Language presentationGo Language presentation
Go Language presentation
 
why now is deep learning
why now is deep learningwhy now is deep learning
why now is deep learning
 
TAUS MT SHOWCASE, Moses in the Mix. A Technology Agnostic Approach to a Winni...
TAUS MT SHOWCASE, Moses in the Mix. A Technology Agnostic Approach to a Winni...TAUS MT SHOWCASE, Moses in the Mix. A Technology Agnostic Approach to a Winni...
TAUS MT SHOWCASE, Moses in the Mix. A Technology Agnostic Approach to a Winni...
 
Captioning Best Practices for Engagement
Captioning Best Practices for EngagementCaptioning Best Practices for Engagement
Captioning Best Practices for Engagement
 
Living documentation mini-workshop
Living documentation mini-workshopLiving documentation mini-workshop
Living documentation mini-workshop
 
Going Beyond the Listener: Accessible Audio for Podcasting
Going Beyond the Listener: Accessible Audio for PodcastingGoing Beyond the Listener: Accessible Audio for Podcasting
Going Beyond the Listener: Accessible Audio for Podcasting
 

Andere mochten auch

Tavola Treatment Room
Tavola Treatment Room Tavola Treatment Room
Tavola Treatment Room Alberto Bella
 
Controlled space closure with a pre adjusted appliance system /certified fixe...
Controlled space closure with a pre adjusted appliance system /certified fixe...Controlled space closure with a pre adjusted appliance system /certified fixe...
Controlled space closure with a pre adjusted appliance system /certified fixe...Indian dental academy
 
Canine retraction /certified fixed orthodontic courses by Indian dental academy
Canine retraction /certified fixed orthodontic courses by Indian dental academy Canine retraction /certified fixed orthodontic courses by Indian dental academy
Canine retraction /certified fixed orthodontic courses by Indian dental academy Indian dental academy
 
Social service congres 3 december 2015
Social service congres 3 december 2015Social service congres 3 december 2015
Social service congres 3 december 2015BAM Bouw en Techniek
 
Implants in orthodontics / fixed orthodontic courses
Implants in orthodontics  / fixed orthodontic coursesImplants in orthodontics  / fixed orthodontic courses
Implants in orthodontics / fixed orthodontic coursesIndian dental academy
 
moodboard double page
moodboard double pagemoodboard double page
moodboard double pagemason1
 
Project Report on Cotton Carry Bags_PPT
Project Report on Cotton Carry Bags_PPTProject Report on Cotton Carry Bags_PPT
Project Report on Cotton Carry Bags_PPTGurpreet Singh
 
The political organisation of the world
The political organisation of the worldThe political organisation of the world
The political organisation of the worldalmusociales
 

Andere mochten auch (12)

Tavola Treatment Room
Tavola Treatment Room Tavola Treatment Room
Tavola Treatment Room
 
Controlled space closure with a pre adjusted appliance system /certified fixe...
Controlled space closure with a pre adjusted appliance system /certified fixe...Controlled space closure with a pre adjusted appliance system /certified fixe...
Controlled space closure with a pre adjusted appliance system /certified fixe...
 
Pythagoras ppt
Pythagoras pptPythagoras ppt
Pythagoras ppt
 
Elodie Barety Co-Fondatrice Bridges Films : "Storytelling" (PARIS 2.0, Sept ...
Elodie Barety  Co-Fondatrice Bridges Films : "Storytelling" (PARIS 2.0, Sept ...Elodie Barety  Co-Fondatrice Bridges Films : "Storytelling" (PARIS 2.0, Sept ...
Elodie Barety Co-Fondatrice Bridges Films : "Storytelling" (PARIS 2.0, Sept ...
 
Canine retraction /certified fixed orthodontic courses by Indian dental academy
Canine retraction /certified fixed orthodontic courses by Indian dental academy Canine retraction /certified fixed orthodontic courses by Indian dental academy
Canine retraction /certified fixed orthodontic courses by Indian dental academy
 
Social service congres 3 december 2015
Social service congres 3 december 2015Social service congres 3 december 2015
Social service congres 3 december 2015
 
Implants in orthodontics / fixed orthodontic courses
Implants in orthodontics  / fixed orthodontic coursesImplants in orthodontics  / fixed orthodontic courses
Implants in orthodontics / fixed orthodontic courses
 
moodboard double page
moodboard double pagemoodboard double page
moodboard double page
 
Project Report on Cotton Carry Bags_PPT
Project Report on Cotton Carry Bags_PPTProject Report on Cotton Carry Bags_PPT
Project Report on Cotton Carry Bags_PPT
 
Bio mechanics of canine retraction
Bio mechanics of canine retraction Bio mechanics of canine retraction
Bio mechanics of canine retraction
 
The political organisation of the world
The political organisation of the worldThe political organisation of the world
The political organisation of the world
 
Rise of narendra modi
Rise of narendra modiRise of narendra modi
Rise of narendra modi
 

Ähnlich wie Some of my best friends are localisers

How to deliver the right software (Specification by example)
How to deliver the right software (Specification by example)How to deliver the right software (Specification by example)
How to deliver the right software (Specification by example)Asier Barrenetxea
 
Lessons learned with Bdd: a tutorial
Lessons learned with Bdd: a tutorialLessons learned with Bdd: a tutorial
Lessons learned with Bdd: a tutorialAlan Richardson
 
Front-End Fun: How to finally work with designers!
Front-End Fun: How to finally work with designers!Front-End Fun: How to finally work with designers!
Front-End Fun: How to finally work with designers!helenalozano6
 
Copywriting for UX
Copywriting for UXCopywriting for UX
Copywriting for UXTalisa Chang
 
Getting into public speaking at conferences
Getting into public speaking at conferencesGetting into public speaking at conferences
Getting into public speaking at conferencesJohn Stevenson
 
Picking the right architecture and sticking to it
Picking the right architecture and sticking to itPicking the right architecture and sticking to it
Picking the right architecture and sticking to itPetter Holmström
 
Prototyping Accessibility - WordCamp Europe 2018
Prototyping Accessibility - WordCamp Europe 2018Prototyping Accessibility - WordCamp Europe 2018
Prototyping Accessibility - WordCamp Europe 2018Adrian Roselli
 
Agile Development: Key to smart software development
Agile Development: Key to smart software developmentAgile Development: Key to smart software development
Agile Development: Key to smart software developmentJerlyn Manohar
 
Behat - Drupal Yorkshire
Behat - Drupal YorkshireBehat - Drupal Yorkshire
Behat - Drupal YorkshireNathan Lisgo
 
How to be an effective Tech Lead
How to be an effective Tech LeadHow to be an effective Tech Lead
How to be an effective Tech LeadHattery
 
A Text To Speech Detection Methodology for Bangla in Android
A Text To Speech Detection Methodology for Bangla in AndroidA Text To Speech Detection Methodology for Bangla in Android
A Text To Speech Detection Methodology for Bangla in AndroidHozaifa Moaj
 
International Websites and Software
International Websites and SoftwareInternational Websites and Software
International Websites and SoftwareMelody Eye
 
Kickstarting career as an Android developer.pdf
Kickstarting career as an Android developer.pdfKickstarting career as an Android developer.pdf
Kickstarting career as an Android developer.pdfShreyaDhurde
 
Roots and Routes: Crowdsourced Manuscript Transcription Workshop
Roots and Routes: Crowdsourced Manuscript Transcription WorkshopRoots and Routes: Crowdsourced Manuscript Transcription Workshop
Roots and Routes: Crowdsourced Manuscript Transcription WorkshopBen Brumfield
 
Using WordPress for Personal Development, WordCamp Milano 2017
Using WordPress for Personal Development, WordCamp Milano 2017Using WordPress for Personal Development, WordCamp Milano 2017
Using WordPress for Personal Development, WordCamp Milano 2017Sergey Biryukov
 
Computer Programming Overview
Computer Programming OverviewComputer Programming Overview
Computer Programming Overviewagorolabs
 
Challenges in Building NLP Applications in Nepali Language
Challenges in Building NLP Applications in Nepali LanguageChallenges in Building NLP Applications in Nepali Language
Challenges in Building NLP Applications in Nepali LanguageChandan Goopta
 
The essentials of the IT industry or What I wish I was taught about at Univer...
The essentials of the IT industry or What I wish I was taught about at Univer...The essentials of the IT industry or What I wish I was taught about at Univer...
The essentials of the IT industry or What I wish I was taught about at Univer...Equal Experts
 
How to make a better world
How to make a better worldHow to make a better world
How to make a better worldZoltan Hoppar
 

Ähnlich wie Some of my best friends are localisers (20)

How to deliver the right software (Specification by example)
How to deliver the right software (Specification by example)How to deliver the right software (Specification by example)
How to deliver the right software (Specification by example)
 
Lessons learned with Bdd: a tutorial
Lessons learned with Bdd: a tutorialLessons learned with Bdd: a tutorial
Lessons learned with Bdd: a tutorial
 
Front-End Fun: How to finally work with designers!
Front-End Fun: How to finally work with designers!Front-End Fun: How to finally work with designers!
Front-End Fun: How to finally work with designers!
 
Copywriting for UX
Copywriting for UXCopywriting for UX
Copywriting for UX
 
Getting into public speaking at conferences
Getting into public speaking at conferencesGetting into public speaking at conferences
Getting into public speaking at conferences
 
Picking the right architecture and sticking to it
Picking the right architecture and sticking to itPicking the right architecture and sticking to it
Picking the right architecture and sticking to it
 
Prototyping Accessibility - WordCamp Europe 2018
Prototyping Accessibility - WordCamp Europe 2018Prototyping Accessibility - WordCamp Europe 2018
Prototyping Accessibility - WordCamp Europe 2018
 
Agile Development: Key to smart software development
Agile Development: Key to smart software developmentAgile Development: Key to smart software development
Agile Development: Key to smart software development
 
Behat - Drupal Yorkshire
Behat - Drupal YorkshireBehat - Drupal Yorkshire
Behat - Drupal Yorkshire
 
Kuet dreamers
Kuet dreamersKuet dreamers
Kuet dreamers
 
How to be an effective Tech Lead
How to be an effective Tech LeadHow to be an effective Tech Lead
How to be an effective Tech Lead
 
A Text To Speech Detection Methodology for Bangla in Android
A Text To Speech Detection Methodology for Bangla in AndroidA Text To Speech Detection Methodology for Bangla in Android
A Text To Speech Detection Methodology for Bangla in Android
 
International Websites and Software
International Websites and SoftwareInternational Websites and Software
International Websites and Software
 
Kickstarting career as an Android developer.pdf
Kickstarting career as an Android developer.pdfKickstarting career as an Android developer.pdf
Kickstarting career as an Android developer.pdf
 
Roots and Routes: Crowdsourced Manuscript Transcription Workshop
Roots and Routes: Crowdsourced Manuscript Transcription WorkshopRoots and Routes: Crowdsourced Manuscript Transcription Workshop
Roots and Routes: Crowdsourced Manuscript Transcription Workshop
 
Using WordPress for Personal Development, WordCamp Milano 2017
Using WordPress for Personal Development, WordCamp Milano 2017Using WordPress for Personal Development, WordCamp Milano 2017
Using WordPress for Personal Development, WordCamp Milano 2017
 
Computer Programming Overview
Computer Programming OverviewComputer Programming Overview
Computer Programming Overview
 
Challenges in Building NLP Applications in Nepali Language
Challenges in Building NLP Applications in Nepali LanguageChallenges in Building NLP Applications in Nepali Language
Challenges in Building NLP Applications in Nepali Language
 
The essentials of the IT industry or What I wish I was taught about at Univer...
The essentials of the IT industry or What I wish I was taught about at Univer...The essentials of the IT industry or What I wish I was taught about at Univer...
The essentials of the IT industry or What I wish I was taught about at Univer...
 
How to make a better world
How to make a better worldHow to make a better world
How to make a better world
 

Kürzlich hochgeladen

GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfLivetecs LLC
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 

Kürzlich hochgeladen (20)

GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdf
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 

Some of my best friends are localisers

  • 1. Some of my best friends are localisers A developers guide Dwayne Bailey, Translate
  • 2. A little about me ✔ Started Translate.org.za - non-profit focused on South African languages ✔ Translate - focused on assisting language communities across the globe
  • 3. What we do and why ● We assist localisation teams ● We assist companies ● We develop tools ● Essentially our tooling is community needs expressed by localisers
  • 4. Why this talk ● We’ve bumped out head against developers ● We’ve often had a different focus to upstream ● We’ve hit the same problems access projects
  • 5. Some history ● Why can speak to this? ● Localising South Africa ● 11 languages - think differently ● Saw PO as useful ● Built converters not because PO was great, but because the tools where better ● Pain * 11
  • 6. This talks long term goals ● Been threatening to do this for 11 years ● Really to distil some of what we’ve know ● See this as a workshop and we’ll make this better over time
  • 8. Lower the barrier to participation ● Technical skills mismatch ● Web based localisation tools can help ● Complex processes might help you but likely don’t add any benefit to the localisers ● You need some process, but be careful that you aren’t designing out contributors ● Nobody has complained ● Try not to force localisers to be coders
  • 9. Own team own goals ● Yes, they’re part of your team and some only do your software ● But many are spread across multiple projects ● They’re doing their language ● Bad tooling? - they’ll work around it. We did with oo2po, moz2po and Pootle ● Bad process? - they’ll learn it, try fix, give up, just live with it
  • 10. Best localisers are your localisers ● They use your software ● They care about what you do ● Snake oil, or millions of localisers.
  • 12. Translators use tools ● Introducing a new file format which matches your projects needs won’t necessarily match localisers needs. ● Imagine being told that you can’t use vim, you need to use emacs, or visa versa ● Its kind of what you’re doing. ● Yip you can do a quick localisation. But you do lose things
  • 13. Assumptions of language ● The way your language works is not the way all languages work ● Marketing - be most careful if you are from California ● Idioms - it might be crucial to your software, don’t assume everyone reads scoff or understand your references to Faulty Towers ● Tone/chatty/register - you can’t change it, but be aware of it
  • 15. Use a standard format ● Either an accepted standard PO, XLIFF or what is expected in your domain properties, .ts, etc ● A new file format means people can’t use their tools
  • 16. Variables ● If only there was one variable style? We live with what upstream language gives us ● We’d all want to avoid the situation as in OpenOffice.org with 11 different styles ● What do variables contain? ● %d vs %s but then you need to be a programmer ● Comments can help ● Only variable info - don’t put your program name in a variable ● Allow reordering - some languages need to reorder your variables. ● %s %s doesn’t help here ● %1 %2 does ● Careful named variables ● %(file)s -> %(leer)s
  • 17. Split sentences ● I am a good sentence. ● “I am a “, “bad”, “ sentence” ● Why? “I am a sentence that is “, “good”.
  • 18. Punctuation and capitalisation ● Don’t assume that how your sentences work works the same in other languages ● sentence[sp]? in French ● Name: [ ] ● Capital N and colon are a convention that might not work for some languages ● Title Case is not common in most languages, don’t force it to be built in
  • 19. Terminology ● Rasterisation and Posterisation - does anyone know that that means ● Your tool will have terminology ● Office suite: format, justify, word processor ● Audio: levels, balance, volume, track
  • 20. Comments ● The best people to add comments are localisers - see if you can help them be able to do that ● Too many comments are a pain when they restate the obvious ● Good comments enhance or explain what might be confusing ● All comments need to be parsed by the localiser
  • 21. Context is everything ● Don’t take away context ● Don’t sort a list of strings
  • 22. Plurals ● We have them, let’s use them ● They don’t work like yours ● CLDR plurals “zero” and “one” don’t mean 0 and 1
  • 23. i18n
  • 24. Localisation from the start ● Adding it later means you’ve baked in badness ● RTL from the start, mostly solved by frameworks ● Don’t assume layout goes LTR and you’e almost there ● Use UTF8, etc and you are almost there
  • 25. Number and dates ● While I’m comfortable with 1,000,000.00 I actually want 1 000 000,00 and so do many others. ● 6/10 6 November, 10 June? - it just makes be feel foreign in your software
  • 26. Names ● Names don’t work like yours ● Alaa and el Fattah - is my friends name, but how exactly does he squeeze that into your First name, Surname widgets? He hacks it, but you made him feel foreign ● Brand names are translated in some languages.
  • 27. Conclusion ● Hopefully you’re not overwhelmed ● Help me expand and clarify this list ● Take away: ● You have some information to help you be better when you are localising ● Not make assumptions about language ● Listen and ask your localisers ● We want to localise your software!
  • 28. Baie dankie Contact me: Dwayne Bailey <dwayne@translate.org.za>