Feed aggregator

Как Reserve реализует on-chain индексы: разбор Index DTF

Habr.com - 1 hour 50 min ago

Идея Reserve простая: взять токены, упаковать их в один ERC-20 и получить on-chain индекс, который можно минтить, сжигать и ребалансировать без кастодианов и ручного управления. Но за простотой спрятана бизнес-логика: от расчёта доли пользователя в индексе до механизма ребалансировки.

В статье я разбираю Index DTF в Reserve Protocol: архитектура смарт-контрактов, процессы mint и redeem индекса, механизм ребалансировки через голландские аукционы, управление индексом и риски протокола. Если интересно, как на практике реализован «децентрализованный ETF», то мой разбор про это.

Читать далее

Как я перестал слушать «Unknown Artist — Track 01» и написал свой распознаватель музыки

Habr.com - 5 hours 5 min ago

12 000 MP3 без тегов, 15 лет прокрастинации, один выходной на код. Асинхронный распознаватель на Python + Shazam: как обойти rate limiting, починить кривые кодировки и не съесть всю память. Код открыт.

Читать далее

Wine 11.0

Linux.org.ru - 6 hours 27 min ago

После года разработки и 25 экспериментальных версий представлен стабильный релиз открытой реализации Win32 API – Wine 11.0, который вобрал в себя более 6300 изменений и 600 исправлений ошибок. Из ключевых достижений в Wine 11.0 выделяется полная поддержка NTSYNC, механизм Reparse Point, задействование новой реализации архитектуры WoW64, новый бэкенд отрисовки на базе EGL, поддержка буфера обмена и методов ввода в окружениях на базе Wayland, улучшение поддержки Bluetooth и сканеров.

В Wine подтверждена полноценная работа 5419 программ для Windows (год назад 5372, два года назад 5336, три года назад 5266), ещё 4500 программ (год назад 4435, два года назад 4397, три года назад 4370) прекрасно работают при дополнительных настройках и внешних DLL. У 4086 программ (год назад 4020, два года назад 3943, три года назад 3888) наблюдаются небольшие проблемы в работе, которые не мешают использованию основных функций приложений.

( читать дальше... )

 

Roo Code для тестировщика: как превратить обязательные запросы к DeepSeek в реальную пользу

Habr.com - 7 hours 45 min ago

Знакомо? Модульный проект, где непонятно, откуда что берётся. Тест не видит элемент, хотя он точно есть на экране. А ещё в компании развернули локальный DeepSeek и установили норму запросов — и вы честно её выполняете, копируя куски кода в чат и получая ответы уровня «попробуйте проверить id элемента».

Проблема не в AI. Проблема в том, что чат не видит ваш проект.

Покажу, как подключить тот же корпоративный DeepSeek через Roo Code — и вместо абстрактных советов получать анализ конкретно вашего кода. С промтами для Kaspresso, решением проблемы «невидимых» id и миграцией с Espresso.

Читать далее

[Перевод] Хватит неправильно использовать localStorage в React

Habr.com - Wed, 01/14/2026 - 23:22

localStorage кажется простым решением, пока приложение не начинает расти. useEffect, useState, рассинхронизация между компонентами, проблемы с SSR и отсутствие типизации быстро превращают его в источник багов и хаоса.

В этой статье я показываю, почему localStorage стоит рассматривать как external store, а не как обычный state React, и как правильно работать с ним с помощью useSyncExternalStore. Мы шаг за шагом усложняем реализацию: добавляем строгую типизацию, реактивность между компонентами и вкладками, поддержку sessionStorage, валидацию данных и SSR-совместимость — без Redux и лишней инфраструктуры.

Материал основан на реальном коде и практических сценариях. В конце я показываю финальную архитектуру и готовую библиотеку, которую можно использовать в продакшене, если вам нужен безопасный и предсказуемый доступ к localStorage в React-приложениях.

Читать далее

Мы пробили новое дно: change request-ы и баг-репорты, которые никто не понимает

Habr.com - Wed, 01/14/2026 - 22:49

