javascript
Готовимся к отключению. Эффективные форматы для упаковки и раздачи HTML-страниц

В 2026 году растёт риск перебоев и ограничений в работе интернета в РФ. В таких условиях имеет смысл заранее продумать, как сохранить привычное окружение при нестабильном доступе к сети.Помимо личных файлов, кино и музыки, хочется сохранить архив сайтов и веб-страниц для чтения в будущем — на месяцы или даже годы вперёд. Но в каком формате это лучше делать?ПК для Апокалипсиса«ПК для Апокалипсиса» — офлайновая система, которая хранит полный набор необходимой информации для жизни без интернета. Э…

  • вторник, 21 апреля 2026 г. в 00:00:06
javascript
Один движок на два рантайма: как мой сайт на Next.js делит формулы с Flutter-приложением

Прошлой зимой я писал тут про «Мастерок» — строительный калькулятор на Flutter для RuStore. Приложение поехало в прод, набрало 4.9 звезды, и в какой-то момент пришло осознание: аудитория смартфонных приложений — это аудитория смартфонных приложений. А человек, который в обед нагуглил «сколько мешков ротбанда на 20 квадратов», в магазин приложений не полезет. Он хочет страницу в браузере. Желательно без куки-баннера на полэкрана, без интерфейса из 2012-го и без того, чтобы перед ответом на вопро…

  • вторник, 21 апреля 2026 г. в 00:00:04
github
koala73 / worldmonitor

Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interfaceWorld Monitor Real-time global intelligence dashboard — AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface.               Documentation  ·  Releases  ·  Contributing What It Does 435+ curated news feeds across 15 c…

  • вторник, 21 апреля 2026 г. в 00:00:02
golang
Приватная Cвязь на Go и Flutter

От автораВ последнее время очень хочется мессенджер, в котором: Нет центрального сервера Сообщения шифруются end-to-end и не хранятся в открытом виде нигде Любой при необходимости может поднять свой сервер легко и быстро и присоедениться к общей сети Один сетевой стек вместо зоопарка протоколовНа Go есть библиотека libp2p, поддерживает работу с множеством транспортов, имеет встроенную аутентификацию пиров и предоставляет фундамент для децентрализованных P2P-сетей, которую крайне интересно было…

  • понедельник, 20 апреля 2026 г. в 00:00:15
golang
DDD в Go без красивых схем: как один платеж получил три курса валют

Писать про DDD легко, пока в примерах User, Order и пара красивых стрелочек. В проде оно обычно выглядит менее аккуратно: у клиента в интерфейсе одна сумма, списывается другая, саппорт открывает админку и видит третью.Расскажу про платежный кусок, где мы на Go в какой-то момент уперлись в курсы валют. Названия сервисов чуть изменены, но суть та же. Это не история про “как мы построили идеальную архитектуру”. Скорее наоборот: сначала сделали нормально на вид, потом оно начало протекать в самых н…

  • понедельник, 20 апреля 2026 г. в 00:00:13
golang
Деконструкция GO: CPU, RAM и что там происходит. Reordering, atomics, locks, fences. Часть 1.3

С постановкой проблем в прошлой статье мы почти закончили и вывели самое важное – природу состояния гонки и состязания за кэш. В этой статье мы также разберем оптимизацию, порождающую часть проблем синхронизации – instructions reordering, а также механизмы решения вышеуказанных проблем.В этот раз снова будет Go Assembler, а также снова будут примеры на Go. В прошлый раз это было необходимое зло во имя соответствия реальностиНапоминаю, что эта статья – часть большого цикла разбора языка программ…

  • понедельник, 20 апреля 2026 г. в 00:00:12
javascript
Почему JS/TS — не функциональный язык (и почему это важно понимать)

Мотивацией для написания этого поста стали два года собеседований JS/TS-инженеров. Я интересуюсь языками и функциональным программированием, поэтому всегда «разбавлял» технические вопросы разговором о парадигмах. И заметил любопытную асимметрию.Об ООП кандидаты рассуждали уверенно — но в основном на концептуальном уровне, не вдаваясь в то, как именно ООП реализовано в JavaScript. С FP картина была другой: уверенности меньше, зато критика — конкретная и повторяющаяся: «иммутабельность дорогая по…

  • понедельник, 20 апреля 2026 г. в 00:00:10
javascript
108 окон: как команда без разработчиков и бюджета построила Интерактивный дом-таймлайн про ТВ 90-х

Привет, Хабр. Это история о том, как мы собрались и по вечерам за полгода создали интерактивный веб-проект про российское телевидение 90-х и 00-х.Сайт называется Окна.ТВ ссылка в конце. Заходите, скролльте и вспомните время, когда телевизор был нашим главным развлечением.Главный экран сайта — вид дома с окнами, таймлайн справа, десктоп Стек в двух словах: ванильный JS, собственная CMS, собственный видеоплеер, деплой в Kubernetes. По дороге познакомился с S3, OOM killer, mask-border и Safari — …

  • понедельник, 20 апреля 2026 г. в 00:00:08
javascript
Symbiote.js: суперспособности для веб-компонентов

Смысл создания и использования новых библиотек и фреймворков в том, чтобы решить задачи, которые не были решены ранее. Либо, в том, чтобы решить какую-либо задачу более эффективно, чем это уже было сделано кем-то.Сегодня мы начнем разговор о задачах, которые можно решать с помощью Symbiote.js, и делать это гораздо проще и элегантнее, чем с другими фреймворками.Symbiote.js - это легкая (~6 кб brotli), но очень мощная библиотека, основанная на веб-компонентах. Ее основным отличием от конкурентов …

  • понедельник, 20 апреля 2026 г. в 00:00:07