Новости

Mysql индексы без боли: когда нужны, какие бывают и как ускорить запросы без вреда

Индексы в MySQL ускоряют чтение, когда запросы отбирают небольшую долю строк по предсказуемым условиям, но легко замедляют записи и усложняют планы, если добавлены наугад. Практика простая: сначала подтвердите проблему через EXPLAIN/ANALYZE, затем выберите минимально нужный индекс под конкретный WHERE/JOIN/ORDER BY и проверьте регрессии. Коротко: что важно про индексы Индексы MySQL помогают там, где есть фильтрация/соединения/сортировки […]

Mysql индексы без боли: когда нужны, какие бывают и как ускорить запросы без вреда Читать далее »

Практика Css grid и flexbox: типовые раскладки для реальных проектов

Для практики CSS Grid и Flexbox берите реальные компоненты (карточки, шапка, сайдбар, списки) и собирайте их по правилу: двумерная раскладка — Grid, одномерное выравнивание — Flex. Дальше добавьте адаптивность через minmax() и auto-fit, проверьте переполнения и доступность, затем зафиксируйте соглашения и тесты на брейкпоинтах. Практические выводы по раскладкам Grid выбирайте для структуры страницы и сеток

Практика Css grid и flexbox: типовые раскладки для реальных проектов Читать далее »

Современные возможности javascript от Es6 до самых полезных новинок последних лет

Современные возможности JavaScript — это изменения стандарта ECMAScript и связанных API, начиная с ES6 и далее, которые упрощают архитектуру, делают код надёжнее и помогают быстрее доставлять изменения в продакшен. Если вы поддерживаете старый код, то внедряйте новинки поэтапно: сначала синтаксис и модули, затем асинхронность, после — точечные улучшения безопасности и оптимизацию сборки. Коротко о самых

Современные возможности javascript от Es6 до самых полезных новинок последних лет Читать далее »

Топ-50 вопросов для Faq веб-разработчика: что такое Cors и как работает cookie

Этот топ-50 — компактный FAQ веб-разработчика, который закрывает базовые и собеседовательные темы: сеть и браузерные политики (включая что такое CORS), управление доступом (как работают cookie, сессии, JWT), хранение и кеширование, API-дизайн, производительность и деплой. В каждом блоке — короткие ответы и быстрые альтернативы для ограниченных ресурсов. Краткие практические выводы по 50 вопросам веб-разработчика CORS —

Топ-50 вопросов для Faq веб-разработчика: что такое Cors и как работает cookie Читать далее »

Html5 семантика: как сделать разметку понятной браузеру, поиску и скринридерам

Чтобы HTML5-разметка была понятной браузеру, поиску и скринридерам, используйте семантические теги по назначению, стройте корректную иерархию заголовков, ограничьте количество landmark-областей, не дублируйте роли ARIA там, где хватает нативной семантики, и проверяйте результат автоматическими и ручными тестами доступности перед релизом. Краткая сводка по семантике HTML5 Сначала задайте каркас страницы: header/nav/main/footer, а затем наполняйте его контентными блоками.

Html5 семантика: как сделать разметку понятной браузеру, поиску и скринридерам Читать далее »

Нормализация vs денормализация: как принимать решения при проектировании базы данных

Оптимальный выбор между нормализацией и денормализацией делайте не «по вкусу», а по стоимости изменений и цене запроса: начинайте с нормализованной модели для скорости разработки и целостности, затем точечно денормализуйте только узкие места чтения. Решение фиксируйте критериями (нагрузка, SLA, бюджет на поддержку) и планом миграций. Основные решения при выборе нормализации Стартовать с нормализации базы данных как

Нормализация vs денормализация: как принимать решения при проектировании базы данных Читать далее »

Транзакции и уровни изоляции в mysql: когда возникают фантомы и как их избежать

Фантомные чтения в MySQL возникают, когда в рамках одной логической операции вы повторяете диапазонный запрос, а параллельная транзакция успевает вставить или изменить строки, попадающие в диапазон. Предотвращают их выбором уровня изоляции (вплоть до mysql serializable), корректными блокировками диапазонов и уникальными/проверочными ограничениями, а также проверяемыми сценариями тестирования. Короткая сводка по транзакциям и изоляции Фантомы связаны не

Транзакции и уровни изоляции в mysql: когда возникают фантомы и как их избежать Читать далее »

Mysql индексы без боли: как читать Explain и ускорять запросы

Чтобы ускорить запросы в MySQL без «боли», начните с чтения плана выполнения через mysql explain, затем подберите индекс под конкретные условия WHERE/JOIN и порядок сортировки. Индекс помогает серверу не сканировать лишние строки, но может замедлить записи. Действуйте по чек‑листу: диагностируйте план, внесите точечную правку индекса, перепроверьте фактическое время. Что проверить в первую очередь перед правкой

Mysql индексы без боли: как читать Explain и ускорять запросы Читать далее »

Проектирование Rest Api: соглашения, обработка ошибок, пагинация, версионирование и документация

Чтобы выстроить надежное проектирование REST API, зафиксируйте контракт ресурсов и URI, задайте правила для методов и идемпотентности, унифицируйте формат ошибок, выберите пагинацию и стратегию версионирования, а затем автоматизируйте документацию и примеры в CI. Такой порядок снижает регрессы при разработке REST API и упрощает поддержку клиентов. Практические выводы для проектирования REST API Начинайте с контракта: ресурсы,

Проектирование Rest Api: соглашения, обработка ошибок, пагинация, версионирование и документация Читать далее »

Php 8+: атрибуты, строгая типизация и Jit — что это даёт реальным проектам

PHP 8+ даёт практическую пользу, если вы используете его осознанно: атрибуты заменяют громоздкие докблоки и конфиги, новая типизация снижает число скрытых ошибок на проде, а JIT иногда ускоряет CPU‑тяжёлые участки. Безопасный подход — обновление до PHP 8 через тесты, статанализ и поэтапный рефакторинг, а не «переключили версию и поехали». Что важно помнить перед миграцией на

Php 8+: атрибуты, строгая типизация и Jit — что это даёт реальным проектам Читать далее »

Прокрутить вверх