Konzultácia o internacionalizácii: Opravte, čo sa pokazilo, naplánujte, čo bude ďalej.
Už viete, že i18n je náročné. Videl som príznaky: RTL rozloženia, ktoré sa zrútia, nemecký text pretekajúci z tlačidiel, API odpovede v nesprávnom jazyku a preklady, ktoré sa rozsynchronizujú pár týždňov po spustení. Nepredávam zázračné riešenia. Pomáham Vám rozpliesť konkrétny chaos, v ktorom sa Váš tím nachádza – a vybudovať systémy, ktoré sa rovnakým spôsobom nepokazí dvakrát.
„Mali sme to naplánovať skôr"
Architektonická daň, ktorú teraz platíte
Spustili ste v angličtine. Fungovalo to. Potom ste pridali francúzštinu „len pre vstupnú stránku." Teraz ste tu, pretože:
Vaša kódová základňa má kontroly lang= roztrúsené po 47 súboroch
Produktoví manažéri sa pýtajú: „Môžeme A/B testovať text?", a technické oddelenie odpovedá: „Nie, bez prepísania to nepôjde."
Máte tri rôzne prekladateľské workflowy a ani jeden z nich nefunguje spoľahlivo
Čo som videl, že zlyhalo:
- Tímy, ktoré strávili viac ako 6 mesiacov dodatočným pridávaním i18n do aplikácie Next.js, pretože reťazce boli napevno zakódované v komponentoch
- Súbory s prekladmi sa prestávajú synchronizovať, pretože vývojári nevedia, ktorý súbor aktualizovať.
- Obdobia „zmrazenia" lokalizácie pred vydaním, pretože nikto neverí prekladovému procesu.
- Odpor k zmene akéhokoľvek preloženého obsahu, pretože proces je taký náročný.
V čom Vám môžem pomôcť:
- Refaktoringové stratégie, ktoré Vám umožňujú inkrementálne zavádzať i18n (Nepožadujem „zastaviť všetko a prepísať")
- Návrh procesu na udržanie prekladov v synchronizácii bez blokovania vývoja.
- Architektonické revízie na identifikáciu miest, kde váš súčasný prístup zlyhá pri viac ako 10 jazykoch.
i18n je architektúra, nie funkcia. Pridať ju neskôr je ako rozhodnúť sa, že Váš dom potrebuje pivnicu, keď ste ho už postavili.
Pomôžem Vám vykopať ten suterén — alebo sa rozhodnúť, či ho skutočne potrebujete.
RTL všetko pokazí.
Vaše UI nebolo navrhnuté pre arabčinu, hebrejčinu alebo urdčinu
Prepli ste dir=„rtl" a sledovali, ako sa Vám rozloženie rozpadlo:
Čo som videl:
- Dizajnové systémy s viac ako 200 komponentmi, kde len 12 správne zvláda RTL
- Tímy, ktoré používajú float: left namiesto logických vlastností a vytvárajú RTL chyby v každej novej funkcii
- Popovery a modály, ktoré vyžadujú RTL prepísania špecifické pre jednotlivé komponenty
- Rámce, ktoré tvrdia, že majú „podporu RTL", no iba obracajú smer rozloženia a narúšajú logiku umiestnenia.
V čom Vám môžem pomôcť:
- Migrácia logických vlastností CSS (margin-inline-start namiesto margin-left)
- Audity dizajnových systémov na odhalenie RTL nášľapných mín ešte pred nasadením
- Usmernenia špecifické pre frameworky (Tailwind, shadcn, MUI) na štýlovanie s prioritou RTL
Manuálne opravovanie RTL chýb v každom komponente je neudržateľné. Robím z podpory RTL systémový proces, nie neustály boj.
„Nemecký text nám pokazil tlačidlo."
Rozhranie, ktoré nebolo navrhnuté na preklad.
Angličtina sedí. Nemčina nesedí. Váš dizajn predpokladal:
Keď ste potom preložili do nemčiny, fínčiny alebo thajčiny, zistili ste:
Tlačidlá s orezaným textom
Tabuľky s horizontálnym posúvaním na každom riadku
Text, ktorý sa zalamuje do nečitateľných blokov
Nelatinský text sa skracuje, pretože kontajnery majú pevnú šírku
V čom Vám môžem pomôcť:
- Flexibilné UI vzory, ktoré sa prispôsobujú dĺžke obsahu
- Plánovanie rozpočtu znakov (s vedomím, že nemčina zväčšuje objem textu o 30 % a thajčina nepoužíva medzery)
- Typografické systémy, ktoré spracovávajú čínske, japonské a kórejské písmo (CJK), arabčinu a dévanágarí bez problémov.
Pomáham Vám vytvoriť rozhranie, ktoré prežije preklad – ešte predtým, než zaplatíte za 10 000 slov, ktoré sa nezmestia.
Nepotrebujete prednášku o tom, prečo je i18n dôležitá. Potrebujete niekoho, kto ladil RTL popovery o 2 ráno, hádal sa s produktovým tímom o rozpočtoch na znaky a navrhol prekladacie pipeline, ktoré skutočne fungujú.
Záludnosti, pred ktorými Vás nikto nevaroval
Príbehy z bojiska od tímov, ktoré tým prešli
Nejde o teóriu. Toto sú veci, ktoré zlyhali v produkcii:
Peklo pluralizácie
Angličtina: „1 položka" vs „2 položky"
Poľština: „1 przedmiot" / "2 przedmioty" / „5 przedmiotów" (3 tvary množného čísla)
Arabčina: 6 tvary množného čísla
Vaša logika count === 1 ? 'položka' : 'položky' už nefunguje.
Chaos s dátumom/časom
Dátumy ste formátovali pomocou toLocaleDateString(). Používatelia v Japonsku potom videli „2025年2月9日" vo Vašich CSV exportoch a Excel zlyhal.
Jazykový nesúlad v API.
Váš frontend požaduje francúzštinu. Vaše API však vráti angličtinu, pretože autentifikačný token neobsahuje informácie o lokalizácii. Výsledkom je používateľské rozhranie so zmiešanými jazykmi a používatelia to považujú za chybu.
Testovanie pseudo-lokalizácie
Netestovali ste s [Ţĥîś îś ţéśţ ţéẋţ ţĥàţ éẋþàñðś 30 %] pred spustením do produkcie. Teraz je Vaša poľská stránka nepoužiteľná.
Neviditeľný predpoklad
Predpokladali ste, že reťazce sú jediné, čo treba preložiť. Potom ste narazili na dátumy, čísla, meny, triedenie, vyhľadávanie – všetko má správanie špecifické pre danú lokalizáciu.
V čom Vám môžem pomôcť:
- Implementácia ICU MessageFormat (spracováva množné čísla, rod a kontext)
- Vzory i18n pre API (vyjednávanie jazykov, záložné stratégie).
- QA procesy, ktoré zachytia tieto problémy skôr, než ich odhalia prekladateľské agentúry.
Pracovný postup je tá náročná časť
Ako udržať 8 jazykov synchronizovaných, keď dodávate denne?
Zvládli ste technológiu. Teraz ste sa zasekli na procese:
Vývojári zlúčia kód s novými anglickými reťazcami. Preklady zaostávajú o 2 týždne. Používatelia vidia čiastočne preložené rozhranie.
Neviete, ktoré reťazce môžete bezpečne vymazať (používajú sa? prekladajú sa? spracováva ich agentúra?)
Produkt chce aktualizovať text. Nikto nevie, či zmena „Submit" na „Send" naruší 12 jazykov.
Prekladové súbory nie sú synchronizované s produkčným systémom celé týždne.
Otázky, ktoré sa ma tímy pýtajú:
Čo som videl, že zlyhalo:
- Prekladové súbory pridané do Gitu, ktoré sa líšia od produkčných reťazcov.
- Varovania typu „Nedotýkajte sa španielskeho súboru", pretože nikto nevie, čo je bezpečné zmeniť
- Funkcie, ktoré boli uvedené v angličtine, a preložené až o 6 mesiacov neskôr (ak vôbec niekedy).
V čom Vám môžem pomôcť:
- Návrh prekladového pipeline (kedy použiť knižnice i18n, kedy TMS, kedy AI)
- Pracovné postupy v Gite na synchronizáciu zdrojových reťazcov a prekladov.
- Automatizácia, ktorá blokuje PR, ak nové reťazce nie sú označené na preklad.
Technologické riešenie je možné. Pracovný postup je však prekážkou. Navrhujem pracovné postupy, ktoré si nevyžadujú nadľudské úsilie na ich udržiavanie.
Tímy, s ktorými som pracoval
Globálne produkty, regionálne odborné znalosti

LINE (Japonsko, Taiwan, Thajsko)
Platforma na zasielanie správ pôsobiaca na 3 primárnych východoázijských trhoch. Pracoval som na výzvach špecifických pre spracovanie znakov CJK, integráciu ekosystému platformy a očakávania používateľskej skúsenosti, ktoré sa líšia naprieč Japonskom, Taiwanom a Thajskom.
KakaoTalk (Južná Kórea)
Dominantná komunikačná platforma v Kórei. Riešili sme požiadavky na produkt špecifické pre kórejský trh vrátane očakávaní formálnosti jazyka v UI a potrieb na integráciu platformy.
Change.org (196 krajín, viac ako 20 prioritných jazykov)
Globálna platforma pre petície, kde je dôležitá rýchlosť aj kvalita obsahu. Pomohol som s usmernením prekladového procesu pre politický/sociálny obsah vytváraný používateľmi na rôznych trhoch.

Airbnb (viac ako 220 krajín, viac ako 60 jazykov)
Globálny trh s komplexnými požiadavkami na i18n. Konzultovali sme výzvy v oblasti dôvery a bezpečnosti vo viacerých jazykoch a kultúrnu adaptáciu konceptov platformy naprieč trhmi.

Intercom (viac ako 30 jazykov, globálny B2B SaaS)
Platforma zákazníckej komunikácie slúžiaca globálnym firemným klientom. Pracoval som na internacionalizácii produktu pre nástroje podpory v reálnom čase a lokalizácii znalostnej bázy.
Lilith Games (Čína, Japonsko, Kórea, USA, EÚ)
Vydavateľ mobilných hier s globálne distribuovanými titulmi. Zaoberal sa výzvami špecifickými pre trh v oblasti lokalizácie obsahu a regionálnych požiadaviek platformy.
Trhy, na ktorých som pôsobil:
Východná Ázia (Japonsko, Kórea, Čína):
CJK typografia, integrácia ekosystému platformy, podpora vertikálneho textu
Juhovýchodná Ázia (Thajsko, Vietnam, Indonézia):
Podpora viacerých písiem, očakávania používateľov pre mobilné zariadenia
MENA (arabsky hovoriace regióny):
Požiadavky na rozloženie RTL, očakávania formálneho vs. hovorového jazyka, kultúrna adaptácia obsahu
Európa:
24 oficiálnych jazykov, uvedenie produktov na trh vo viacerých krajinách
Ameriky:
Regionálne jazykové variácie (španielčina LATAM vs Španielsko, brazílska portugalčina), dvojjazyčné trhy
Videl som, čo funguje a čo zlyháva na týchto trhoch – nie z teórie, ale z dodávania produktov, na ktorých závisia skutoční používatelia.
Opravme, čo sa kazí.
Nepotrebujete prednášku o tom, prečo je i18n dôležitá. Potrebujete niekoho, kto ladil RTL popovery o 2 ráno, hádal sa s produktovým tímom o rozpočtoch na znaky a navrhol prekladacie pipeline, ktoré skutočne fungujú.
Revízia architektúry a stratégie (1 – 2 týždne):
Poviem Vám, čo sa pokazí, keď pridáte Vašich ďalších 3 jazykov a koľko bude stáť oprava
Podpora pri uvedení na trh (4 – 8 týždňov):
Vstupujete na trh v Japonsku/MENA/EU a potrebujete expertov, ktorí to už robili.
Prebiehajúce partnerstvo:
Vložené poradenstvo pri škálovaní z 2 jazykov na 20
Nerobím teóriu. Robím triedenie, plány a dodávky.