Tiedätte jo, että i18n on vaikeaa. Olen nähnyt oireet: RTL-asettelut, jotka romahtavat, saksankielinen teksti, joka valuu painikkeiden yli, API-vastaukset väärällä kielellä ja käännökset, jotka ajautuvat epäsynkkaan viikkojen kuluessa lanseerauksesta. En myy hopealuoteja. Autan teitä selvittämään sen tietyn sotkun, jossa tiiminne on — ja rakentamaan järjestelmiä, jotka eivät rikkoudu samalla tavalla kahdesti.
Lanseerasitte englanniksi. Se toimi. Sitten lisäsitte ranskan "vain laskeutumissivua varten". Nyt olette täällä, koska:
Koodipohjassanne on lang= -tarkistuksia ripoteltuna 47 tiedostoon
Tuotejohtajat kysyvät "voimmeko A/B-testata tekstiä?" ja tekniikka sanoo "ei ilman uudelleenkirjoitusta"
Teillä on kolme erilaista käännöstyönkulkua, eikä yksikään niistä toimi luotettavasti
i18n on arkkitehtuuria, ei ominaisuus. Sen lisääminen jälkikäteen on kuin päättäisi, että talo tarvitsee kellarin sen jälkeen, kun se on jo rakennettu.
Autan teitä kaivamaan sen kellarin – tai päättämään, tarvitsetteko oikeasti sellaista.
Vaihdoitte dir="rtl" ja katsoitte, kun asettelunne räjähti:
RTL-bugien korjaaminen käsin jokaisessa komponentissa ei ole kestävää. Teen RTL-tuesta järjestelmällistä, en jatkuvaa palojen sammuttelua.
Englanti mahtuu. Saksa ei. Suunnittelunne oletti:
Sitten käänsitte saksaksi, suomeksi tai thaiksi ja huomasitte:
Painikkeiden teksti katkeaa kesken sanan
Taulukot, joissa on vaakasuuntainen vieritys jokaisella rivillä
Teksti, joka rivittyy lukukelvottomiksi lohkoiksi
Ei-latinalainen teksti katkeaa, koska säiliöillä on kiinteät leveydet
Autan teitä rakentamaan käyttöliittymän, joka kestää kääntämisen—ennen kuin olette maksaneet 10,000 sanaa, jotka eivät mahdu.
Te ette tarvitse luentoa siitä, miksi i18n on tärkeää. Te tarvitsette jonkun, joka on debuggannut RTL-ponnahdusikkunoita kello 2 aamulla, väitellyt tuotetiimin kanssa merkkibudjeteista ja suunnitellut käännösputkia, jotka oikeasti toimivat.
Nämä eivät ole teoreettisia. Nämä ovat asioita, jotka rikkoutuivat tuotannossa:
Englanti: "1 kohde" vs "2 kohdetta"
Puola: "1 przedmiot" / "2 przedmioty" / "5 przedmiotów" (3 monikkomuotoa)
Arabia: 6 monikkomuotoa
Teidän count === 1 ? 'kohde' : 'kohteet' -logiikkanne ei enää toimi.
Muotoilit päivämäärät toLocaleDateString():llä. Sitten käyttäjät Japanissa näkivät CSV-vienneissäsi "2025年2月9日", ja Excel meni sekaisin.
Frontendinne pyytää ranskaa. API:nne palauttaa englantia, koska todennustunniste ei sisällä lokaalia. Nyt käyttöliittymänne on kaksikielinen ja käyttäjät ajattelevat, että se on bugi.
Ette testanneet tekstillä [Ţĥîś îś ţéśţ ţéẋţ ţĥàţ éẋþàñðś 30 %] ennen tuotantoon siirtymistä. Nyt puolankielinen sivustonne on käyttökelvoton.
Oletitte, että merkkijonot ovat ainoa asia, joka pitää kääntää. Sitten törmäätte päivämääriin, numeroihin, valuuttoihin, lajitteluun, hakuun—kaikkeen, jolla on kielialuekohtainen logiikka.
Olette selvittäneet teknologian. Nyt olette jumissa prosessissa:
Kehittäjät yhdistävät koodia, jossa on uusia englanninkielisiä merkkijonoja. Käännökset laahaavat 2 viikkoa jäljessä. Käyttäjät näkevät puoliksi käännetyn käyttöliittymän.
Et tiedä, mitkä merkkijonot on turvallista poistaa (ovatko ne käytössä, käännetty vai toimistolla työn alla?)
Tuote haluaa päivittää tekstiä. Kukaan ei tiedä, rikkooko "Submit"-sanan muuttaminen "Send"-sanaksi 12 kieltä.
Käännöstiedostot eivät pysy synkronoituina tuotannon kanssa viikkoja kerrallaan.
Teknologia on ratkaistavissa. Työnkulku on este. Suunnittelen työnkulkuja, jotka eivät vaadi sankaritekoja ylläpitoon.

