golang
Как один сервер на Go держит 2500 бойцов в браузерной драке

стенка на стенкуЯ делаю Brawl Town - браузерную драку в духе Final Fight и Streets of Rage. На одной улице дерутся игроки и боты. Установки и регистрации нет: достаточно открыть игру и выбрать ник. Проект разрабатываю один.Мне хотелось понять, сколько бойцов можно обсчитывать в одном процессе на обычном ПК. В текущем нагрузочном тесте i7-7700K выдерживает 2500 подключённых клиентов на улице шириной 3600 px: тик занимает 28–31 мс при бюджете 50 мс. Если собрать всех на одном экране, время выраст…

  • понедельник, 19 октября 2026 г. в 00:00:13
golang
YPtun

Xray, sing‑box, WireGuard и DNS‑туннель в одном процессе: как устроен YPtun изнутриПроект начинался как Olcbox, маленький конфигуратор для одного экспериментального транспорта. Следы того времени до сих пор живут в коде: версия передаётся в Gradle флагом -Polcbox.version, пакеты называются org.olcbox.app, а главный сервис называется OlcboxVpnService. Переименовывать всё это ни у кого не поднимается рука, и ниже будет понятно почему: одно только переименование applicationId заняло два релиза.Сей…

  • понедельник, 19 октября 2026 г. в 00:00:12
golang
Возвращение в прошлое, которого у нас ещё не было

Интернет когда-то выглядел иначе. До бесконечных лент, рекомендательных алгоритмов и личных брендов существовали BBS, локальные сети, IRC, форумы и имиджборды. Пользователь приходил туда не ради собственного профиля, а ради темы, разговора или случайной встречи с незнакомым человеком.У этих систем было много ограничений. Соединение могло быть медленным, интерфейс — текстовым, а навигация — целиком клавиатурной. Но именно ограничения часто делали общение более прямым. На экране не было десятка у…

  • понедельник, 19 октября 2026 г. в 00:00:11
javascript
Как я подружил блок‑головоломку с Шопеном на WebAudio

Я делаю Blocturne, головоломку с блоками для Telegram. Механика знакомая по Block Blast: поле 8×8, три фигуры в лотке, собираешь ряды и столбцы. Сверху прикручен подсчёт как в Balatro: фишки умножаются на множитель, между раундами лавка с предметами. Но рассказать хочу про звук, потому что с ним я провозился дольше, чем со всем остальным.Хотелось, чтобы звуки ходов попадали в музыку, а не играли поверх неё. В итоге получился маленький музыкальный движок, отдельный режим для слабых Android и пар…

  • понедельник, 19 октября 2026 г. в 00:00:09
javascript
Среда исполнения JavaScript в браузере по стандарту HTML: агенты, event loop, task'и и микрозадачи

Это продолжение статьи «Модель исполнения JavaScript по спецификации ECMAScript: call stack, контексты, окружения и замыкания». Если ты её не читал, лучше начать с неё: агент, Realm Record, execution context, execution context stack и Job здесь заново не объясняются.Обычно браузер представляют так: у каждой вкладки свой поток и свой event loop, а промис срабатывает раньше таймера, потому что микрозадачи приоритетнее макрозадач. На практике этого хватает, но в стандарте HTML всё устроено иначе. …

  • понедельник, 19 октября 2026 г. в 00:00:08
github
Kruk2 / jasna

Video restoration tool The only places to get a genuine License code for the supporter models are Buy Me a Coffee, Unifans, and for China the seller in the Chinese README. 支持者模型的正版许可证码只能通过 Buy Me a Coffee、Unifans 或 闲鱼 获取。 English | 日本語 | 中文 Jasna Jasna restores mosaics in videos and images. It is free, has a simple app and a command line, and runs on your GPU. Contents Start here What Jasna does What you need Quick start Help and community Supporting the project (supporter models) Advanced…

  • понедельник, 19 октября 2026 г. в 00:00:07
xaker
В Android появится ИИ-защита от мошеннических звонков

В Google анонсировали новые защитные механизмы Android, которые должны уберечь пользователей от мошеннических сообщений, фальшивых звонков из банков и злоупотреблений переадресацией вызовов. Для обнаружения угроз будут использоваться облачная модель Gemini и локальная модель Gemini Nano. Новые функции постепенно появятся на поддерживаемых Android-устройствах.

  • воскресенье, 18 октября 2026 г. в 00:00:10
xaker
Продолжается сбор предзаказов на ежеквартальный «Хакер» #4

Работа над четвертым и последним в 2026 году ежеквартальным номером «Хакера» идет полным ходом, и мы продолжаем собирать предварительные заказы. В новый выпуск войдут более 20 лучших материалов последних месяцев: от создания собственной сотовой сети с шифрованием до разбора байт-кода виртуальной машины Ethereum.

  • воскресенье, 18 октября 2026 г. в 00:00:10
golang
ccswap: переключаю Claude Code между своими подписками без прокси и перезапуска

У меня несколько своих подписок Claude, и Claude Code работает почти весь день: я пишу сам, параллельно крутятся агенты. Пятичасовой лимит заканчивается в самый неудобный момент, недельный — задолго до конца недели. Дальше всё одинаково: открыть терминал, выйти, залогиниться другим аккаунтом в браузере, вернуться в сессию и вспомнить, на чём остановился. В какой-то момент мне надоело делать это руками.Так появился ccswap — демон на Go для macOS и Linux. Когда текущий аккаунт подходит к лимиту (…

  • воскресенье, 18 октября 2026 г. в 00:00:08