Мы, кажется, пробили новое дно.
И что особенно удивительно, Карл! — аккуратно, без паники, с хорошей формулировкой и абзацами.

Я сначала не понял, что стало происходить. Было ощущение странного дежавю: читаю change request или баг‑репорт, киваю, вроде всё логично... но что‑то не так, как будто где это уже читал. Слова правильные. Причинно‑следственные связи на месте. Термины употреблены верно. Пытаюсь понять в чём проблема — ноль. Как будто читаешь инструкцию к микроволновке, а не описание реальной проблемы. Пытаюсь прочитать ещё раз и ещё раз — с трудом продираюсь через текст с каким‑то смутным понимаем того, что написано.

И тут до меня доходит - как обухом по голове.
Мои дорогие гении из техподдержки и продакт менеджер нашли «идеальный» способ сэкономить на обсуждении технической стороны проблемы со мной. И действительно, зачем? Клиент что‑то спросил. Они прогнали это через ИИ. И ИИ вник. Глубоко. Старательно. Затем сгенерировал текст, старательно объясняя мне что нужно добавить, починить и даже каким образом это сделать (не имея даже понятия о нашей кодовой базе).

И вот тут я реально взбесился. И не тихо так, а очень даже громко.

Читать далее

Baseline: декабрь 2025

Habr.com - Wed, 01/14/2026 - 22:27

Обзор на браузерные API, которые стали Widely available в декабре 2025. Раз в месяц я буду вам напоминать, что вы уже можете использовать в проде.

Каждый месяц выходят новые CSS-свойства, HTML-атрибуты, JavaScript-методы и WebAPI, но применять в проде мы их конечно же не будем. 2.5 года назад также каждый месяц выходили новые фичи в браузере, а вот их уже пора начинать применять.

Узнать, что можно применять в проде

Обоснованность критериев свободы программного обеспечения GNU

Habr.com - Wed, 01/14/2026 - 22:12

Данная статья была впервые опубликована в июле 2024 года. В ней разбирается, пожалуй, самый популярный миф о свободном программном обеспечении. Будто критерии свободы, обозначенные проектом GNU лишь снижают свободу пользователей. Поскольку этот миф столь же живуч, что и иные мифы о свободном ПО, разобранные в статье о соотношении свободы и приватности с безопасностью, — данная работа также не потеряла актуальности. Ее текст остался без изменений, однако, как и в случае с упомянутой статьей, некоторые ссылки на источники были заменены на более удобные.

Читать далее

Учет доходов на маркетплейсе: где деньги?

Habr.com - Wed, 01/14/2026 - 21:51

На маркетплейсе главная ловушка простая: вы управляете бизнесом по цене и «выручке», а живёте на выплате «к перечислению» — то есть на деньгах, которые реально приходят на счёт.

Читать далее

За что на самом деле платят ваши пользователи: декомпозиция ценности, которую не покажут метрики

Habr.com - Wed, 01/14/2026 - 21:12

“Надо увеличить ценность нашего продукта!” - фраза, которую произнес, пожалуй, каждый продакт хотя бы раз за свою карьеру. Эта фраза уже так набила оскомину, что уже потеряла всякий смысл.

А вот такой фразой “это не увеличивает ценность продукта для пользователей” отшиваются многие неугодные инициативы будь-то от команды или от СЕО.

Но что скрывается за этим мифическим термином “ценность для пользователя”?

Давайте разбираться.

Читать статью

Поиск решений управляемый данными. Информационный блок

Habr.com - Wed, 01/14/2026 - 21:11

В предыдущей статье "Почему нейросети не заменят прикладных специалистов: простая логика против вероятностных подходов" рассматривались общие вопросы поиска решений управляемого данными. Эта информационная технология, основанная на простой логике, позволяет оперативно вести диалог с пользователем, используя накопленные в процессе поиска решения данные. Для того чтобы это работало - требуется фрагментировать знания предметной области в виде функций с заданными областями допустимых значений входящих в них параметров.