Viestintäalusta, joka toimii 3 ensisijaisella itäaasialaisella markkinalla. Työskentelin CJK-merkkien käsittelyyn liittyvien erityishaasteiden, alustan ekosysteemintegraation sekä käyttäjäkokemusodotusten parissa, jotka eroavat Japanin, Taiwanin ja Thaimaan välillä.
Korean hallitseva viestintäalusta. Työskentelin Korean markkinakohtaisten tuotevaatimusten parissa, mukaan lukien käyttöliittymän kielen muodollisuusodotukset ja alustan integraatiotarpeet.
Globaali vetoomusalusta, jossa sekä sisällön nopeus että laatu merkitsevät. Auttoi navigoimaan käännöstyönkulussa käyttäjien tuottamalle poliittiselle/yhteiskunnalliselle sisällölle eri markkinoilla.

Globaali markkinapaikka, jolla on monimutkaiset i18n-vaatimukset. Konsultoin useilla kielillä luottamukseen ja turvallisuuteen liittyvissä haasteissa sekä alustan käsitteiden kulttuurisessa mukauttamisessa eri markkinoille.

Asiakasviestintäalusta, joka palvelee kansainvälisiä yritysasiakkaita. Työskentelin tuotteen kansainvälistämisen parissa reaaliaikaisten tukityökalujen ja tietopankin lokalisoinnissa.
Mobiilipelijulkaisija, jonka pelit julkaistaan maailmanlaajuisesti. Työskentelin markkinakohtaisten haasteiden parissa sisällön lokalisoinnissa ja alueellisissa alustavaatimuksissa.
Itä-Aasia (Japani, Korea, Kiina):
CJK-typografia, alustaympäristön integraatio, pystysuoran tekstin tuki
Kaakkois-Aasia (Thaimaa, Vietnam, Indonesia):
Usean kirjoitusjärjestelmän tuki, mobiili ensin -käyttäjäodotukset
MENA (arabiaa puhuvat alueet):
RTL-asetteluvaatimukset, muodollisen vs. puhekielisen kielen odotukset, sisällön kulttuurinen mukauttaminen
Eurooppa:
24 virallista kieltä, usean maan samanaikaiset tuotelanseeraukset
Amerikat:
Alueelliset kielivariaatiot (LATAM-espanja vs. Espanja, brasilianportugali), kaksikieliset markkinat
Olen nähnyt, mikä toimii ja mikä epäonnistuu näillä markkinoilla – en teoriasta, vaan toimittamalla tuotteita, joista todelliset käyttäjät ovat riippuvaisia.
Te ette tarvitse luentoa siitä, miksi i18n on tärkeää. Te tarvitsette jonkun, joka on debuggannut RTL-ponnahdusikkunoita kello 2 aamulla, väitellyt tuotetiimin kanssa merkkibudjeteista ja suunnitellut käännösputkia, jotka oikeasti toimivat.
Kerron teille, mikä rikkoutuu, kun lisäätte seuraavat 3 kieltä, ja mitä sen korjaaminen maksaa
Olette lanseeraamassa Japanissa/MENA/EU ja tarvitsette asiantuntijoita, jotka ovat tehneet sen aiemmin
Sulautettu konsultointi, kun skaalatte 2 kielestä 20 kieleen
En tee teoriaa. Teen triagea, tiekarttoja ja toimitan.