До строительства электростанций на реке Ниагара поток воды, проходящий через водопад, более чем вдвое превышал современный. Тем не менее, в ночь с 28 на 29 марта 1848 г. он практически иссяк. В то время, благодаря каналам и железным дорогам, население местности и число туристов уже были велики, так что осталось много подробных свидетельств о случившемся. День начался с того, что людей разбудила непривычная тишина.Водопад без воды в 1969 г. Ревущий поток необъяснимо уменьшился до нескольких тон…
Команда Go for Devs подготовила перевод статьи о том, как отлаживать приложения на Go. Автор показывает, что баги бывают разными: воспроизводимые, случайные, гейзенбаги и конкурентные. А в арсенале Go-разработчика должны быть — TDD, стратегическое логирование, Delve, git bisect и даже онлайн-отладчик GoTutor.Не все баги одинаковы. Одни легко обнаружить и устранить с помощью отладчика. Другие могут проявляться редко или быть крайне неочевидными — искать их всё равно что искать иголку в стоге сен…
Я начала разработку интерактивного интерфейса для своего проекта «Florist». Центральным элементом сайта должен был стать интерактивный макет — с его помощью пользователь мог бы визуализировать различные цветочные дизайны, располагая в ячейках макета цветы из каталога. Я создала прототип, внедрила его в сайт и доработала окончательный дизайн до такой картинки: Концепт интерактивного макета реализован в два этапа: сначала пользователь выбирает количество цветов и форму букета из предложенных вар…
Service Worker + Push API + VAPID ключи + Notifications API = полноценные push-уведомления в браузере. Никаких внешних сервисов, полный контроль над функциональностью.В отличие от нативных приложений, веб-push не требует установки, обновляется автоматически и работает на всех платформах. Единственная сложность — особенности iOS, где Apple добавила поддержку только в 2023 году.Архитектура push-уведомленийСистема push-уведомлений — это сложная экосистема из четырех компонентов. Они работают вмест…
Команда JavaScript for Devs подготовила перевод статьи о том, почему браузеры намеренно замедляют выполнение setTimeout и других таймеров. Автор объясняет, как это связано с защитой пользователей, рассказывает о своём бенчмарке разных подходов (setTimeout, MessageChannel, scheduler.postTask) и делает прогноз, какие таймеры будут использоваться в будущем.Даже если вы давно пишете на JavaScript, вас может удивить, что setTimeout(0) на самом деле не совсем setTimeout(0). Вместо этого колбэк может …
Что представляет из себя данная статья?Когда я начал разбираться с Motion для React, то оказалось, что свежих обзорных статей почти нет — нашёл только несколько старых постов про framer-motion. Поэтому я решил написать свой обзор: перевёл и разобрал документацию (ссылки в конце), попробовал библиотеку в деле и собрал всё в одном месте. В статье есть примеры кода, GIF-анимации и описание хуков, которых, по моему личному мнению, достаточно, чтобы понять Motion, и, возможно, попробовать его руками…
Привет, Хабр! Я Ксюша, младший специалист по безопасности конечных устройств в Selectel. Мы с командой ежегодно проверяем наших сотрудников на внимательность с помощью фишинг-тестов. В этот раз решили отойти от формулы привычного фишинга и сделать что-то новое. Написали браузерное расширение на JavaScript, убедили Mozilla в своей честности, запустили весьма правдоподобную рассылку для сотрудников и немного поиграли на чувствах тех, кто верит, что ИИ будет работать за нас. Подробности под като…
На прошлой неделе обнаружилось, что малоизвестный удостоверяющий центр Fina выпустил 12 неавторизованных TLS-сертификатов для 1.1.1.1 (популярный DNS-сервис Cloudflare) с февраля 2024 по август 2025 года, причем без разрешения компании. Сертификаты могли использоваться для расшифровки запросов, зашифрованных посредством DNS over HTTPS и DNS over TLS.
В этом году ежегодный онлайн-кэмп для ИБ-специалистов CyberCamp пройдет с 20 по 25 октября. Главной темой четвертого кэмпа станет киберустойчивость. Регистрация уже открыта!