Wiesz już, że i18n to trudna sprawa. Widziałem te objawy: układy RTL, które się sypią, niemiecki tekst wylewający się z przycisków, odpowiedzi API w niewłaściwym języku i tłumaczenia rozjeżdżające się w ciągu tygodni od wdrożenia. Nie sprzedaję cudownych rozwiązań. Pomagam rozplątać konkretny bałagan, w którym tkwi Twój zespół — i budować systemy, które nie zepsują się w ten sam sposób po raz drugi.
Pan/Pani uruchomił(a) w języku angielskim. To działało. Następnie Pan/Pani dodał(a) francuski „tylko dla strony docelowej". Teraz Pan/Pani jest tutaj, ponieważ:
W Pana/Pani bazie kodu znajdują się sprawdzenia lang= rozrzucone po 47 plikach
Menedżerowie produktu pytają: „Czy możemy przeprowadzić testy A/B treści?", a inżynieria odpowiada: „Nie bez przepisania kodu".
Macie trzy różne procesy tłumaczeniowe i żaden z nich nie działa jak należy
i18n to architektura, nie funkcja. Próba dodania tego później jest jak stwierdzenie, że dom potrzebuje piwnicy, gdy już go zbudowałeś.
Pomagam wykopać ten fundament — albo zdecydować, czy w ogóle go Pan potrzebuje.
Włączyłeś dir=„rtl" i obserwowałeś, jak układ się rozjeżdża:
Ręczne poprawianie błędów RTL w każdym komponencie jest nieefektywne. Zapewniam systematyczne wsparcie dla RTL, zamiast ciągłego gaszenia pożarów.
Angielski pasuje. Niemiecki nie. Twój projekt zakładał:
A potem przetłumaczono na niemiecki, fiński czy tajski i okazało się:
Przyciski ucięte w połowie słowa
Tabele z poziomym przewijaniem
Tekst, który zawija się w nieczytelne bloki.
Tekst nielaciński jest obcinany, ponieważ kontenery mają stałe szerokości
Pomagam Panu zbudować interfejs, który będzie przystosowany do tłumaczenia, zanim zapłaci Pan za 10000 słów, które się nie zmieszczą.
Nie potrzebuje Pan wykładu o tym, dlaczego i18n jest ważne. Potrzebuje Pan kogoś, kto debugował popovery RTL o 2 w nocy, kłócił się z produktem o limity znaków i projektował potoki tłumaczeniowe, które naprawdę działają.
To nie są kwestie teoretyczne. Oto rzeczy, które zawiodły na produkcji:
Angielski: „1 item" kontra „2 items"
Polski: „1 przedmiot" / "2 przedmioty" / „5 przedmiotów" (3 formy liczby mnogiej)
Arabski: 6 form liczby mnogiej
Pana/Pani logika 'count === 1 ? „item" : „items"' już nie działa.
Daty sformatowano za pomocą toLocaleDateString(). W efekcie użytkownicy w Japonii zobaczyli „2025年2月9日" w eksportach CSV, co sprawiło, że Excel miał problemy z ich odczytem.
Frontend wysyła zapytanie po francusku. API zwraca odpowiedź po angielsku, ponieważ token autoryzacyjny nie zawiera informacji o lokalizacji. W rezultacie interfejs użytkownika wyświetla się w mieszanych językach, a użytkownicy uznają to za błąd.
Nie przetestowano z [Ţĥîś îś ţéśţ ţéẋţ ţĥàţ éẋþàñðś 30 %] przed wdrożeniem na produkcję. Teraz polska wersja strony jest bezużyteczna.
Założył Pan, że ciągi znaków to jedyne, co wymaga tłumaczenia. Potem jednak pojawiły się daty, liczby, waluty, sortowanie, wyszukiwanie — wszystko z zachowaniami specyficznymi dla lokalizacji.
Opanował Pan/Pani technologię. Teraz utknął Pan/Pani na procesie:
Programiści scalają kod z nowymi angielskimi ciągami znaków. Tłumaczenia opóźniają się o 2 tygodnie. Użytkownicy widzą częściowo przetłumaczony interfejs.
Nie wie Pan/Pani, które ciągi znaków można bezpiecznie usunąć (czy są używane? przetłumaczone? w trakcie realizacji przez agencję?)
Dział produktu chce zaktualizować treść. Nikt nie wie, czy zmiana „Submit" na „Send" nie spowoduje problemów w 12 językach.
Pliki tłumaczeń tygodniami nie są zsynchronizowane z wersją produkcyjną.
Technologia jest do ogarnięcia. Prawdziwym problemem jest przepływ pracy. Projektuję przepływy pracy, których utrzymanie nie wymaga heroicznych wysiłków.

