Статьи
Короткие разборы по сайтам, ботам, скриптам, серверу и автоматизации. Без академичности: только то, что помогает быстрее понять задачу и принять решение.
Serverless функция запускается дважды на одно событие: как сделать обработку безопасной
Cloud Function, Lambda или serverless handler выполняется дважды на одно событие. Проверяем retries, at-least-once delivery, idempotency, очереди и webhook.
Читать статью →Данные формы пропадают при переходе назад: как сохранить состояние в React или Vue
Пользователь заполнил форму, перешел дальше и потерял данные при возврате назад. Проверяем state, router, cache, localStorage, form library и lifecycle.
Читать статью →После обновления базы знаний бот использует старые данные: как исправить RAG
AI-бот продолжает отвечать по старым документам после обновления базы знаний. Проверяем индекс, чанки, кеш, embeddings, версию источников и retrieval.
Читать статью →Штрихкод не сканируется с напечатанной этикетки: как найти причину
Сканер не читает штрихкод после печати этикетки. Проверяем формат, DPI, размеры, контраст, quiet zone, принтер, масштабирование и генератор.
Читать статью →Распознавание паспорта путает серию и номер: как улучшить OCR и проверку полей
OCR паспорта неправильно разделяет серию и номер. Что проверить в качестве изображения, шаблоне документа, regex, постобработке и ручной валидации.
Читать статью →Broker не сохраняет retained сообщение: что проверить в MQTT
MQTT broker не сохраняет retained message, новый подписчик не получает последнее значение. Проверяем retain flag, QoS, ACL, persistence, clean session и topic.
Читать статью →Кнопки бота отображаются по-разному на телефонах: как сделать интерфейс стабильнее
Кнопки бота в Viber, MAX или другом мессенджере выглядят по-разному на iPhone и Android. Проверяем тип клавиатуры, длину текста, layout, версии клиента и fallback.
Читать статью →После обновления macOS программа потеряла доступ к файлам: что проверить
После обновления macOS приложение не видит документы, папки или диск. Проверяем Permissions, Full Disk Access, sandbox, file bookmarks и путь к файлам.
Читать статью →Видео урок считается просмотренным без просмотра: как исправить прогресс в LMS
LMS отмечает видеоурок просмотренным, хотя ученик его не смотрел. Проверяем события плеера, прогресс, перемотку, вкладки, backend и защиту от ложных отметок.
Читать статью →Protobuf изменение сломало старые сервисы: как восстановить совместимость
После изменения .proto старые gRPC-сервисы или клиенты перестали работать. Что проверить в field numbers, optional/required, enum, генерации кода и версии контрактов.
Читать статью →GraphQL позволяет запросить слишком много данных: как ограничить тяжелые запросы
GraphQL API дает клиенту запросить огромные вложенные данные и перегружает backend. Что проверить в depth limit, complexity, pagination, N+1 и rate limit.
Читать статью →onEdit срабатывает несколько раз: как исправить Google Apps Script
Триггер onEdit в Google Sheets запускается несколько раз, дублирует строки или отправляет письма повторно. Проверяем триггеры, условия, LockService и идемпотентность.
Читать статью →