Localization Explained - 360iDev Denver, August 2015

Localization Explained - 360iDev Denver, August 2015

My talk from 360iDev 2015 about localization! Now featuring a few screenshots I couldn't quite find during the initial talk :)

The code is on GitHub as both a playground and a project:
https://github.com/designatednerd/LocalizationExplained

The videos are available here:
Mail Composed Character Input: https://www.youtube.com/watch?v=vsGvDk0Od_E
Hum Broken in Japanese: https://www.youtube.com/watch?v=V5CuuoVF5IY
Hum Fixed in Japanese: https://www.youtube.com/watch?v=RvKP0bXIVhs

C4861b1dfdf3bbb21faec4a1acdf183d?s=128

Ellen Shapiro

August 17, 2015
Tweet

Transcript

  1. Localization, Explained !"#$%&'()*+, 360iDev | Denver, CO | August 2015

    by Ellen Shapiro | @designatednerd vokal.io | justhum.com | designatednerd.com
  2. Internationalization, Explained !"#$%&'()*+, 360iDev | Denver, CO | August 2015

    by Ellen Shapiro | @designatednerd vokal.io | justhum.com | designatednerd.com
  3. 69% of apple's revenue is from outside the U.S

  4. 41% of iOS users are from China and Japan

  5. Languages Names Dates, Times and Time Zones Numbers and Measurements

  6. Languages

  7. Languages are more complicated than you realize

  8. http://www.snopes.com/cokelore/tadpole.asp

  9. How your app knows what language to use

  10. None
  11. How to tell the system what to translate

  12. None
  13. None
  14. None
  15. None
  16. None
  17. None
  18. None
  19. None
  20. None
  21. None
  22. None
  23. None
  24. None
  25. None
  26. None
  27. None
  28. Language Tips!

  29. Localized String Convenience Class/Struct

  30. None
  31. None
  32. Twine

  33. None
  34. Don't forget to localize accessibility strings

  35. Languages You Don't Understand Affect Your UI

  36. Sometimes Things get Much Much Much Much Longer

  37. ! German !

  38. Privacy Policy Datenschutz-Bestimmugen

  39. Privacy Policy Datenschutz-Bestimmugen

  40. Sometimes Things get short

  41. ! Japanese !

  42. No Smoking 

  43. No Smoking 

  44. Pseudolanguages and Officially Supported Languages

  45. None
  46. None
  47. None
  48. Watch out for Composed characters

  49. None
  50. Bah, Hum Bug

  51. None
  52. None
  53. None
  54. None
  55. Sometimes Things Go thgiR ot tfeL

  56. Sometimes Things Go Right to Left

  57. ! Hebrew & Arabic "

  58. NEW iOS 9 Toy: Automatic RTL Support

  59. None
  60. None
  61. Names

  62. Names are more complicated than you realize

  63. Order and Meaning differ across languages

  64. NEW iOS 9 Toy: NSPersonNameComponentsFormatter

  65. NEW in iOS 9: NS Person Name Components Formatter

  66. None
  67. None
  68. Name Components Formatter Pitfalls

  69. Legal name vs. Preferred name

  70. Language vs. Locale

  71. Dates, Times, and Timezones

  72. None
  73. Dates, Times, and Timezones are more complicated than you realize

  74. None
  75. NSDateFormatter

  76. None
  77. NSDateComponents let apple do the math for you

  78. NSTimeZone because nobody likes daylight savings time

  79. NSCalendar Who you callin' Gregorian?

  80. None
  81. Numbers and Measurements

  82. Numbers and Measurements you know these are complicated

  83. None
  84. None
  85. None
  86. None
  87. TEH Codez https://github.com/designatednerd/LocalizationExplained

  88. Tools » Twine: https://www.mobiata.com/blog/2012/02/08/ twine-string-management-ios-mac-os-x » Genstrings across multiple directories:

    http:// stackoverflow.com/questions/2744401/how-to-use- genstrings-across-multiple-directories
  89. Recommended Reading/Viewing: Not Apple » Laura Savino at AltConf: https://realm.io/news/

    altconf-laura-savino-localization-because-n-est- pas-por-todo-el-mundo/ » Tom Scott: The Problem With Time And Timezones: https://www.youtube.com/watch?v=-5wpm-gesOY
  90. Recommended Reading: Apple » Internationalization and Localization Guide: https://developer.apple.com/library/ios/ documentation/MacOSX/Conceptual/BPInternational/

    Introduction/Introduction.html » How iOS Determines the Language For Your App https://developer.apple.com/library/ios/qa/qa1828/ _index.html
  91. Recommended Viewing: Apple WWDC 2015 » 222: New UIKit Support

    for International User Interfaces » 227: What's New In Internationalization WWDC 2014 » 201: Advanced Topics in Internationalization » 412: Localizing With Xcode 6
  92. Photo Credits » Matthew McConaughey in True Detective © HBO,

    used for illustrative purposes only.