Skip to main content
LINE / Airbnb / Change.org / KakaoTalk

Konsultacija o internacionalizaciji: Popravite ono što se kvari, planirajte šta je sledeće

Već znate da je i18n težak. Video sam simptome: RTL rasporedi koji se urušavaju, nemački tekst koji preliva dugmad, API odgovori na pogrešnom jeziku i prevodi koji se desinhronizuju u roku od nekoliko nedelja od lansiranja. Ne prodajem univerzalna rešenja. Pomažem vam da raspetljate specifičan nered u kojem se vaš tim nalazi i izgradite sisteme koji se neće pokvariti na isti način dva puta.

„Trebalo je da planiramo ovo ranije"

Arhitektonski trošak koji sada plaćate

Lansirali ste na engleskom. Uspelo je. Onda ste dodali francuski „samo za početnu stranicu". Sada ste ovde jer:

Vaša baza koda ima lang= provere rasute po 47 datoteka

Menadžeri proizvoda pitaju 'možemo li A/B testirati tekst?' a inženjering kaže 'ne bez prepisivanja'

Imate tri različita toka rada prevoda i nijedan od njih ne radi pouzdano

Ono što sam video da se kvari:

  • Timovi koji provode 6+ meseci na naknadnom uvođenju i18n u Next.js aplikaciju jer su stringovi bili hardkodirani u komponentama.
  • Datoteke prevoda gube sinhronizaciju jer programeri ne znaju koju datoteku da ažuriraju
  • Periodi „zamrzavanja lokalizacije" pre izdanja jer niko ne veruje procesu prevođenja
  • Otpor prema promeni bilo kog prevedenog sadržaja jer je tok rada tako bolan

