javascript
Часть 1. Как я делаю backend для браузерной игры три в ряд: server-driven контент, транзакции и иде…

Привет, Хабр.Я frontend-разработчик и большую часть времени работаю с Vue и TypeScript. В последнее время мне стало интересно глубже разобраться с backend-разработкой, но делать для этого отдельный учебный CRUD-проект не хотелось. Я уже сделал свою первую игру и написал о ней в этой статье. Новая игра задумывалась уже сложнее по механикам и без серверной работы в ней было не обойтись. Таким образом серверную часть я решил добавить в свою новую игру — 3D-игру три в ряд с персонажами, способностя…

  • понедельник, 17 августа 2026 г. в 00:00:09
javascript
TRON, Aptos и BSC в одной цепочке заражения: расследование JavaScript-загрузчика, связанного с Chai…

Введение16 июня 2026 года исследователи Checkmarx изучили кампанию ChainVeil, использовавшую npm-пакеты для распространения многоступенчатых JavaScript-загрузчиков. И как раз недавно одному из моих знакомых (не)посчастливилось получить один из ранее неизвестных экземпляров.Репозиторий с AI-агентом ему посоветовал... AI-агент. Да, отправной точкой заражения стала рекомендация от AI-помощника, а после клонирования репозитория и локального запуска антивирус прервал выполнение и классифицировал обн…

  • понедельник, 17 августа 2026 г. в 00:00:08
javascript
Когда setState недостаточно: как я написал транзакционный стейт-менеджер на TypeScript

Стейт-менеджеров в JavaScript уже столько, что идея написать ещё один выглядит немного сомнительно. Есть Redux Toolkit, Zustand, MobX, Jotai, XState и десятки менее известных библиотек. Почти для любого способа хранить состояние уже существует готовое решение. Но все же в качестве эксперимента, решил реализовать свою идею.Изначально я не собирался делать ещё один store с методами getState, setState и subscribe.Меня интересовала другая проблема. Во многих приложениях изменение состояния является…

  • понедельник, 17 августа 2026 г. в 00:00:05
javascript
Зачем всё так сложно: постановка и архитектура

Постановка и бизнес-процессИтак, проводится некое соревнование с раздельным стартом, и нам необходимо вести хронометраж. Для этого на старте и финише размещаются судьи, которые фиксируют время старта и финиша каждого участника. После завершения заезда все данные сводятся в итоговый протокол. Выглядит вполне просто и логично (пока что), но давайте погрузимся в детали.Что необходимо для выполнения основной задачиСписок участников с номерами и планируемым временем старта (для формирования протокол…

  • понедельник, 17 августа 2026 г. в 00:00:04
github
akitaonrails / ai-memory

Solution for long term memory for agent coding CLIs and to facilitate handoff between different agent vendors Long-term memory for AI coding agents. Quit Claude Code mid-task, start OpenAI Codex in the same directory, continue without re-explaining the architecture, the failed approaches, or the open questions. Support Matrix Area Status Notes Linux Supported Primary Docker/server target and CI platform. Published Docker images support linux/amd64 and linux/arm64. N…

  • понедельник, 17 августа 2026 г. в 00:00:03
xaker
Создатель Ransom Cartel получил 16 лет тюрьмы

40-летнего гражданина Беларуси Максима Сильникова, создателя и администратора вымогательской группировки Ransom Cartel, приговорили в США к 16 годам лишения свободы. По данным Министерства юстиции США, группировка атаковала как минимум 18 компаний по всему миру, а общий ущерб от этих атак превысил 6,7 млн долларов США.

  • воскресенье, 16 августа 2026 г. в 00:00:10
xaker
Четвертый бумажный спецвыпуск «Хакера» уже едет к читателям

Рассылка нового бумажного спецвыпуска «Хакера» уже идет полным ходом: многие читатели уже получили свои экземпляры, а остальные заказы постепенно отбывают с нашего склада. Тираж журнала, как всегда, ограничен, поэтому не советуем откладывать покупку в бэклог, чтобы потом не читать чужие отзывы с легким ощущением FOMO.

  • воскресенье, 16 августа 2026 г. в 00:00:09
javascript
Смена типа в объекте тоже не бесплатна

В прошлой статье про объекты и скорость доступа к известному полю я рассказал про hidden classes, inline cache и форму объекта. Практический совет там был простой: если поле опциональное, создай его сразу и положи null. Тогда экземпляры сохранят одинаковую форму.Совет рабочий, но неполный. Форма объекта у V8 может остаться прежней, а вот внутренний контракт хранения поля может измениться. Если горячая функция успела прогреться под старый контракт, V8 пометит её на деоптимизацию.Напомню, что для…

  • воскресенье, 16 августа 2026 г. в 00:00:07
github
MakazhanAlpamys / Soup

Fine-tune LLMs from one YAML. Layer streaming trains an 8B model on a 4 GB laptop GPU. Soup Fine-tune and post-train LLMs in one command. No SSH, no config hell. Website · Quick Start · Config · Docs · Commands · Models · Discord · Product Hunt Soup turns the pain of LLM fine-tuning into a simple workflow. One config, one command, done. pip install "soup-cli[train]" # add [train] to fine-tune; bare…

  • воскресенье, 16 августа 2026 г. в 00:00:05