Я провів п'ять днів, користуючись безкоштовним тарифом так, як це робив би реальний користувач, а не так, як його описує сторінка з цінами, і записував усе по ходу. Скріншот-і-забув — не спосіб знайти дрібний шрифт умов; будувати щось протягом тижня та натикатися на реальні обмеження — так. Ось цей журнал.
Понеділок, 9:40 — зареєструвався, без картки
Перше, що я перевірив, перш ніж написати хоч рядок коду: чи просять картку. Не просять. Зазвичай я б пропустив таку деталь, але безкоштовний тариф, який хоче платіжні дані ще до того, як ви щось збудували, показує своє ставлення до вас, тож я зафіксував це і пішов будувати далі.
Обрав як тестовий проєкт сайт малого бізнесу — нічого екзотичного: лендинг, контактна форма, розділ блогу. До 10:15 перша версія вже була опублікована на безкоштовному піддомені. Ніякого платного бар'єру між «побудувати» та «опублікувати» — саме тут багато безкоштовних тарифів непомітно перетворюються на демоверсії.
Понеділок, 14:00 — цикл ітерацій, де я очікував стіну
Це та частина, до якої я був найбільш підозріливим. Перші збірки дешеві для будь-якого агента — чітке технічне завдання, немає існуючого коду для узгодження — тож платформа може виглядати щедрою на першій збірці, а потім «здирати» на другій. Я взявся за цикл: «зроби шапку прилипаючою», «виправ мобільну навігацію», доопрацювання контенту, ще два дрібні правки після цього. Кожна з них зачіпала більше файлів, ніж передбачало прохання — так, як завжди буває з реальними правками. Я не вдарився об стелю того дня, але відчував, де вона — ліміт явно розрахований на один повний цикл такої роботи, а не на п'ять.
Також перевірив, ближче до полудня, чи не пропускають етап рев'ю на безкоштовних акаунтах для економії обчислень. Не пропускають — той самий лінтинг, та сама перевірка безпеки, та сама функціональна верифікація, перш ніж щось позначать як готове. Я спеціально шукав тут «зрізаний кут», бо саме це перше, що я б скоротив під тиском маржі, якби керував цим бізнесом, — і його не скоротили.
Вівторок, 11:00 — запустив другий проєкт, щоб побачити обмеження бекенду
Створив другу ідею, цього разу з реальним бекендом — базою даних, API-маршрутом, повним набором. Тут я й очікував справжнє обмеження, і знайшов його: один активний застосунок із серверним бекендом на безкоштовний акаунт. Спробував запустити другий хостований бекенд разом із першим — обидва одночасно не запустилися.
Мене здивувало те, що не враховується в цьому ліміті. Пізніше того ж тижня я зібрав невеликий інструмент для завантаження — без сервера, просто упакований застосунок — і він опублікувався без проблем, не конкуруючи з активним бекендом. Логічно, якщо подумати про структуру витрат: хостований бекенд постійно «прогрітий» і коштує грошей незалежно від того, чи хтось до нього звертається; статична або встановлювана збірка — це просто файли, що лежать без діла. Раціонується лише «прогрітий».
Вівторок, 16:30 — спробував зламати паралелізм
Запустив збірку, потім посеред процесу попросив асистента почати щось інше, не пов'язане з цим. Це стало в чергу, а не запустилося паралельно. Дратувало десь дев'яносто секунд, а потім стало неважливим — я все одно спостерігав за попереднім переглядом першої збірки, тож чекати «завершення перед початком наступного» — це те, що я б робив у будь-якому разі. Можу уявити, що це важливіше для команди, яка запускає два конвеєри агентів одночасно — генерація контенту на одній сторінці, поки агент-будівельник перебудовує іншу, — але це інший сценарій використання, ніж мій.
Середа — бібліотеки, і чому вони не пробна функція
Присвятив середу перевірці, чи справді працює накопичувальний функціонал — база знань, референсні зображення, шаблони — на безкоштовному тарифі, чи це лише платна приманка. Обмежень немає. До третього дня платформа вже повторно використовувала мій голос бренду й референсні скріншоти, не змушуючи мене пояснювати їх заново, а це і є суть шару знань: приховати його означало б, що безкоштовні користувачі ніколи не побачать, як продукт «накопичується», — і тоді навіщо їм узагалі платити за продовження користування чимось, від чого вони так і не отримали цінності.
Також перевірив, чи не «легша» якимось чином ізоляція даних тенантів на безкоштовному тарифі — часткова ізоляція, повільніша черга перевірок ізоляції, будь-що. Не легша, і, чесно кажучи, структурно й не може бути; ізоляція — річ бінарна. Або фонові завдання й запити ізольовані по тенантах, або ні, проміжної 80%-ї версії для дешевого продажу не існує. Безкоштовний і платний тарифи отримують тут однакову гарантію, що я й припускав, але хотів перевірити насправді, а не просто повірити на слово.
Четвер — публікація в магазині, те, що я мало не пропустив
Я мало не пропустив цей тест, бо припускав, що публікація в магазині застосунків — тільки для платних, це інстинкт більшості людей, і він помилковий. Упакував невеликий інструмент із вівторка як встановлюваний застосунок, і публікація на боці платформи спрацювала так само, як я очікував би на платному акаунті. Єдина складність — власна реєстраційна платня Google для розробників, яка не має жодного стосунку до мого тарифу. Варто сказати це прямо, бо я бачив, як люди самі себе обмежують через неіснуючі бар'єри, лише припускаючи гірше.
П'ятниця — що я б пропустив наступного разу
Якби я повторював цей тест, я б пропустив перевірку паралелізму у вівторок вдень — вона відповіла на своє питання менш ніж за дві хвилини, а я витратив ще сорок на варіації, які лише підтвердили те саме. Я б також переніс перевірку ізоляції тенантів на перший день замість третього, оскільки це факт, який людям варто знати перед тим, як розміщувати на платформі щось реальне, а не після.
Що я б не пропустив: тест циклу ітерацій у понеділок. Саме тут безкоштовний тариф зазвичай виявляє себе як воронка продажів, і саме цей тест варто повторити самостійно, якщо ви вирішуєте, чи це реальний продукт, чи пробна версія з кращим маркетингом.
| Що я перевіряв | Що сталося насправді |
|---|---|
| Реєстрація | Картка не потрібна |
| Цикл ітерацій (5+ раундів правок) | Ліміту вистачило на повний цикл; при більшому навантаженні буде стискатися |
| Етап рев'ю/верифікації | Ідентичний платному тарифу — не пропущений |
| Другий активний бекенд | Заблоковано — один застосунок із серверним бекендом одночасно |
| Статична/встановлювана збірка | Не конкурує за слот бекенду |
| Паралельні збірки | Стають у чергу, а не виконуються одночасно |
| Бібліотеки (знання/референси/шаблони) | Повністю доступні, накопичуються протягом тижня |
| Ізоляція орендарів | Та сама гарантія, що й у платному тарифі, часткової версії не існує |
| Публікація в магазині | Без обмежень; єдина плата — комісія самого магазину |
Отже: три обґрунтовані причини перейти на вищий план, засновані на тому, що дійсно спрацювало проти мене, а не на тому, чого я очікував. Ви вичерпували цикл ітерацій не раз, а не лише один раз, як усі в перший місяць — див. як насправді поводиться вичерпання кредитів, нічого не втрачається, але повторюваний патерн — це сигнал. Вам потрібні два хостингові бекенди одночасно активними, а це структурна потреба, яку безкоштовний план не призначений витримувати, а не проблема бюджетування, яку можна обійти. Або те, що ви створили, перестало бути тестом і почало приносити гроші, і в цей момент робота на межі ліміту — це вже витрати на тривогу, а не лише технічні.
Жодне з цього не торкнулося мене цього тижня. Я створив реальний сайт і реальний інструмент для завантаження, ітерував над обома, опублікував обидва, і єдина стіна, яку я знайшов, — саме та, про яку попереджав дрібний шрифт.