Platforma do przesyłania wiadomości działająca na 3 głównych rynkach Azji Wschodniej. Praca obejmowała wyzwania związane z obsługą znaków CJK, integracją z ekosystemem platformy oraz różnicami w oczekiwaniach użytkowników w Japonii, na Tajwanie i w Tajlandii.
Dominująca platforma komunikacyjna w Korei. Uwzględniono specyficzne wymagania produktowe dla rynku koreańskiego, w tym oczekiwania dotyczące formalności języka w interfejsie oraz potrzeby związane z integracją platformy.
Globalna platforma petycyjna, gdzie liczy się zarówno szybkość, jak i jakość treści. Pomogliśmy w usprawnieniu procesu tłumaczenia treści politycznych/społecznych generowanych przez użytkowników na wielu rynkach.

Globalny marketplace ze złożonymi wymaganiami i18n. Doradztwo w zakresie wyzwań związanych z zaufaniem i bezpieczeństwem w wielu językach oraz kulturowej adaptacji koncepcji platformy na różnych rynkach.

Platforma komunikacji z klientami obsługująca globalnych klientów korporacyjnych. Praca obejmowała internacjonalizację produktu dla narzędzi wsparcia w czasie rzeczywistym oraz lokalizację bazy wiedzy.
Wydawca gier mobilnych z tytułami dystrybuowanymi globalnie. Rozwiązano wyzwania związane z konkretnym rynkiem w zakresie lokalizacji treści i wymagań regionalnych platform.
Azja Wschodnia (Japonia, Korea, Chiny):
Typografia CJK, integracja z ekosystemem platformy, obsługa tekstu pionowego.
Azja Południowo-Wschodnia (Tajlandia, Wietnam, Indonezja):
Obsługa wielu systemów pisma i oczekiwania użytkowników dotyczące podejścia mobile-first.
MENA (regiony arabskojęzyczne):
Wymagania dotyczące układu RTL, oczekiwania co do języka formalnego i potocznego, kulturowa adaptacja treści
Europa:
24 języków urzędowych, wielokrajowe premiery produktów
Ameryki:
Regionalne warianty językowe (hiszpański LATAM vs Hiszpania, portugalski brazylijski), rynki dwujęzyczne
Widziałem, co działa, a co nie sprawdza się na tych rynkach — nie z teorii, ale z wdrażania produktów, na których polegają prawdziwi użytkownicy.
Nie potrzebuje Pan wykładu o tym, dlaczego i18n jest ważne. Potrzebuje Pan kogoś, kto debugował popovery RTL o 2 w nocy, kłócił się z produktem o limity znaków i projektował potoki tłumaczeniowe, które naprawdę działają.
Powiem Panu, co przestanie działać, gdy doda Pan kolejne 3 języków, i ile będzie kosztować naprawa.
Uruchamia Pan działalność w Japonii/MENA/EU i potrzebuje Pan ekspertów, którzy już to robili.
Konsulting zintegrowany z procesem skalowania z 2 języków do 20
Nie zajmuję się teorią. Zajmuję się triażem, planami działania i dostarczaniem.