Привет, хабр! В этой статье на примере простого чата реализуем E2E шифрование.Продолжаем нашу серию статей по сетевой разработке на Go. В прошлой статье мы писали простейший TCP-чат. Наши сообщения в открытую гуляли в сети, что делало их простой мишенью для компрометации. В этой статье добавим в наш чат шифрование для безопасного обмена данными.Немного теорииЭта статья нацелена на простое понимание и применение на практике. На Хабре полно материалов, которые отлично и досконально разбирают все …
Я перекатываюсь из бэкенда на Go в сторону AppSec, и по дороге разбираюсь с темой, про которую у нас на русском пишут мало — рантайм-безопасность через eBPF. Хочу разложить идею: что это за инструменты, как они устроены изнутри, что уже есть в мире и почему именно сейчас на это смотрят в России. Без рекламы конкретного продукта, просто как карта местности для тех, кто думает, куда копать.С чего вообще растёт эта идеяАнтивирус и сканер уязвимостей проверяют систему в какой-то момент и уходят. Он…
В прошлой статье я остановился на версии 0.9.49. Казалось, что дальше всё должно было пойти по привычному сценарию: новые пользовательские возможности, новые экраны, немного полировки интерфейса и постепенное движение к большим функциям.Но следующие восемь дней разработки неожиданно пошли совсем по другому пути.За это время вышли четыре релиза: 0.9.50, 0.9.51, 0.9.52 и 0.9.53. Если открыть CHANGELOG, создаётся ощущение, что проект серьёзно продвинулся вперёд. Но если открыть сам Messenger, поль…
За свои 17+ лет в активной разработке я встречал много проблем, но одна преследовала меня постоянно: JSON. Нет, с самим форматом все ок, но вот с его чтением — не все норм.Когда я только начинал работать с PHP, я списывал это на скриптовость языка. Отчасти из‑за этого я даже поменял стек. Но когда приходили по‑настоящему большие файлы, это всегда было больно. Иногда — очень. Был проект, где мы ждали не обработку информации бизнес‑логикой, а банального парсинга. Файлы доходили до десятков гигаба…
ВведениеКазалось, что DatePicker от Cloude сразу был готов в prod, но:Я запустил NVDA, переключился клавишей Tab по нашему новому DatePicker'у, и фокус выскочил за пределы диалогового окна. В Storybook все работало нормально. Календарь открывался, даты менялись, состояние выбора срабатывало, и Claude написал приличную структуру на React, но как только в дело вмешался пользователь со screen reader'ом, все это перестало казаться готовым в prod.Привет, коллеги!Меня зовут Илья, я технически…
ВведениеЯ открыл демо-версию DatePicker'а, и она выглядела вполне обычно. Поле ввода, кнопка, всплывающий календарь, keyboard navigation, метки для screen reader'ов, макеты для настольных компьютеров и мобильных устройств.С внешней стороны ничего особенного. Интересным был не сам компонент, а то, как мы его создали.Привет, коллеги!Меня зовут Илья, я технический директор компании «Исходный код». Наша frontend-команда последние шесть месяцев занималась улучшением доступности компонентов R…
О СебеЗанимаюсь разработкой уже более 10 лет. За это время побывал на разных позициях начиная от рядового разработчика до руководителя Frontend департамента.До этого несколько лет в финтехе: проекты для Visa, p2p exchanger, Europe banking, crypto exchanges. Там углублялся в требования к скорости feature delivery и надёжности и именно оттуда пришло понимание, насколько критичен DX при высокой скорости разработки. Также были кейсы другого масштаба где была платформа на базе Module Federation, кот…
Пока фронтенд-инженеры продолжают пересобирать свои проекты на новых сборщиках, JavaScript как язык становится всё более зрелым, быстрым и безопасным. Мы собрали самые интересные новости из мира JS и TS за последние месяцы, мимо которых нельзя пройти.Встречаем ES2026: что нового в стандарте?Комитет TC39 согласовал список фич, которые официально войдут в стандарт ECMAScript 2026. Язык продолжает избавляться от старых болей:Explicit Resource Management (оператор using). Фича, которая долго обкаты…
Спасибо Фрэнку Герберту, что воспитал поколение хакеровnpm install — такая привычная многим из читателей команда, но за последние пару месяцев она обернулась сущим кошмаром для инженеров по безопасности. И ладно бы всё сводилось к проверке 5 пакетов из package.json, но у каждой зависимости по 10 своих зависимостей, а у тех ещё по 10. В итоге мы тянем 2000, а не 5 пакетов, и тут, кажется, уже руками не проверишь. И именно на этой боли всех безопасников, поддерживающих JS-проекты, сыграла команда…