В данной статье рассматривается вопрос о представлении предметных знаний в виде общедоступных документов, позволяющих интерпретировать их, как вышеозначенные функции и затем использовать в качестве компонентов базы знаний.

Всё нижеследующее, хорошо всем известно, но в контексте поиска управляемого данными обретает новый смысл и функциональность.

ПРИМЕЧАНИЕ. В качестве примера выбрана реальная задача из медицинской практики связанная с назначением антирабической помощи. Антирабическая помощь необходима для исключения заболевания бешенством после контакта с домашним или диким животным. Бешенство смертельно опасное заболевание. От правильности врачебных назначений зависит жизнь обратившегося за медицинской помощью. Имеется инструкция, регламентирующая действия по оказанию антирабической помощи, которая и является первоисточником базы знаний. Несмотря, на кажущуюся простоту выбор лечения (профилактики) требует чёткого анализа ситуации и учёта многих факторов. Экспертная система в диалоге управляемом данными не позволит ничего пропустить и предложит безошибочное решение.

Читать далее

Самые красивые и технологичные игры 2025 года

Habr.com - Wed, 01/14/2026 - 21:04

Графика в видеоиграх не главное. Однако именно она олицетворяет технологический прогресс индустрии. Сложные системы освещения, фотореалистичные материалы, физика, которая ощущается в каждом движении, и лицевые анимации, от которых трудно отвести взгляд — это именно то, для чего энтузиасты сегодня покупают флагманские видеокарты и OLED-панели.

В прошедшем игровом году мы лицезрели, как мрачное средневековье превращается в почти осязаемую реальность, как феодальная Япония оживает в мельчайших деталях, как Сицилия начала XX века дышит солнцем и пылью, а постапокалиптические пейзажи Америки снова зовут в путь.

В нашей подборке 10 игр, которые в 2025 году стали эталоном визуального и технического исполнения: от исторических реконструкций, до театральных постановок и научной фантастики, снятой на старую видеокассету.

Читать далее

Как правильно ставить учебные цели. Разница между мечтой и целью

Habr.com - Wed, 01/14/2026 - 20:51

Кажется, что цели ставить легко: мы вроде бы чётко понимаем, чего хотим. «Хочу быть богатым». «Хочу начать ходить в зал и быть спортивным» и тд.

Но то, что большинство целей и всех наших «с понедельника начну» проваливаются — тоже правда. А значит, легко не то, чтобы ставить цели — легко мечтать.

А вот ставить цели, да так, чтобы действительно к ним прийти, и не увязнуть в прокрастинации, не так уж и легко.

Тем, как правильно это делать, мы сегодня и займёмся.

Читать далее

Minecraft на Unity. Логика разрушения блоков

Habr.com - Wed, 01/14/2026 - 20:42

Продолжаю разрабатывать Minecraft на движке Unity. В этой статье я покажу мою реализацию разрушения блоков - перестройки чанков. Это будет моя вторая реализация.

Перед прочтением этой статьи, советую ознакомиться с моей предыдущей статьей.

Моя первая логика основывалась на полной перестройке чанка после удаления блока. Это работало без багов и не сильно влияло на производительность. Но я решил поэкспериментировать со своей игрой, поставил высокую скорость разрушения и блоки разрушались 1 блок за кадр или около 100 - 300 блоков в секунду. При таком раскладе игра начинала тормозить, не сильно, но заметно. Конечно я не планировал оставлять такую скорость разрушения, но, если я могу увеличить производительность, то нужно реализовывать.

Как же на меня ругался ИИ, когда я скидывал ему свой код. Он мне советовал остановиться на полной перестройке чанков (моя первая логика), но я все же ее переделал, и остался доволен результатом.

Далее расскажу о всех деталях:

Первым делом я вынес Mesh и его параметры (Vertices, Triangles и т.д.)

Читать далее

Langium — инструмент для языкового моделирования

Habr.com - Wed, 01/14/2026 - 20:15

Разработка собственных языков и языковых серверов может быть сложной и рутинной задачей. Langium — инструмент на TypeScript, который упрощает создание предметно‑ориентированных языков (DSL) с готовым LSP‑сервером.

