, и она потрясающая! Напоминаю, f4 — эксперимент по переписыванию Far Manager на go, чтобы сразу и кроссплатформенно и асинхронно и красиво.С красоты и начнём! На днях во фреймворк консольных интерфейсов vtui, который пишется под f4, добавлена поддержка Auto layout. Можно делать диалоги как у Apple! А чтобы это смотрелось красиво, предусмотрены две стратегии хинтинга: байткод, по аналогии с тем, как это сделано для рендеринга шрифтов у TrueType, и эвристики, как у FreeType. Для этого потребовал…
Привет, Хабр.Я frontend-разработчик и большую часть времени работаю с Vue и TypeScript. В последнее время мне стало интересно глубже разобраться с backend-разработкой, но делать для этого отдельный учебный CRUD-проект не хотелось. Я уже сделал свою первую игру и написал о ней в этой статье. Новая игра задумывалась уже сложнее по механикам и без серверной работы в ней было не обойтись. Таким образом серверную часть я решил добавить в свою новую игру — 3D-игру три в ряд с персонажами, способностя…
Введение16 июня 2026 года исследователи Checkmarx изучили кампанию ChainVeil, использовавшую npm-пакеты для распространения многоступенчатых JavaScript-загрузчиков. И как раз недавно одному из моих знакомых (не)посчастливилось получить один из ранее неизвестных экземпляров.Репозиторий с AI-агентом ему посоветовал... AI-агент. Да, отправной точкой заражения стала рекомендация от AI-помощника, а после клонирования репозитория и локального запуска антивирус прервал выполнение и классифицировал обн…
Стейт-менеджеров в JavaScript уже столько, что идея написать ещё один выглядит немного сомнительно. Есть Redux Toolkit, Zustand, MobX, Jotai, XState и десятки менее известных библиотек. Почти для любого способа хранить состояние уже существует готовое решение. Но все же в качестве эксперимента, решил реализовать свою идею.Изначально я не собирался делать ещё один store с методами getState, setState и subscribe.Меня интересовала другая проблема. Во многих приложениях изменение состояния является…
Постановка и бизнес-процессИтак, проводится некое соревнование с раздельным стартом, и нам необходимо вести хронометраж. Для этого на старте и финише размещаются судьи, которые фиксируют время старта и финиша каждого участника. После завершения заезда все данные сводятся в итоговый протокол. Выглядит вполне просто и логично (пока что), но давайте погрузимся в детали.Что необходимо для выполнения основной задачиСписок участников с номерами и планируемым временем старта (для формирования протокол…
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…
40-летнего гражданина Беларуси Максима Сильникова, создателя и администратора вымогательской группировки Ransom Cartel, приговорили в США к 16 годам лишения свободы. По данным Министерства юстиции США, группировка атаковала как минимум 18 компаний по всему миру, а общий ущерб от этих атак превысил 6,7 млн долларов США.
Рассылка нового бумажного спецвыпуска «Хакера» уже идет полным ходом: многие читатели уже получили свои экземпляры, а остальные заказы постепенно отбывают с нашего склада. Тираж журнала, как всегда, ограничен, поэтому не советуем откладывать покупку в бэклог, чтобы потом не читать чужие отзывы с легким ощущением FOMO.
В прошлой статье про объекты и скорость доступа к известному полю я рассказал про hidden classes, inline cache и форму объекта. Практический совет там был простой: если поле опциональное, создай его сразу и положи null. Тогда экземпляры сохранят одинаковую форму.Совет рабочий, но неполный. Форма объекта у V8 может остаться прежней, а вот внутренний контракт хранения поля может измениться. Если горячая функция успела прогреться под старый контракт, V8 пометит её на деоптимизацию.Напомню, что для…