Как проектировать интерфейсы для уязвимых пользователей: почему ментальным health-приложениям нельзя гнаться за любыми UI-трендами
Трендовые решения часто повышают когнитивную нагрузку и делают навигацию непредсказуемой — в итоге человек в стрессе просто не находит нужную помощь и быстро уходит. Важно проверять каждый модный паттерн по пяти критериям: нагрузка, эмоциональное соответствие, надежность навигации, доступность и корректность механик вовлечения без давления/стыда.
https://smashingmagazine.com/2026/07/designing-distressed-users-mental-health-apps-ui/
Трендовые решения часто повышают когнитивную нагрузку и делают навигацию непредсказуемой — в итоге человек в стрессе просто не находит нужную помощь и быстро уходит. Важно проверять каждый модный паттерн по пяти критериям: нагрузка, эмоциональное соответствие, надежность навигации, доступность и корректность механик вовлечения без давления/стыда.
https://smashingmagazine.com/2026/07/designing-distressed-users-mental-health-apps-ui/
❤3🔥3👏1🤔1
ariaNotify(): как заставить скринридер проговорить текст
Новый метод
https://master.dev/blog/the-siren-song-of-arianotify/
Новый метод
ariaNotify() из WAI-ARIA 1.3 позволяет программно запускать озвучивание: передайте строку и (при необходимости) конфигурацию, например document.ariaNotify("Hello, World.").https://master.dev/blog/the-siren-song-of-arianotify/
👍3❤2⚡1
TypeScript 7.0 — самое радикальное обновление за 10 лет
TypeScript 7 ускоряет сборку и работу в IDE за счёт нативного порта, многопоточности и оптимизаций: полная сборка проекта до 8–12 раз быстрее, а цикл в --watch становится заметно короче. На реальных крупных open-source кодовых базах ускорение достигает почти 12×, а потребление памяти снижается на 6–26%.
https://habr.com/ru/companies/haulmont/articles/1057526
TypeScript 7 ускоряет сборку и работу в IDE за счёт нативного порта, многопоточности и оптимизаций: полная сборка проекта до 8–12 раз быстрее, а цикл в --watch становится заметно короче. На реальных крупных open-source кодовых базах ускорение достигает почти 12×, а потребление памяти снижается на 6–26%.
https://habr.com/ru/companies/haulmont/articles/1057526
👍22❤7⚡1
Frontend CTF, или Как связаны Мона Лиза и искусственный интеллект
История про ежегодный браузерный CTF, где флаги спрятаны в интерфейсе, коде и даже в видео/логах, а для прохождения нужны знания фронтенда, сетей и веб-стандартов. Разбираемся, как устроены уровни и задания: генерация идей, подготовка подсказок, автоматический деплой в изолированную среду и встраивание в сюжет, плюс что происходит при попытках «положить» сервер.
https://habr.com/ru/companies/yandex/articles/1051050/
История про ежегодный браузерный CTF, где флаги спрятаны в интерфейсе, коде и даже в видео/логах, а для прохождения нужны знания фронтенда, сетей и веб-стандартов. Разбираемся, как устроены уровни и задания: генерация идей, подготовка подсказок, автоматический деплой в изолированную среду и встраивание в сюжет, плюс что происходит при попытках «положить» сервер.
https://habr.com/ru/companies/yandex/articles/1051050/
👍4❤2👎1
backdrop-filter: blur() — как он работает и как его правильно использовать
https://habr.com/ru/articles/1057226/
backdrop-filter размывает не сам элемент, а то, что находится за ним, причём эффект считается на уровне compositing layers, поэтому DOM-логика вроде overflow: hidden может не сработать.https://habr.com/ru/articles/1057226/
❤6🔥4😢1
FixCSS: исправляем исторические ошибки в CSS
В CSS Working Group есть список старых проектных промахов, из‑за которых до сих пор приходится вручную обходить поведение вроде
https://master.dev/blog/fixcss/
В CSS Working Group есть список старых проектных промахов, из‑за которых до сих пор приходится вручную обходить поведение вроде
box-sizing: border-box в стартовых стилях. FixCSS предлагает починить эти нюансы библиотекой, чтобы не тащить постоянные костыли в код, но с понятным компромиссом по runtime‑стоимости. Если хотите прокачать понимание того, как CSS реально эволюционировал и почему многие практики закрепились, это отличный повод разобраться глубже.https://master.dev/blog/fixcss/
👍5❤2❤🔥1
Тамагочи TAMA-90: тамагочи из 90-х, собранный на JavaScript своими руками
Браузерный симулятор тамагочи по классической схеме яйцо → детёныш → взрослый → старый. Питомец рисуется прямо на canvas без спрайтов: эмоции и контуры получаются математикой и трюком с
https://habr.com/ru/companies/ruvds/articles/1057138/
Браузерный симулятор тамагочи по классической схеме яйцо → детёныш → взрослый → старый. Питомец рисуется прямо на canvas без спрайтов: эмоции и контуры получаются математикой и трюком с
globalCompositeOperation. Проект разбит на небольшие модули без сборщиков (HTML/CSS + набор скриптов), чтобы легко менять логику мини-игры или UI и не ловить расползание багов.https://habr.com/ru/companies/ruvds/articles/1057138/
❤7💩2👍1🔥1
Как получить оффер в Яндекс, Сбер, МТС и другие крутые компании?
На фото ребята из моего комьюнити, где уже больше 220 frontend-разработчиков. Все они успешно устроились в крутые компании и получили офферы от 300 тыс рублей 🫂
👋 Привет, меня зовут Тихон, я действующий Frontend-разработчик и ментор. За руку довожу до оффера в Big Tech и остаюсь рядом на испытательном сроке.
И у тебя тоже получится 😎
У меня есть канал, где я:
👉 Показываю, как пройти HR-фильтр и превратить отклики в реальные приглашения
👉 Помогаю найти мотивацию и разбираюсь с убеждениями, которые мешают расти
👉 На примерах показываю, как проходить собеседования, включая техничку
👉 Разбираю резюме и делюсь лайфхаками — например, как аккуратно «пинговать» рекрутеров
И регулярно выкладываю полезное:
▪️ Задачи, на которых валятся кандидаты
▪️ Подборка из 100+ каналов с вакансиями для разработчиков
▪️ 100 вопросов, которые помогут тебе на собеседовании
▪️ Чек-лист для проверки своего резюме
Подписывайся: https://xn--r1a.website/+-Y-h7mIuMJ9hNzBi
Реклама, erid: 2W5zFJmyDYm ИП Галактионов Тихон Витальевич, ИНН 771618975809
На фото ребята из моего комьюнити, где уже больше 220 frontend-разработчиков. Все они успешно устроились в крутые компании и получили офферы от 300 тыс рублей 🫂
👋 Привет, меня зовут Тихон, я действующий Frontend-разработчик и ментор. За руку довожу до оффера в Big Tech и остаюсь рядом на испытательном сроке.
В их жизни больше нет бесконечных скучных созвонов, безуспешных откликов на вакансии, странноватых собесов с вопросами словно ты на олимпиаде.
И у тебя тоже получится 😎
У меня есть канал, где я:
👉 Показываю, как пройти HR-фильтр и превратить отклики в реальные приглашения
👉 Помогаю найти мотивацию и разбираюсь с убеждениями, которые мешают расти
👉 На примерах показываю, как проходить собеседования, включая техничку
👉 Разбираю резюме и делюсь лайфхаками — например, как аккуратно «пинговать» рекрутеров
И регулярно выкладываю полезное:
▪️ Задачи, на которых валятся кандидаты
▪️ Подборка из 100+ каналов с вакансиями для разработчиков
▪️ 100 вопросов, которые помогут тебе на собеседовании
▪️ Чек-лист для проверки своего резюме
Подписывайся: https://xn--r1a.website/+-Y-h7mIuMJ9hNzBi
Реклама, erid: 2W5zFJmyDYm ИП Галактионов Тихон Витальевич, ИНН 771618975809
💩18👎7🤡3😐2
Ваше приложение может быть просто сайтом
Пример перевода приложения в формат веб страницы: когда установка — бесполезный шаг для пользователя. Через перехват сетевого трафика выясняем схема запросов к API и структура данных, после чего можно собрать компактную защищённую паролем веб-страницу без лишних функций
https://habr.com/ru/companies/ruvds/articles/1060106/
Пример перевода приложения в формат веб страницы: когда установка — бесполезный шаг для пользователя. Через перехват сетевого трафика выясняем схема запросов к API и структура данных, после чего можно собрать компактную защищённую паролем веб-страницу без лишних функций
https://habr.com/ru/companies/ruvds/articles/1060106/
💔4👍3⚡2😁1
Когда имеет смысл блокировать главный поток
Кратко о том, когда правило “не тормози main thread” можно нарушать. Разбираем пример screenshot-расширения с сериализацией Base64.
https://smashingmagazine.com/2026/07/when-makes-sense-block-main-thread/
Кратко о том, когда правило “не тормози main thread” можно нарушать. Разбираем пример screenshot-расширения с сериализацией Base64.
https://smashingmagazine.com/2026/07/when-makes-sense-block-main-thread/
👍4❤2🔥2🤔1
«Вы не знаете CSS»: вопросы о CSS с ответами, версия 2026 года
Проверка знаний CSS в формате вопросов: разбор специфичности с
https://habr.com/ru/companies/ruvds/articles/1057086/
Проверка знаний CSS в формате вопросов: разбор специфичности с
:has(), логики :focus-within, работы rem, inline-grid и нюансов применения margin при разных display и многое другое.https://habr.com/ru/companies/ruvds/articles/1057086/
🔥7❤🔥2👍2
Masonry с анимацией в CSS
https://master.dev/blog/masonry-with-animation-in-css/
display: grid уже умеет раскладку в стиле masonry через grid-lanes. Чтобы получить плавную перестановку без JS-логики, анимируют не сами карточки, а их внутренний слой: он привязывается якорями и двигается за счёт inset: anchor(inside) с transition.https://master.dev/blog/masonry-with-animation-in-css/
❤🔥7👍3
Анимация In-N-Out с sibling-index()
Фишка в CSS-функции
https://master.dev/blog/in-n-out-animation-using-sibling-index/
Фишка в CSS-функции
sibling-index(): при добавлении/удалении элементов индекс пересчитывается, а значит меняются значения translate, и включённый transition автоматически превращает перестроение DOM в плавную анимацию. Отлично подходит для аватаров, списков и сеток.https://master.dev/blog/in-n-out-animation-using-sibling-index/
🔥9❤2
Лучшие состояния загрузки — это когда их нет.
Вместо спиннеров и скелетонов прокачивайте стратегию preloading: заранее подгружайте данные и готовьте переходы между маршрутами, чтобы страница ощущалась как загруженная сразу. Route transitions не убирают загрузку полностью, но помогают перенести её на уровень приложения, делая UX стабильнее и предсказуемее в SPA.
https://master.dev/blog/the-best-loading-states-are-no-loading-states/
Вместо спиннеров и скелетонов прокачивайте стратегию preloading: заранее подгружайте данные и готовьте переходы между маршрутами, чтобы страница ощущалась как загруженная сразу. Route transitions не убирают загрузку полностью, но помогают перенести её на уровень приложения, делая UX стабильнее и предсказуемее в SPA.
https://master.dev/blog/the-best-loading-states-are-no-loading-states/
👍8💩7❤3
Как верстали 15 лет назад
Вырезки из книги по верстке 2004 года: забавные техники, которые были актуальны в то время.
https://habr.com/ru/companies/ruvds/articles/1060630/
Вырезки из книги по верстке 2004 года: забавные техники, которые были актуальны в то время.
https://habr.com/ru/companies/ruvds/articles/1060630/
❤11👻4👍2
Обфускация JavaScript в эпоху ИИ: всё ещё имеет смысл?
Обфускация не делает фронтенд секретным: браузерный код всё равно можно извлечь, но становится заметно сложнее читать, копировать и безопасно модифицировать. ИИ ускоряет понимание и может собирать правдоподобную чистую версию. Используйте обфускацию только как часть защиты, а реальные ключи, авторизацию и валидацию критичных правил держите на сервере.
https://www.jstools.space/blog/javascript-obfuscation-ai/
Обфускация не делает фронтенд секретным: браузерный код всё равно можно извлечь, но становится заметно сложнее читать, копировать и безопасно модифицировать. ИИ ускоряет понимание и может собирать правдоподобную чистую версию. Используйте обфускацию только как часть защиты, а реальные ключи, авторизацию и валидацию критичных правил держите на сервере.
https://www.jstools.space/blog/javascript-obfuscation-ai/
👍8🤡7
🔴 Тестовое собеседование с ТимЛидом Frontend-разработки в этот четверг
6 августа(в четверг!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Frontend-разработчика.
Как это будет:
📂 Алексей Романов, Teamlead в Underhood.dev с опытом 6+ лет, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Алексей будет комментировать каждый ответ респондента, чтобы дать понять, чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Алексею
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Frontend-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_front_bot
Реклама.
О рекламодателе.
6 августа(в четверг!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Frontend-разработчика.
Как это будет:
📂 Алексей Романов, Teamlead в Underhood.dev с опытом 6+ лет, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Алексей будет комментировать каждый ответ респондента, чтобы дать понять, чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Алексею
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Frontend-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_front_bot
Реклама.
О рекламодателе.
👍6💩2🤣1
Опенсорсная Весёлая Ферма: поднимаем preview‑окружения без боли.
Пример построения системы сборок. Preview‑окружения для каждого пул‑реквеста перестают быть ручной магией: код из ветки собирается, запускается изолированный инстанс и ему выдаётся уникальный URL, а проксирование трафика берёт на себя nginx/Ingress.
https://habr.com/ru/companies/yandex/articles/1064394/
Пример построения системы сборок. Preview‑окружения для каждого пул‑реквеста перестают быть ручной магией: код из ветки собирается, запускается изолированный инстанс и ему выдаётся уникальный URL, а проксирование трафика берёт на себя nginx/Ingress.
https://habr.com/ru/companies/yandex/articles/1064394/
👍7❤2💩2⚡1😁1🤔1
Конец адаптивных изображений.
Атрибут
Идея в том, чтобы перейти к Client Hints: браузер подсказывает серверу нужный размер, сервер присылает подходящее изображение, а разметка сводится к простому
https://master.dev/blog/ending-responsive-images/
Атрибут
sizes для <img> раньше был самым сложным: его синтаксис приходилось постоянно держать в актуальном состоянии вместе с CSS.Идея в том, чтобы перейти к Client Hints: браузер подсказывает серверу нужный размер, сервер присылает подходящее изображение, а разметка сводится к простому
<img src="" alt=""> (плюс не забыть про lazy loading).https://master.dev/blog/ending-responsive-images/
❤11🔥2
Переходы View Transitions: важно не сделать интерфейс некликабельным
Если не настроить View Transitions, псевдоэлемент
https://master.dev/blog/view-transitions-careful-not-to-make-stuff-unclickable/
Если не настроить View Transitions, псевдоэлемент
::view-transition может перекрыть весь вьюпорт на время анимации и блокировать клики по интерактивным элементам. Решение — отключить участие :root в снапшоте и убрать перехват событий у ::view-transition. Подробнее — в статьеhttps://master.dev/blog/view-transitions-careful-not-to-make-stuff-unclickable/
👍5❤3🤔1