Я делаю Blocturne, головоломку с блоками для Telegram. Механика знакомая по Block Blast: поле 8×8, три фигуры в лотке, собираешь ряды и столбцы. Сверху прикручен подсчёт как в Balatro: фишки умножаются на множитель, между раундами лавка с предметами. Но рассказать хочу про звук, потому что с ним я провозился дольше, чем со всем остальным.Хотелось, чтобы звуки ходов попадали в музыку, а не играли поверх неё. В итоге получился маленький музыкальный движок, отдельный режим для слабых Android и пар…
Это продолжение статьи «Модель исполнения JavaScript по спецификации ECMAScript: call stack, контексты, окружения и замыкания». Если ты её не читал, лучше начать с неё: агент, Realm Record, execution context, execution context stack и Job здесь заново не объясняются.Обычно браузер представляют так: у каждой вкладки свой поток и свой event loop, а промис срабатывает раньше таймера, потому что микрозадачи приоритетнее макрозадач. На практике этого хватает, но в стандарте HTML всё устроено иначе. …
Простите, что без пафоса. Просто сидел на созвоне и увидел, что в OpenCode раздают бесплатные китайские нейронки GLM 5.3 Flash и DeepSeek 4.1 Flash. Решил попробовать, скачал, взглянул — мама родная, там с thinking вообще не пробиться, сервера падают с ошибкой.Ладно, думаю, посмотрим, что будет с нулевым уровнем размышлений. Без всякой надежды, ради смеха и во имя Фрэнсиса Бэкона просто закидываю тупейший промпт, от одного вида которого у вас должны закровоточить глазаНапиши 3D игру — машина ед…
У моего голосового ИИ-администратора Айки уже были голос, сценарий разговора и работающая страница. Не было лица. Я хотел его добавить, сохранив Yandex Realtime: пусть новый сервис получает готовый звук и двигает под него губами.Попробовал Simli и Anam. Лицо появилось, но вместе с ним пришлось разбираться с паузой перед ответом, запуском видео на iPhone и мобильным интернетом. А на втором персонаже, Еве, выяснилось, что убедительность портрета зависит не только от лица, но и от того, что у него…
Делал интерактивную открытку на день рождения и хотел, чтобы картинка не просто появлялась, а «рисовалась»: сначала карандашные линии, потом по касанию её заливает акварель, причём с рваным краем, как у краски, которая впитывается в бумагу.Готовых решений под такое не нашёл. Видео не подходило: нужна была реакция на тап и чёткость на любом экране. В итоге всё собралось на чистом SVG, двух фильтрах и пятидесяти строках JS. Ниже разбираю по шагам, с кодом и граблями, на которые наступил.Что получ…
В прошлой статье я показал короткий тест с передачей пропсов. Теперь разберу компонент чуть подробнее: сначала приведу код к тому виду, в котором мне удобно с ним работать, а потом проверю его через свою библиотеку Shallowly.Начнём с панели профиля. Пока данные грузятся, она показывает сообщение. Когда профиль готов — передаёт имя в карточку. Входных пропсов у самой панели пока нет, усложнять пример ими не будем.Исходный компонентimport { UserCard } from './UserCard'; import { useProfil…
Последние месяцы я делаю 3D‑мир, который работает прямо в браузере — на Three.js: сцена, персонажи, сеть.Самое неприятное в производительности браузерного 3D — не ошибки. Ошибку видно: она в консоли, у неё есть стек и виновник. А есть второй класс проблем: всё работает, ничего не падает, просто тормозит. Консоль чистая, кадры падают, и непонятно, с чего начинать.Речь про Three.js, но большинство выводов переносится на любой WebGL‑стек.Почему речь про слой, а не про «ещё один 3D‑мир»Когда говоря…
Pro-сборка была важным этапом в развитии GigaIDE: она позволила быстрее развивать профессиональные инструменты, собирать обратную связь от корпоративных пользователей и проверять сценарии, которые выходят за рамки Community-версии. Но у отдельного дистрибутива есть и обратная сторона: пользователю нужно выбирать сборку, командам — отдельно управлять установками, а продукту — поддерживать лишнюю развилку там, где её уже можно убрать.Поэтому мы упростили модель поставки. На GitVerse уже вышел еди…
Если следить за React только по крупным релизам, легко пропустить момент, когда библиотека тихо меняет направление. React 19.3 — как раз такой случай. Сам релиз вышел 9 сентября 2026 года. И я хочу поделиться парой моментов из этого обновления. Рассмотрим пару хуков это ViewTransition и Fragment Refs. Еще, что я могу выделить, это новые возможности для SSR, Server Components и работы с браузерными API. Самое интересное тут даже не в том, сколько новых API добавили. Просто React постепенно перет…