javascript
Первая в мире библиотека Web Components в духе shadcn. Серьёзно, я проверял

Окей, заголовок звучит максимально самоуверенно, я понимаю. Но насколько мне удалось нагуглить — это действительно первая попытка сделать что-то подобное. Если я не прав — напишите в комментах, я с удовольствием посмотрю на альтернативы. А пока давайте я расскажу, что это за зверь такой и зачем он вообще нужен.Предыстория, или как я дошёл до жизни такойВсё началось с микрофронтендов. Знаете, это когда у вас один проект, но внутри него живёт Vue, React, и ещё какой-нибудь легаси на jQuery, котор…

  • вторник, 2 декабря 2025 г. в 00:00:04
javascript
Идеально размещённые тултипы: по углам

Эта статья — перевод оригинальной статьи «Perfectly Pointed Tooltips: To The Corners».1 часть - Идеально размещённые тултипы: база2 часть - Идеально размещённые тултипы: все четыре стороныТакже я веду телеграм канал «Frontend по‑флотски», где рассказываю про интересные вещи из мира разработки интерфейсов.ВступлениеГотовы к последнему челленджу?Мы продолжаем делать тултипы, которые “следуют” за своим якорем, и на этот раз поработаем с новыми позициями и изучим новые приёмы. Я буду исходить из то…

  • вторник, 2 декабря 2025 г. в 00:00:03
javascript
Изменение размера выгружаемых файлов изображений в браузере

Иллюстрация к статьеПредставим распространённые ситуации:пользователь вашего сайта пытается выложить фото или другое изображение, но натыкается на фрюстрирующее сообщение об ошибке, гласящее, что размер файла непозволительно большой;ваше сайт активно использует изображения, присылаемые пользователями, и по мере роста аудитории, вы всё чаще сталкиваетесь с падением производительности серверов, а то и с падением оных.Данная статья предлагает решение данных проблем путём изменения и/или создания ф…

  • понедельник, 1 декабря 2025 г. в 00:00:03
javascript
Ответ фронтендера на «Не занимайтесь преждевременной оптимизацией»

TL;DR: В этой статье я хочу показать, почему распространённая фраза "не занимайтесь преждевременной оптимизацией" почти всегда используется неправильно, особенно в современных фронтенд-проектах. Я посмотрю на исторический контекст, разберу, что именно Кнут называл оптимизацией, и почему многие вещи, которые считаются "преждевременной оптимизацией", на деле — нормальная инженерная дисциплина.Я фронтендер, пишу на React, регулярно делаю код-ревью в проекте, над которым работаю сов…

  • понедельник, 1 декабря 2025 г. в 00:00:02
xaker
Группировка Bloody Wolf атакует Кыргызстан и Узбекистан с помощью NetSupport RAT

Специалисты Group-IB зафиксировали новые атаки хак-группы Bloody Wolf, которая с июня 2025 года нацелена на Кыргызстан, а с октября расширила свою активность и на Узбекистан. В зоне риска оказались финансовый сектор, госорганы и ИТ-компании.

  • воскресенье, 30 ноября 2025 г. в 00:00:06
xaker
Роскомнадзор сообщил, что WhatsApp может быть заблокирован в России

28 ноября 2025 года пользователи начали сообщать о проблемах в работе мессенджера WhatsApp. Как заявили в пресс-службе Роскомнадзора, ведомство последовательно вводит ограничительные меры в отношении WhatsApp из-за нарушения законодательства.

  • воскресенье, 30 ноября 2025 г. в 00:00:05
xaker
«Хакеры.RU»: роман о коде, свободе и поиске себя по-прежнему в продаже

Роман Валентина Холмогорова «Хакеры.RU» продолжает находить своих читателей. Если ты еще не успел познакомиться с историей Кикса и Трикси — самое время это исправить, ведь скоро на страницах «Хакера» начнет выходить продолжение! Книга доступна в двух форматах: классическое печатное издание с черно-белыми иллюстрациями и цифровая версия для тех, кто предпочитает читать с экрана.

  • воскресенье, 30 ноября 2025 г. в 00:00:05
golang
Миссия выполнима: как мы добились актуальности двух тысяч кешей

Привет! Меня зовут Влад, и я разрабатываю сердце витрины Ozon — сервис product-facade. Пару лет назад мы уже делились нашим опытом в этой статье, но с тех пор многое изменилось: выросли нагрузки, появились новые фичи и оптимизации, система стала сложнее и надёжнее. Прежде чем перейти непосредственно к актуальности кешей, давайте разберёмся, почему это так важно. Представьте: вы добавляете товар в корзину, но что-то пошло не так, и покупку совершить не удаётся — склад больше не возит в ваш ПВЗ. …

  • воскресенье, 30 ноября 2025 г. в 00:00:04
javascript
Цепочка ошибок в JavaScript: удобная отладка кода с помощью Error.cause

Обработка ошибок в JavaScript всегда была немного хаотичной. Получить ошибку легко, но отследить ее первоисточник бывает очень сложно. Именно здесь и приходит на помощь свойство cause.❯ Проблема классической обработки ошибокВ многоуровневом коде (например, сервисы, вызывающие другие сервисы, функции-обертки, «всплывающие» ошибки и т.д.) легко потерять нить того, что именно пошло не так. Обычно код при этом выглядит примерно так:try { JSON.parse('{ bad json }'); } catch (err) { throw…

  • воскресенье, 30 ноября 2025 г. в 00:00:02