The Holdout Column

Масштаб проти локалізації

14 червня 2026 · 4 хв читання

Зберіть кампанію один раз для всіх. Порушуйте це правило лише там, де змушують регуляторика або операційна реальність, — і нехай кожен виняток заслужить своє місце.

Global-first — це рішення про вартість підтримки

Ведіть lifecycle на достатній кількості ринків — і на кожній кампанії впираєтеся в ту саму розвилку: зібрати один раз для всіх чи підганяти під кожну країну. Інстинкт, особливо у локальних команд, — підганяти: кожен ринок певен, що він особливий. Зазвичай це не так — принаймні не настільки, щоб міняти повідомлення. А кожна версія під окремий ринок, яку ви створюєте, — це версія, яку ви тепер підтримуєте назавжди: ще одна річ, яку треба тестувати, перекладати, дебажити й синхронізувати наступного разу, коли зміниться пропозиція.

Тому за замовчуванням система має бути глобальною. Одна збірка, одна логіка, одне джерело правди — з адаптаціями, які дешеві, автоматизовані й не роздвоюють систему: мова, валюта, локальні назви мерчантів із даних, час надсилання під часовий пояс. Це не лінь; це єдиний спосіб для малої команди вести багато ринків і не потонути. Я тримав lifecycle-шар у сімнадцяти країнах і восьми мовах за цим правилом — і саме воно зробило цей масштаб керованим.

Винятки, які справді заслужили місце

Global-first — це базове налаштування, а не догма. Дві речі справді виправдовують окрему гілку. Перша — регуляторика: правила згоди, обмеження каналів, що вам дозволено казати про ціну чи промо, обробка даних, яка різниться за юрисдикціями. З цим не торгуються; ви будуєте виняток і будуєте його правильно. Друга — операційна реальність на місці: ринок, де продукт справді працює інакше — інші способи оплати, інше виконання замовлень, календар свят, що зсуває попит, — так, що глобальне повідомлення було б хибним, а не просто неідеальним.

Усе інше — «наші клієнти люблять тепліший тон», «ця картинка тут тестується краще» — це вподобання, а не вимога. Вподобання закриваються всередині глобальної конструкції, як варіант чи параметр, а не як окремий сценарій. Перевірка справжнього винятку проста: глобальна версія була б тут хибною чи просто не зробленою під цей ринок?

За замовчуванням — одна збірка для всіх. Кожен локальний виняток має довести, що вартий витрат, які додає.

Тримайте винятки під контролем, інакше вони множаться

Небезпека не в першому винятку, а в десятому. Окремо кожен виглядає розумно. Разом вони тихо перетворюють одну систему, яку можна підтримувати, на сімнадцять крихких: зміну в базовій кампанії доводиться вручну повторювати на кожному ринку, і в трьох вона ламається. Спосіб не розвалитися — керувати винятками як витратами: кожне відгалуження потребує чіткої причини — регуляторика або операційна потреба — власника й готовності прибрати його, коли причина зникне.

Ставтеся до глобальної системи як до активу, а до кожного винятку — як до зобовʼязання, яке ви свідомо несете. Централізуйте те, що можна централізувати; локалізуйте лише те, що справді не можна. Мета не в тому, щоб повідомлення було однаковим усюди, — а в тому, щоб машина була однаковою скрізь, із навмисними, задокументованими швами.

У понеділок перевірте всі розгалуження

Випишіть усі місця, де ваші кампанії зараз розходяться між ринками. Навпроти кожного напишіть причину. Розкладіть список на дві купи: це продиктували регуляторика чи операційна реальність — або комусь просто так більше сподобалося. Купу вподобань поверніть у глобальну збірку як варіанти. Те, що лишилося, — ваша справжня зона локалізації. І зазвичай це лише частка того, що ви підтримуєте сьогодні.

Далі зробіть глобальну версію базовою, а виняток — змусьте доводити право на існування. Новий ринок, нова кампанія, нове прохання «зробити тут по-особливому» — питання завжди те саме: глобальна версія була б хибною чи просто не зробленою під цей ринок? Зберіть один раз для всіх; розгалужуйте лише там, де змушує закон або реальність на місці. Команда лишається малою, система — при здоровому глузді, а ринки, яким справді потрібен окремий підхід, його отримують.

Це — мислення. На Діагностиці я прикладаю його до вашого стеку.