Я не только про кавычку, ваш пример это проблема принимающего сервиса, который так же должен проверять все входные данные. Это не так сложно, как вы пытаетесь преподнести. А про компоненты системы — если разработчик не знает откуда пришёл запрос, то тем более нужно их проверять и чистить, если вы с ними работаете, а не просто передаёте данные. Проблему всегда можно избежать на «последней миле», просто очистив данные.
Дело не в размерах проекта, а в голове разработчика, получил данные — проверь, вставляешь в базу — очисти, это уже на уровне рефлексов должно быть. В идеале конечно же.
Просто было странно читать такое про девелоперов от «главного безопасника QIWI», надеюсь он это не про нынешних своих коллег.
Да, вопрос был именно про такую ситуацию, большая таблица, требуется добавить поле. Странная логика, партицировать ради того, что бы сделать крайне редко ALTER через миграцию. Просто есть адекватные способы сделать изменение такой таблицы (через создание копии и тригеры).
И, кстати, как именно партицирование спасёт?
Идея конечно хорошая, но только предоставляет ли Citizen информацию по кодам для этого принтера? Если она есть, и есть сам принтер — грех не попробовать.
Да, будет работать только хром, но, к счастью, хром уже был, к тому же практически все наши пользователи используют хром. Установка внешнего приложения у корпоративного клиента затруднена ограничениями внутренного IT отдела, а поставить хром — пожалуйста.
Конечно можно не паковать, просто не хотелось отдельно перенастраивать правила кэширования.
Верстка переупаковывается самописным скриптом при обновлении продакшена, он же пакует стили и скрипты.
На самом деле с кэшированием всё проще — просто отдаём всю вёрстку запакованную в js файле, распаковываем на клиенте, при обновлении страницы этот файл уже выдернется из кэша.
По поводу кэширования — средствами самого браузера, то есть так же как кэширование стилей и скриптов.
У нас все заказы хранятся на стороне клиента, поиск тоже работает без участия сервера, так что отсутствие интернета не повлияет на работу.
Кстати, ограничение на размер localStorage тоже можно решить с помощью расширения.
Как я и писал в статье — с реальным сканером так и не протестировал, но задержки между командой в консоль и появлением текста в input я глазом заметить не могу.
Просто было странно читать такое про девелоперов от «главного безопасника QIWI», надеюсь он это не про нынешних своих коллег.
Мне кажется это очевидная для каждого девелопера мысль, что любые данные заведомо опасные и их нужно чистить, по крайней мере для веба — точно.
Спасибо, надо пробовать
И, кстати, как именно партицирование спасёт?
Так что просто нужно быть внимательным при установке расширений.
Верстка переупаковывается самописным скриптом при обновлении продакшена, он же пакует стили и скрипты.
У нас все заказы хранятся на стороне клиента, поиск тоже работает без участия сервера, так что отсутствие интернета не повлияет на работу.
Кстати, ограничение на размер localStorage тоже можно решить с помощью расширения.
На телефоне удобнее ввести придуманный логин, потому что он короче почты, но его можно и забыть.
Вот почему они не сделали нормальный utf?