Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
僕たちはサービスの多言語化にどう立ち向かうべきか
Search
endam
May 25, 2018
Programming
4
1.3k
僕たちはサービスの多言語化にどう立ち向かうべきか
endam
May 25, 2018
Tweet
Share
More Decks by endam
See All by endam
Web開発における開発環境構築の歴史と変遷〜原始時代から現代(Docker)まで〜
endam
0
200
レガシーなフレームワークで不本意ながらもとことん頑張ってみた
endam
0
440
What is Atomic Design?
endam
0
46
Angular × Atomic Designでデザインリニューアルを行った話
endam
2
600
Postman
endam
0
430
Engineer's Mind
endam
1
120
Be the best development team
endam
0
85
Yarnの導入
endam
0
520
Web APIの現場あるある解決特集〜こうして僕たちのAPIは使いやすくなった〜
endam
0
500
Other Decks in Programming
See All in Programming
Amazon Bedrock Multi Agentsを試してきた
tm2
1
180
DevFest - Serverless 101 with Google Cloud Functions
tunmise
0
140
ErdMap: Thinking about a map for Rails applications
makicamel
1
960
テストコード書いてみませんか?
onopon
2
360
HTML/CSS超絶浅い説明
yuki0329
0
200
SwiftUIで単方向アーキテクチャを導入して得られた成果
takuyaosawa
0
120
Оптимизируем производительность блока Казначейство
lamodatech
0
980
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
3
3.4k
盆栽転じて家具となる / Bonsai and Furnitures
aereal
0
2.1k
ペアーズでの、Langfuseを中心とした評価ドリブンなリリースサイクルのご紹介
fukubaka0825
1
170
振り返れば奴(Cline)がいる
keiyagi
0
110
shadcn/uiを使ってReactでの開発を加速させよう!
lef237
0
370
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.2k
Gamification - CAS2011
davidbonilla
80
5.1k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
590
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
11
900
The Cult of Friendly URLs
andyhume
78
6.2k
Unsuck your backbone
ammeep
669
57k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
6
210
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.5k
Agile that works and the tools we love
rasmusluckow
328
21k
Statistics for Hackers
jakevdp
797
220k
Documentation Writing (for coders)
carmenintech
67
4.6k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Transcript
© ISAO | CONFIDENTIAL ͨͪαʔϏεͷଟݴޠԽʹ Ͳ͏ཱ͔ͪ͏͖͔ ٢ాক೭
٢ాক೭ ͩʙ·͞ w݄ʹגࣜձࣾ*4"0ೖࣾ wνʔϜίϥϘϨʔγϣϯαʔϏε ʮ(PBMPVTʯͷϦʔυΤϯδχΞ wΤϯδχΞ࠾༻ɾڭҭʹܞΘ͍ͬͯΔ !FOEBN
MISSION 9 (PBMPVTͱ νʔϜͰΰʔϧΛୡ͢ΔͨΊ ͷϏδωεSNS 㾎ҙࢥܾఆͷεϐʔυ͕രʹ 㾎ࣾһશһاۀͷϏδϣϯΛਁಁ 㾎ಁ໌ੑͷ͋ΔධՁ͕Ͱ͖Δ 㾎৫ͷนͳΜͯײ͡ͳ͍
㾎ͳΜ͔ͩɺࣄָ͕͘͠ͳΔ
9 ւ֎Ͱఏڙ͍ͯ͠Δ
9 ࠓ͜ͷ(PBMPVTͷଟݴޠԽͷ ΈΛม͑Α͏ͱͨ͠Λ͠·͢
9 ͦͷલʹ
9 ͦͦ༁ͱଟݴޠԽͷ ҧ͍ͬͯԿʁ
͋Δݴޠͷݴ༿ΛଞͷݴޠͰද͢͜ͱɻ ʮ୯ޠʯͰͳ͘ʮҙຯʯΛϕʔεͱ͢Δɻ ʮ୯ޠʯϕʔεͩͱ͍ΘΏΔ༁ʹͳͬͯ͠·͍ػցతͳݴ༿ʹͳΓ͕ͪ จ຺എܠɺͦΕΛݟΔϢʔβʔʹͲͷΑ͏ʹ͍͔͑ͨʹΑͬͯ దͳ༁มΘΔɻ ༁ͱଟݴޠԽͷҧ͍ ༁
ϢʔβʔʹԠͯ͡ෳͷݴޠΛΓସ͑ΒΕΔঢ়ଶɺ·ͨͦͷΈ ༁ϓϩηεͷҰ෦ʹա͗ͳ͍ɻ ༁ͱଟݴޠԽͷҧ͍ ଟݴޠԽ
9 (PBMPVTͷ ࠓ·ͰͷଟݴޠԽͷΈ
ࠓ·ͰͷଟݴޠԽͷΈ $BLF1)1JOΛ༻
ࠓ·ͰͷଟݴޠԽͷΈ ҰͭͷQPϑΝΠϧʹશͯͷ༁Λهࡌ
ࠓ·ͰͷଟݴޠԽͷΈ ௨՟දࣔ$BLF1)1ͷϔϧύʔͰରԠ
ࠓ·ͰͷଟݴޠԽͷΈ ͑ɺ͡Ό͋3FBDUͱ͔+4Ͱ͏༁Ͳ͏ͯ͠Μͷɾɾʁ ͏ΜେৎɺແཧΓରԠͯ͠ΔΑ
ࠓ·ͰͷଟݴޠԽͷΈ ·ͣϢʔβʔͷઃఆͨ͠ݴޠʹԠͯ͡දࣔ͢ΔͨΊͷ@@ ؔΛݺͿ
ࠓ·ͰͷଟݴޠԽͷΈ ͔͜͠͠ͷ@@ ؔͰ͍ͬͯΔ͜ͱQPϑΝΠϧ͔Β༁͞Εͨ จݴΛऔಘ͍ͯ͠ΔͷͰͳ͘ɺ1)1ͰϨϯμϦϯάͨ͠ڊେͳ +4ΦϒδΣΫτ͔ΒΩʔʹରԠ͢ΔΛऔಘ͍ͯ͠Δ ʊਓਓਓਓਓਓਓਓਓਓਓਓʊ ʼɹڊେͳΦϒδΣΫτɹʻ ʉY^Y^Y^Y^Y^Y^Y^Y^Y^Y^Yʉ
ͭ·Γ༁ΛՃ͢Δʹ͜ͷΦϒδΣΫτमਖ਼͢Δඞཁ͕͋Δ
9 ࣮ࡍͷ༁ͷϓϩηε
։ൃऀ͕ը໘දࣔɾϓογϡ௨ɾϝʔϧؚΊͯ༁͕ඞཁͳՕॴΛ ચ͍ग़͢ ચ͍ग़ͨ͠༁ඞཁՕॴΛεϓϨουγʔτʹ·ͱΊͯ༁୲ऀ ΄ͱ ΜͲͷ߹1- ʹ͢˞͜ΕͲ͜ͷ͜ͱΛݴͬͯΔͷͱ͍͏֬ೝগͳ͘ͳ͍ ༁୲ऀ͕༁ͯ͠εϓϨουγʔτʹهೖ ։ൃऀ༁͕ඞཁͳՕॴΛ@@ؔͰғΜͰϚʔΫͨ͠ޙʹ$BLFJO
ίϚϯυΛ࣮ߦͯ͠༁ݩͱͳΔQPUϑΝΠϧΛੜ 1P&EJUͱ͍͏QPϑΝΠϧฤूπʔϧΛͬͯɺ༁ݩͷQPUϑΝΠϧΛ جʹ༁ͨ͠จݴΛهೖ͠ɺQPϑΝΠϧΛߋ৽ ϦϙδτϦʹ1VTI ༁ͷϓϩηε ػೳՃɾվળʹΑΓ৽ͨʹ༁͕ඞཁͱͳΔ߹
9 ҰݴͰݴ͏ͱΊΜͲ͍͘͞
w ։ൃऀ͔͠༁Λߋ৽Ͱ͖ͳ͍ w จݴΛݕࡧͰ͖ͳ͍ w ༁Λߋ৽͍ͯ͠ΔͷͰจݴͷҰ؏ੑ͕ແ͍ ࣅͨΑ͏ͳจݴ͕ ͨ͘͞Μ͋Δ
w ୭͕Ͳ͏͍͏ҙਤͰߋ৽ͨ͠ͷ͔͔Βͳ͍ ༁ͷϓϩηε
9 ͏͜Μͳϓϩηε౿Ήͷݏͩɾɾʂ Ͱػೳ։ൃ͕Ͳ͏ͯ͠༏ઌతʹͳͬͯ͠·͏
9 ͔͋͠͠Δ࣌సػ͕๚Εͨɾɾʂ
9 σβΠϯˍϑϩϯτΤϯυϦχϡʔΞϧ Λ࣮ࢪ͢Δ͜ͱ͕ܾఆʂ
9 ͜ͷػձʹ ଟݴޠԽͷΈม͑Α͏ͥʂ
ϝϦοτ ෳͷϓϥοτϑΥʔϜͰ༻͢Δ༁ͷॏෳ͕ආ͚ΒΕΔ ଟݴޠԽվֵͷऔΓΈ Ҋ%#Ͱ༁σʔλΛҰݩཧ͢Δ σϝϦοτ ΞϓϦέʔγϣϯͷঢ়ଶʹ߹Θͤͨ༁ͷόʔδϣϯཧ͕ग़དྷͳ͍ ༁Λޠमਖ਼͢ΔʹϚΠάϨʔγϣϯ͕ඞཁʹͳΔ ΞϓϦέʔγϣϯͷঢ়ଶʹԠͯ͡
༁όʔδϣϯཧ͞Εͨํ͕ྑ͍
ଟݴޠԽվֵͷऔΓΈ Ҋ$47547ϑΝΠϧͰ༁σʔλΛҰݩཧ͠ɺ(JU)VCϦϙδτ Ϧʹஔ͍ͯόʔδϣϯཧ͢Δɻͦͷ্Ͱ֤ϓϥοτϑΥʔϜʹద ͳܗࣜͷ༁ϑΝΠϧʹมɾ͢Δɻ $47547 .string .xml .json
.po
ଟݴޠԽվֵͷऔΓΈ Ҋ$47547ϑΝΠϧͰ༁σʔλΛҰݩཧ͠ɺ(JU)VCϦϙδτ Ϧʹஔ͍ͯόʔδϣϯཧ͢Δɻͦͷ্Ͱ֤ϓϥοτϑΥʔϜʹద ͳܗࣜͷ༁ϑΝΠϧʹมɾ͢Δɻ ϝϦοτ ΞϓϦέʔγϣϯͷঢ়ଶͱ༁Λඥ͚ͮΒΕΔ σϝϦοτ ݩϑΝΠϧ͔Β֤ϓϥοτϑΥʔϜͰඞཁͳܗࣜͷ༁ϑΝΠϧͷม
Λ࣮͠ͳ͚ΕͳΒͳ͍ͷͰίετ͕͔͔Δ
9 ͪΐͬͱͬͯɻ ͨͪͦͦଟݴޠԽͷҝͷ ։ൃΛ͖ͩ͢Ζ͏͔
ଟݴޠԽվֵͷऔΓΈ ଟݴޠԽͱ͍͏ͷͦΕ͚ͩͰଟେͳίετ͕͔ ͔Δ w ༁Ұཡɾݕࡧ͕ग़དྷΔཧը໘ w ༁Ճɾमਖ਼ɾআ w
༁ཤྺ ୭͕͍ͭͲͷΑ͏ʹ༁Λߋ৽͔ͨ͠ w ༁ϑΝΠϧมɾ w Ҭʹ߹Θͤͨ࣌ɾ௨՟ͷද࣮ࣔ w FUD
9 ଟݴޠԽॏཁͳཁૉͰ͋Δ ͔͠͠։ൃͷຊ࣭Ͱͳ͍ ଟݴޠԽ֎෦αʔϏεʹͤ ։ൃऀΞϓϦέʔγϣϯͷ։ൃʹूத͢Δ
ଟݴޠԽվֵͷऔΓΈ ࠷ऴҊ ֤ϓϥοτϑΥʔϜͰ༻͢Δ༁ϑΝΠϧͦΕͧΕͷ (JU)VCϦϙδτϦʹஔ͍ͯྑ͍ɻ ͔͠͠༁ͷཧ ݕࡧɾՃɾमਖ਼ɾআ ֎෦αʔϏεͰߦ͏ɻ
ͦͷ্Ͱ֎෦αʔϏεͷ༁σʔλͱ(JU)VCϦϙδτϦ ͷ༁ϑΝΠϧΛ࿈ܞ͠ɺόʔδϣϯཧ͢Δɻ
9 Ұମ͓લԿΛݴ͍ͬͯΔΜͩ ʉʔʉʀ
9 ࣮ࡍʹαʔϏεΛհ͠ͳ͕Βઆ໌͠·͢
༁ϚωδϝϯταʔϏεᶃ1ISBTF"QQ Translate Language Files Online in Minutes. https://phraseapp.com/
༁ϚωδϝϯταʔϏεᶃ1ISBTF"QQ (JU)VCϦϙδτϦͷQPϑΝΠϧͱ1ISBTF"QQ ͷϓϩδΣΫτΛඥ͚ {GitHub Personal Access Token} {PhraseApp
Project Id}
༁ϚωδϝϯταʔϏεᶃ1ISBTF"QQ (JU)VC࿈ܞʹΑͬͯಛఆͷϒϥϯν͔Β༁σʔλΛ औΓࠐΉɺ͘͠ٯʹ1VMM3FRVFTUΛ࡞Δࣄ͕Ͱ͖Δ खܰʹ։ൃऀҎ֎Ͱ༁ͷ13Λ࡞Ͱ͖Δ
༁ϚωδϝϯταʔϏεᶄ-PLBMJTF https://lokalise.co/
༁ϚωδϝϯταʔϏεᶄ-PLBMJTF *O$POUFYU&EJUPS ը໘ʹදࣔ͞Ε͍ͯΔจݴ༁Λमਖ਼͢Δ͜ͱ͕Մೳ (PhraseAppಉ༷ͷػೳΛ͍࣋ͬͯΔ) https://docs.lokalise.co/developer-docs/livejs-web-in-context-editor
༁ϚωδϝϯταʔϏεᶄ-PLBMJTF (JU)VCͪΖΜɺ4LFUDI +JSB 4MBDL ༷ʑͳαʔϏεͱ֎෦࿈ܞ͕Մೳ https://lokalise.co/integrations/
·ͱΊ ։ൃऀϢʔβʔʹՁΛಧ͚Δҝͷ։ൃʹઐ೦͠Α͏ɻ ͦΕҎ֎ͷ෦ɺಛʹଟݴޠԽࣗୡͰཧӡ༻ΛͲ ͏ͤͣʹࡁΉ͔Λߟ͑Α͏ɻ
9 5IBOLTGPS-JTUFOJOH ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