Демон Декарта и забытый PWA: почему мы гонимся за новым и не видим того, что уже работает
Вместо вступления: юрист в разработке
Я много лет работаю юристом и меньше двух лет пишу код. Сейчас я в одиночку, вместе с Claude Code, строю внутреннюю систему для организации. И каждый раз, прежде чем выбрать технологию, я делаю то, к чему привыкла в юриспруденции: сначала разбираю требования, риски и последствия, а уже потом решаю.
Именно этот взгляд привёл меня к простому выводу: одно из самых практичных решений в мобильной разработке сегодня почти никто не обсуждает. Это PWA.
Чтобы объяснить, почему так происходит, мне придётся вернуться почти на четыре века назад, к Декарту. Его обычно вспоминают из-за демона-обманщика: что, если мир вокруг лишь убедительная иллюзия? Шум вокруг новых технологий иногда работает именно так. Но у Декарта есть идея куда менее известная и, на мой взгляд, гораздо более полезная. Декарт предложил смотреть на систему не через её движение, а через её возможности: что произойдёт, если её чуть-чуть сдвинуть, даже если этого никогда не случится? Позже из этого принципа виртуальных скоростей д’Аламбер и Лагранж вырастили вариационную механику. А потом идея почти исчезла из публичного мышления.
Я уже писала о том, как этот принцип объясняет мышление, право и ИИ, и назвала этот подход Virtual Velocities 2.0. Его суть проста: любая разумная система принимает решение до действия, перебирая маленькие воображаемые сдвиги. Решение готово, когда ни один допустимый сдвиг уже не улучшает баланс.
В этой статье я применю тот же метод к выбору технологии для приложения. И покажу, почему при такой проверке на первое место часто выходит решение, о котором давно никто не пишет.
Скорость против баланса
Лента Хабра и соцсетей создаёт ощущение, что всё, что вышло больше года назад, устарело. Мы привыкли считать, что хороший разработчик — быстрый: быстро подхватил новый фреймворк, быстро выкатил, быстро переписал.
Но принцип виртуальных скоростей предлагает другой вопрос. Не «куда сейчас все бегут?», а «что будет с моим продуктом, если условия чуть-чуть сдвинутся?». Магазин изменит правила. Заказчику срочно понадобится правка. Пользователи окажутся без интернета. Закон потребует хранить данные иначе.
Если прогнать выбор стека через такие воображаемые сдвиги, PWA (Progressive Web App) неожиданно оказывается одним из самых устойчивых решений. О нём перестали говорить не потому, что он плох, а потому, что он перестал быть новостью.
Что умеет PWA на самом деле
PWA — это веб-приложение, которое устанавливается на устройство и ведёт себя почти как нативное: своя иконка, полноэкранный режим, работа без браузерной обвязки.
Где PWA честно проигрывает: тяжёлая графика и игры, сложная работа с Bluetooth, фоновые задачи, глубокая интеграция с системой. Если продукт держится на этом, нужен натив или Flutter.
Где PWA выигрывает: внутренние корпоративные системы, личные кабинеты, сервисы записи, справочники, CRM, панели управления. То есть большая часть того, что реально заказывает бизнес.
[Проверить актуальные ограничения PWA на iOS и Android перед публикацией]
Кейс: «оно что, обновляется само?»
Систему, которую я разрабатываю, я показать не могу: это внутренний инструмент организации. Но могу рассказать главное.
Её пользователи — не технари. Для них «обновить приложение» означает инструкцию, звонок в поддержку и вечное «а у меня почему-то старая версия». В PWA этого нет: я выкатываю изменения, и при следующем открытии у всех уже новая версия.
Когда руководитель это увидел, он был в восторге. Не от архитектуры и не от стека, а от того, что исчезла целая категория проблем. Для бизнеса это и есть ценность технологии: не то, насколько она модная, а сколько головной боли она убирает.
[Добавить 1–2 обезличенные детали: число пользователей, как часто выходят обновления, что было до PWA]
Взгляд юриста: кому принадлежит ваше приложение
Разработчики обычно сравнивают технологии по скорости и удобству. Юрист задаёт другой вопрос: от кого я завишу и что будет, если эта зависимость оборвётся?
- Правила магазинов. Публикуя приложение в сторе, вы принимаете чужие правила, которые могут измениться в одностороннем порядке. Приложение могут снять с публикации, а аккаунт разработчика заблокировать.
- Доступ пользователей. Для российских разработчиков и пользователей этот риск уже не теоретический. PWA распространяется по ссылке и не зависит от решения третьей стороны.
- Персональные данные. В PWA данные идут туда, куда вы их направили: на ваш сервер, который можно разместить с учётом требований 152-ФЗ, в том числе о локализации. Это проще контролировать и проще объяснить проверяющим.
- Договор с заказчиком. Для корпоративного заказчика важно, что продукт полностью под его контролем, а не зависит от аккаунта разработчика в чужом магазине.
По сути, это тот же метод, который я применяю к нормам права: мысленно сдвинуть одно условие и посмотреть, восстановится ли баланс. Если продукт ломается от одного решения чужой компании, его архитектура неустойчива, даже если сегодня всё работает.
Правовой анализ до выбора технологии экономит не только деньги, но и годы: архитектуру потом переделать сложнее, чем договор.
Почему мы выбираем модное, а не подходящее
Выбор технологии редко бывает чисто рациональным. На него влияют вполне человеческие вещи.
- Эффект новизны. Новое кажется лучшим просто потому, что оно новое.
- Страх отстать. Если все пишут о новом фреймворке, кажется, что без него ты уже не в профессии.
- Статус. «Нативное приложение в сторе» звучит солиднее для заказчика, даже если ему нужна простая форма и таблица.
- Слепое пятно. О том, что работает без проблем, не пишут статей. Поэтому оно исчезает из общей картины мира.
В итоге решения принимаются внутри информационного пузыря, который мы сами считаем реальностью. Опять Декарт.
Вывод: ясность — это баланс, а не ускорение
Принцип виртуальных скоростей учит простому: система готова двигаться, когда ни один допустимый сдвиг уже не улучшает её равновесие. Пока такие сдвиги есть, торопиться рано.
В разработке это значит не спрашивать «что сейчас модно?», а спрашивать «что будет с продуктом, если условия чуть изменятся?». Иногда ответом будет новый фреймворк. А иногда скромный PWA, о котором давно никто не пишет, но который выдерживает проверку.
Юриспруденция научила меня, что самые дорогие ошибки происходят не из-за незнания нового, а из-за непроверенных допущений. В технологиях то же самое.
А как вы выбираете стек: по задаче или по ленте новостей? Расскажите в комментариях.