Блог
Каждый разработчик сталкивался с этой стеной. У вас есть явная проблема с производительностью — например, сайт отдает тяжелые JPEG вместо оптимизированных WebP. Вы точно знаете, как это исправить: добавить на сервер скрипт, который автоматически конвертирует изображения при загрузке.
А потом вы идете к команде DevOps. Или к команде безопасности. Или в комитет по «комплаенсу».
«Нам нужна проверка безопасности».
«Этого нет в текущем спринте».
«Подождите следующей миграции сервера».
Внезапно трехчасовое исправление превращается в трехмесячное ожидание. Большинство людей просто сдаются и ждут.
Я не хотел ждать. Если я не мог трогать сервер, я решил взяться за единственную другую часть стека, которую я контролировал: браузер.
Я написал расширение для Chrome.
Вместо того чтобы пытаться исправить конвейер обработки изображений на бэкенде, расширение перехватывает процесс загрузки прямо в браузере. Когда пользователь перетаскивает изображение в CMS, расширение подхватывает его, конвертирует в WebP локально (используя возможности самого браузера) и уже потом отправляет оптимизированную версию на сервер.
Сервер даже не подозревает о подмене. Он просто получает файл поменьше и побыстрее. Никаких проверок безопасности сервера не потребовалось, потому что код сервера остался прежним.
Дело не только в картинках. Дело в смене мышления.
В традиционной веб-разработке нас учат решать проблемы там, где им «положено» быть. Проблемы бэкенда решаются на бэкенде. Но в корпоративной среде «правильное» место часто оказывается самым зарегулированным.
Расширения Chrome, пользовательские скрипты и edge-функции — это своего рода «партизанская война» современной разработки. Они позволяют приносить пользу пользователю, не увязая в бюрократии основной инфраструктуры.
Клиенту было все равно, где конвертируются изображения — на сервере или в браузере. Им было важно, что их показатель PageSpeed подскочил на 20 пунктов за 48 часов, а не за четыре месяца.
Находя обходной путь вместо того, чтобы биться головой о стену, вы даете результат, пока остальные все еще заполняют тикеты в Jira.
Если вы застряли в ожидании «правильного» исправления, которое может никогда не наступить, ищите боковую дверь. Браузер — это мощная среда. Если вы не можете изменить двигатель, вы все равно можете сменить топливо.
В ilf.studio мы специализируемся на поиске таких «боковых дверей», чтобы обеспечивать производительность и функции даже тогда, когда традиционный путь закрыт.
ilf.studio — AI-native веб-студия, Гданьск, Польша.