Меня зовут Денис Маматин, я работаю в R&D‑отделе СберТеха. В ходе разработки одного из наших проектов мы столкнулись с необходимостью создания собственного DSL, и в этом нам существенно помог Langium. В этой статье я рассмотрю, как устроена грамматика Langium, как создать первый проект и какие преимущества он даёт разработчику.

Читать далее

Процесс vs результат — ложная дихотомия: на разных уровнях управления оптимизируются разные метрики

Habr.com - Wed, 01/14/2026 - 19:38

В компаниях регулярно всплывает спор, который очень похож на инженерный: «Мы делаем правильно, но медленно» vs «Мы делаем быстро, но криво».

На уровне разговоров это обычно превращается в конфликт стилей:

Читать далее

Как я набрал 100 млн подписчиков за 1 наносекунду

Habr.com - Wed, 01/14/2026 - 19:37

Прости, дружище, я обманул тебя. Никаких 100 миллионов подписчиков у меня нет. Но не спеши уходить. Обещаю - будет интересно.

Я микро-автор канала DevOps Brain и это рассказ о том как у меня не получается раскрутить свой канал про инфраструктуру, сети и программирование не смотря прилагаемые усилия.

Тут не будет «успешного успеха», который сочится из любой дырки. Тут будет про боль, ошибки, предрассудки, разочарования и почему я не сдамся.

Читать далее

HADI цикл: как научить AI-агента учиться на своих ошибках и нешаблонно мыслить

Habr.com - Wed, 01/14/2026 - 19:28

Цикл научного метода для AI в коде Python:
Hypothesis — формируешь гипотезу
Action — действуешь на её основе
Data — собираешь данные
Insight — делаешь вывод

Читать далее

Feedback loops в геймификации: как циклы обратной связи удерживают внимание и деньги клиентов

Habr.com - Wed, 01/14/2026 - 19:25

Удивительное наблюдение. Товарищ жалуется на нехватку сил:

— А как ты отдыхаешь? — интересуюсь я.
— А как-как — дела закончу и могу в комп поиграть. — рассказывает он хвастая своими игровыми новинками.
— И играешь небось с того же компа на котором 5 минут назад работать закончил? — Ну да…

Мы с вами знаем таких людей: может отпахать 10-ти часовую смену, а потом засесть еще и в игру.

Парадокс. Люди часами-днями рубят монстров в игре на износ. Тратят время, силы, ресурсы, разгоняют психику. Устают, а усталости не чувствуют.

И внедряя геймификацию в бизнес мы формируем такой же эффект. Нам надо, чтобы люди тратили (или зарабатывали нам) деньги и не задумывались. Чтобы были увлечены процессом, как игрой.

Как так получается?
Есть одна вещь, которая хорошо объясняет этот феномен.

Читать далее

Открытый репозиторий для изучения онлайн-рекламы: датасет, подборка материалов, симулятор и примеры RL-агентов

Habr.com - Wed, 01/14/2026 - 19:24

Привет, Хабр! Меня зовут Дмитрий Фролов, я ведущий разработчик в Центре компетенций Data Science МТС Web Services. За каждым показом онлайн-рекламы стоит очень сложный механизм. Одно из его ключевых понятий — Real-Time Bidding (RTB). Это аукцион онлайн-рекламы, где решается, какое объявление будет показано пользователю на определенном веб-сайте или в приложении. Особенность RTB — необходимость максимально быстро принять решение, для чего системы обучаются с помощью технологии reinforcement learning (RL). 

Это достаточно сложная задача — доступных материалов по ней не так много и непонятно, с какой стороны подступиться. Вместе с коллегами мы собрали репозиторий, который может помочь разработчикам погрузиться в специфику онлайн-аукционов. Он содержит датасет с данными RTB, подборку теоретических материалов, симулятор аукционов и примеры работающих RL-алгоритомов. Все подробности и ссылки — под катом. 

Читать далее

Who's online

There are currently 1 user and 2 guests online.
Syndicate content