U čemu pomažem:

  • Strategije refaktorisanja koje Vam dozvoljavaju postepeno usvajanje i18n-a (ne zahtevam „zaustavite sve i prepišite")
  • Dizajn procesa za održavanje prevoda u sinhronizaciji bez blokiranja razvoja
  • Recenzije arhitekture kako bi se identifikovalo gde će vaš trenutni pristup doživeti prekid pri 10+ jezika

i18n je arhitektura, a ne funkcionalnost. Pokušati da je dodate naknadno je kao da odlučite da vašoj kući treba podrum nakon što ste je već izgradili.

Pomažem vam da iskopate taj podrum — ili da odlučite da li vam uopšte treba.

RTL kvari sve.

Vaš korisnički interfejs nije dizajniran za arapski, hebrejski ili urdu

Promenili ste dir=„rtl" i gledali kako Vam raspored eksplodira:

Padajući meniji se otvaraju u pogrešnom smeru
Ikone pokazuju u pogrešnom smeru
Flexbox rasporedi se urušavaju ili stvaraju čudna preklapanja
Opisi se pojavljuju van ekrana
Plutajući elementi potpuno ignorišu smer teksta

Šta sam video:

  • Sistemi dizajna sa 200+ komponenti gde samo 12 pravilno rukuje RTL
  • Timovi koji koriste float: left umesto logičkih svojstava, kreirajući RTL greške u svakoj novoj funkcionalnosti
  • Iskačući prozori i modali koji zahtevaju RTL izmene specifične za komponentu
  • Frejmvorkovi koji tvrde da imaju RTL podršku, a samo okreću smer rasporeda, ali kvare logiku postavljanja

U čemu pomažem:

  • Migracija CSS logičkih svojstava (margin-inline-start umesto margin-left)
  • Revizije sistema dizajna da pronađete RTL mine pre isporuke
  • Smernice specifične za framework (Tailwind, shadcn, MUI) za RTL-first stilizovanje

Ručno ispravljanje RTL grešaka u svakoj komponenti nije održivo. Činim RTL podršku sistematskom, a ne stalnom borbom.

„Nemački tekst je pokvario naše dugme"

Korisnički interfejs koji nije građen za prevođenje

Engleski odgovara. Nemački ne. Vaš dizajn je pretpostavio:

Oznake dugmadi su ~10 karakteraKorisnička imena stanu u kolonu od 200pxPoruke o grešci su u jednom redu

Zatim ste preveli na nemački, finski ili tajlandski i otkrili:

Tekst na dugmadima se preseca na pola reči

Tabele sa horizontalnim klizanjem na svakom redu

Tekst koji se preliva u nečitljive blokove

Nelatinični tekst se odseca jer kontejneri imaju fiksne širine

U čemu pomažem:

  • Elastični UI obrasci koji se prilagođavaju dužini sadržaja
  • Planiranje budžeta broja znakova (znajući da se nemački proširuje za 30%, a tajlandski ne koristi razmake)
  • Tipografski sistemi koji rukuju CJK, arapskim i devanagari pismom bez prekida

Pomažem vam da izgradite korisnički interfejs koji izdržava prevođenje — pre nego što platite za 10.000 reči koje ne staju.

Ne treba vam predavanje o tome zašto je i18n važan. Potreban vam je neko ko je debagovao RTL popovere u 2 ujutru, raspravljao se sa product timom oko budžeta broja znakova i dizajnirao prevodilačke pipeline-ove koji zaista rade.

Zamke o kojima vas niko nije upozorio

Priče iz rovova – od timova koji su to već prošli

Ovo nije teorija. Ovo su stvari koje su se pokvarile u produkciji:

Pakao pluralizacije

Engleski: „1 stavka" naspram „2 stavki"

Poljski: „1 przedmiot" / "2 przedmioty" / „5 przedmiotów" (3 oblika plurala)

Arapski: 6 oblika plurala

Vaša logika count === 1 ? 'stavka' : 'stavke' više ne radi.

Haos sa datumom i vremenom

Formatirali ste datume sa toLocaleDateString(). Tada su korisnici u Japanu videli „2025年2月9日" u vašim CSV izvozima i Excel se zaglavio.

Nepodudaranje API jezika

Vaš frontend zahteva francuski. Vaš API vraća engleski jer autentifikacioni token ne nosi informaciju o lokalu. Sada imate korisnički interfejs na mešanim jezicima i korisnici misle da je to greška.

Testiranje pseudo-lokalnosti

Niste testirali sa [Ţĥîś îś ţéśţ ţéẋţ ţĥàţ éẋþàñðś 30%] pre puštanja u produkciju. Sada je vaš poljski sajt neupotrebljiv.

Nevidljiva pretpostavka

Pretpostavili ste da su niske jedino što treba prevesti. Onda ste naišli na datume, brojeve, valute, sortiranje, pretragu — sve ima ponašanje specifično za lokalizaciju.

U čemu pomažem:

  • Implementacija ICU MessageFormat (rukuje množinama, rodom, kontekstom)
  • API i18n obrasci (pregovaranje o jeziku, fallback strategije)
  • QA procesi koji otkrivaju ove probleme pre nego što ih prevodilačke agencije otkriju

Tok rada je najteži deo

Kako održavate sinhronizaciju 8 jezika kada vršite isporuku svakodnevno?

Savladali ste tehnologiju. Sada ste zapeli na procesu:

1

Programeri spajaju kod sa novim engleskim stringovima. Prevodi kasne 2 nedelje. Korisnici vide napola preveden korisnički interfejs.

2

Ne znate koje niske je bezbedno obrisati (da li se koriste? da li su prevedene? da li su u toku sa agencijom?)

3

Tim za proizvod želi da ažurira tekst. Niko ne zna da li će promena „Submit" u „Send" izazvati probleme u 12 jezika.

4

Datoteke prevoda nisu sinhronizovane sa produkcijom nedeljama u kontinuitetu

Pitanja koja mi timovi postavljaju:

„Treba li naš API da vrati prevedeni sadržaj ili da dozvoli frontendu da se time bavi?"
„Kako da verzionišemo prevode?"
„Šta je izvor istine: Figma, baza koda ili alat za prevođenje?"
„Kako da sprečimo programere da isporučuju funkcionalnosti samo na engleskom?"

Ono što sam video da se kvari:

  • Datoteke prevoda čekirane u git koje odstupaju od produkcijskih stringova
  • Upozorenja 'Ne diraj špansku datoteku' jer niko ne zna šta je bezbedno promeniti
  • Funkcionalnosti lansiraju na engleskom, a zatim se prevode 6 meseci kasnije (ako ikada)

U čemu pomažem:

  • Dizajn procesa za prevod (kada koristiti i18n biblioteke, kada koristiti TMS, kada koristiti AI)
  • Git tokovi rada za održavanje izvornih niski i prevoda u sinhronizaciji
  • Automatizacija koja blokira PR-ove ako nove niske nisu označene za prevod

Tehnologija se može rešiti. Tok rada je prepreka. Ja dizajniram tokove rada koji ne zahtevaju herojske napore za održavanje.

Timovi sa kojima sam sarađivao

Globalni proizvodi, regionalna stručnost

Logotip LINE (Japan, Taiwan, Thailand)

LINE (Japan, Taiwan, Thailand)

Platforma za razmenu poruka koja posluje na 3 primarna istočnoazijska tržišta. Radio sam na izazovima specifičnim za rukovanje CJK karakterima, integraciju ekosistema platforme i očekivanja korisničkog iskustva koja se razlikuju u Japanu, Tajvanu i Tajlandu.

Logotip KakaoTalk (South Korea)

KakaoTalk (South Korea)

Dominantna platforma za razmenu poruka u Koreji. Rešavali smo specifičnosti proizvoda za korejsko tržište, uključujući očekivanja u pogledu formalnosti jezika u korisničkom interfejsu i potrebe za integracijom platforme.

Logotip Change.org (196 countries, 20+ priority languages)

Change.org (196 countries, 20+ priority languages)

Globalna platforma za peticije gde su brzina i kvalitet sadržaja podjednako važni. Pomogli smo u uspostavljanju toka rada prevoda za politički/socijalni sadržaj koji generišu korisnici na raznovrsnim tržištima.

Logotip Airbnb (220+ countries, 60+ languages)

Airbnb (220+ countries, 60+ languages)

Globalno tržište sa složenim i18n zahtevima. Konsultovali smo o izazovima u vezi sa poverenjem i bezbednošću na više jezika i prilagođavanjem koncepata platforme različitim kulturama na tržištima.

Logotip Intercom (30+ languages, global B2B SaaS)

Intercom (30+ languages, global B2B SaaS)

Platforma za komunikaciju sa klijentima koja poslužuje globalne klijente iz preduzeća. Radio sam na internacionalizaciji proizvoda za alate za podršku u stvarnom vremenu i lokalizaciju baze znanja.

Logotip Lilith Games (China, Japan, Korea, US, EU)

Lilith Games (China, Japan, Korea, US, EU)

Izdavač mobilnih igara sa naslovima distribuiranim globalno. Rešavali smo izazove specifične za tržište u vezi sa lokalizacijom sadržaja i regionalnim zahtevima platforme.

Tržišta na kojima sam pokrenuo:

Istočna Azija (Japan, Koreja, Kina):

CJK tipografija, integracija ekosistema platforme, podrška za vertikalni tekst

Jugoistočna Azija (Tajland, Vijetnam, Indonezija):

Podrška za više pisama, očekivanja korisnika usmerena na mobilne uređaje

MENA (regioni gde se govori arapski):

RTL zahtevi za raspored, očekivanja u pogledu formalnog naspram kolokvijalnog jezika, prilagođavanje sadržaja kulturi

Evropa:

24 zvaničnih jezika, lansiranja proizvoda u više zemalja

Amerika:

Regionalne jezičke varijacije (latinoamerički španski naspram španskog iz Španije, brazilski portugalski), dvojezična tržišta

Video sam šta funkcioniše, a šta ne na ovim tržištima — ne iz teorije, već iz isporučivanja proizvoda na koje se stvarni korisnici oslanjaju.

Hajde da popravimo ono što ne radi

Ne treba vam predavanje o tome zašto je i18n važan. Potreban vam je neko ko je debagovao RTL popovere u 2 ujutru, raspravljao se sa product timom oko budžeta broja znakova i dizajnirao prevodilačke pipeline-ove koji zaista rade.

Pregled arhitekture i strategije (1-2 nedelje):

Govorim vam šta će se pokvariti kada dodate sledećih 3 jezika i koliko će koštati popravka

Podrška pri lansiranju na tržište (4-8 nedelja):

Lansirate se u Japanu/MENA/EU i potrebni su vam stručnjaci koji su to već radili.

Tekuće partnerstvo:

Ugrađeno savetovanje dok skalirate sa 2 jezika na 20

Ne bavim se teorijom. Bavim se trijažom, planovima razvoja i isporukom.