Мне очень нравится идея потоков данных в Node.js - data streams. Они используются всюду: чтение файлов, сетевые запросы, архивирование файлов.
Не путать с потоками выполнения процессов - threads! Это совсем другое!
Есть много хороших статей по философии, теории и применении потоков, Хабр не стал исключением:
Ментальная модель потоков в Node.js
Много раз я сталкивался с необходимостью реализовывать свои потоки данных. И каждый раз я путался с кучей методов: write, push, _write, _read, с кучей событий - end, close, finish. В чем отличие write от _write?! Буквально почти все время, когда я имею дело с потоками у меня открыты доки Node.js - https://nodejs.org/api/stream.html.
Недавно, в моей статье про кастомный транспорт для ShadowSocks мне потребовался функционал передачи разных потоков данных по одному потоку (каналу)данных. Это задача мультиплексирования данных.
Я думаю, что эта задача является хорошей практикой для новичков в Node.js и программистов, любящих кодить всякие алгоритмы.
Во время программирования я встретился с несколькими "программистскими задачами" aka "подводными камнями", которые мне пришлось решить, и это было увлекательно, что и вылилось в данную статью.
История о том, как я перешёл от просмотра вакансий к реальному проекту. Сделал простой веб-чат на React + TypeScript и FastAPI, задеплоил на Vercel и Render, и столкнулся со всеми классическими проблемами начинающего разработчика: Git-хаос, CORS-ошибки, забытые коммиты и node_modules в репозитории.
В статье - честный рассказ про мой первый пет-проект: выбор стека, структуру проекта, работу с REST API, настройку деплоя и документацию. Без приукрашиваний, с реальными граблями и ощущением победы, когда всё наконец заработало.
Читать далееВ статье я рассказываю, как из набора команд (free, df, ip, ps, uptime) собрать CLI‑утилиту на Bash, добавить аргументы, цветовую индикацию и упаковать всё в AUR как пакет system-monitor
Заглянуть под капотПривет, аналитики!
Публикую 30 декабря — когда все нормальные люди режут оливье. Но если вы это читаете, значит, тоже из тех, кто 2 января откроет ноутбук проверить дашборды. Для нас и пишу.
В прошлой статье разбирали, какие метрики выбирать для ритейла. Допустим, вы собрали нужные KPI, построили дашборды - а директор спрашивает: «Маржа выросла на 3 млн. За счёт чего?»
Показать рост - просто. Объяснить причину - сложнее. Выросла выручка, но упала маржинальность. Увеличился трафик, но просела конверсия. Как это влияет на итог в рублях?
Расскажу про дашборд факторного анализа продаж. Он показывает не «было — стало», а раскладывает изменение маржи по каждому фактору: от трафика до среднего чека.
Сегодня рассмотрим:
Читать далееВ этой статье я бросаю вызов общепринятому представлению о больших языковых моделях как о «тупых исполнителях», которые ничего не понимают, галлюционируют, но позволяют получить результат быстрее (нередко за счет качества).
Подобные мифы активно распространяются в сети, а также на курсах, на которых обучают «правильно» писать промпты.
Я на Хабре уже написал несколько статей, разоблачающих отсутствие мышления у LLM, но здесь я опишу способность больших языковых моделей решать задачи, людям недоступные. Из этой статьи вы узнаете, как на самом деле надо использовать нейронки, чтобы получать максимальную пользу от них.
Читать далееВсем привет! Меня зовут Максим Максимов, я — NLP-инженер в AI R&D лаборатории в red_mad_robot. Мы работаем с прикладными AI-системами, проводим эксперименты и проверяем архитектурные подходы в реальных сценариях.
Современные AI-архитектуры всё чаще выносят прикладную логику за пределы LLM — в инструменты, внешние источники данных и правила их оркестрации. Модель выступает вычислительным ядром, а ценность формируется на уровне системы вокруг неё.
Из этого подхода в R&D-лаборатории вырос MCP Tool Registry — центральный реестр для управления системой серверов, необходимых для построения RAG. В этой статье я подробно расскажу, из каких частей состоит MCP Tool Registry, как он работает и покажу его применение на практическом примере.
Читать далееВсё шло к этому. Мы решили задачу омографов в русском языке (мы уже готовим большое расширение). Мы попробовали насколько это физически возможно решить задачу ударения хотя бы для славянских языков (мы уже опубликовали модели-акценторы для русского, украинского и белорусского языков). Мы опубликовали синтез для 20 языков России и стран СНГ.
Вы уже много раз упоминали, что неплохо бы завезти наш синтез в SAPI5-интерфейс. Звёзды сошлись, нам написал разработчик, который занимается разработкой таких интерфейсов для Windows и всё завертелось.
Теперь пришло время попробовать соединить это всё воедино в виде SAPI5-интерфейса для синтеза для Windows. Основная фишка тут получается в том, что наш синтез настолько быстрый, что его можно использовать как локальный синтез в Windows на CPU, так и как экранную читалку. И да, вы верно всё поняли. Это также значит, что оно из коробки будет работать с Балаболкой и другими подобными программами (и не будет требовать GPU).
Да, это только первый, по сути пробный, релиз нашего интерфейса. Будем признательны вам за обратную связь и комментарии. Мы сильно хотели успеть к новому году и сделать всем небольшой новогодний подарок! Надеюсь, что комьюнити оценит.
Протестируем!Вокруг ФНС в последнее время крутится слишком много мифов. Последний из них — история про новогодний стол, икру и якобы контроль налоговой через фотографии в соцсетях.
Этот инфоповод и стал причиной написать статью. Не для того, чтобы обсуждать конкретную «страшилку», а чтобы показать как на самом деле устроен налоговый контроль: что ФНС реально проверяет, на какие данные опирается и почему большинство популярных представлений не имеет отношения к практике.
Я опираюсь не на слухи и пересказы, а на реальный опыт работы с налоговыми проверками и понимание внутренних механизмов ФНС. За плечами — 12 лет работы в налоговой системе в разных направлениях: предпроверочный анализ, камеральные проверки, выездные проверки и курирование отраслевых направлений внутри региона.
Читать далееИзначально я хотел написать статью про коды Рида-Соломона с иллюстрацией на примере работы QR кодов, в процессе подготовки сделал инструмент для визуализации промежуточных этапов построения QR кодов и обнаружил что у меня уже есть достаточно отсутствующего на хабре материала, в связи с чем немного поменял план. Кому не интересно читать, QR с КДПВ сгенерированы с помощью qr-verbose
pip install qr-verbose
Документация (англ.)
Про QR коды на хабре писали много, например одна из самых популярных статей за всё время "Читаем QR код" и куча переводных статей. К сожалению у этих статей есть кое-что общее: если вы попытаетесь прочитать код версии 4 и больше а также некоторые коды версии 3 следуя описанию из статей, то потерпите фиаско. Не верите? Попробуйте прочитать нижний код с КДПВ.
В статье напомню как устроен QR код и какие проблемы начинаются с версии 3, а также надеюсь, что qr-verbose поможет разобраться тем, кто еще не разобрался.
Читать далееКазалось бы, всего‑то: вместо 3G на смартфоне теперь высвечивается LTE. Но за этим изменением стоит огромный труд технических специалистов. Как же устроен один из важнейших процессов в улучшении качества связи?
Рефарминг — инструмент, который операторы связи используют для улучшения качества голосового сервиса и скорости передачи данных. Сегодня расскажем про алгоритм проведения рефарминга: почему этот процесс трудоемкий и ответственный, и как технологические изменения влияют на клиентский путь.
Читать далееМногие думают, что большие компании не совершают ошибки. Но даже если у вас налажен процесс код‑ревью и всё тщательно проверяется, риск накосячить никогда не равен нулю. Хотя, конечно, всегда лучше учиться на чужих ошибках, чем на своих.
Меня зовут Юрий Беглецов, я технический продакт в Точка Банк. Мы с командой делаем универсальные API, чтобы клиенты могли интегрировать банк и дочерние сервисы прямо в свои системы. Иногда у нас тоже бывают провалы — обидные, серьёзные и даже забавные. Две истории из серии «никогда больше» — под катом.
Читать далееЯ снова возвращаюсь к сравнению моделей. Однако сегодня мы не будем рассматривать нейросети от разных компаний, а сравним Gemini 3 Flash и предыдущее поколение этой серии - Gemini 2.5 Flash.
С одной стороны, кто-то уже сейчас скажет, что третья версия будет лучше. Однако я не стану спешить с таким выводом, сравню обе версии и вынесу вердикт, опираясь на свое далеко не авторитетное мнение.
Принимайте стратегически удобное положение, делайте ставки, а я приступаю к сравнению.
Читать далееВсем привет! Недавно мы обсуждали рынок AI-инфраструктуры с моим коллегой Александром. В компании OpenYard он отвечает за развитие отношений с вендорами и выстраивание цепочек поставок. Нам быстро стало понятно, что за громкими заявлениями об AI-революции скрывается куда более сложная и не всегда очевидная экономика. Компании массово инвестируют в обучение моделей, строительство дата-центров и AI-кластеров, растет спрос на GPU, ускорители и серверную инфраструктуру. На этом фоне кажется логичным ожидать аналогичного роста со стороны производителей памяти ― одного из ключевых компонентов AI-систем. Однако реальность оказывается сложнее.
Два крупнейших поставщика DRAM: Samsung Electronics и SK Hynix, которые в совокупности контролируют более 70% мирового рынка оперативной памяти, неожиданно ведут довольно сдержанную игру. Несмотря на рекордный спрос со стороны AI-сегмента, компании не планируют резкого расширения производства. Почему рынок, испытывающий дефицит, сознательно отказывается от масштабирования?
Читать далееСервисы — место, где живет бизнес-логика
Здравствуйте! Идея написать эту статью пришла мне в голову абсолютно спонтанно. Я работаю в компании и, так сложилось, что нас имеет мы имеем DRF монолит на писят два миллиона строк кода. И вот однажды, чью-то светлую голову посетила мысль — «а давайте писать код одинаково». Идея прозвучала чертвоски просто и соблазнительно. С этого момента мы завели себе ишака по имени «Django Service Layer», и все дружно начали на него наваливать. Теперь навалю и вам. Би-бу-бип.
Читать далееЧем исследование сознания помогает в разработке LLM, развитие каких элементов позволит моделям лучше программировать, тестировать, размышлять. Разберем на примере Gigachat.
Я регулярно вижу научные статьи, в которых иногда завуалированно, а иногда и практически открытым текстом, рассказывают, как вроде бы обнаружили почти реальные признаки сознания у LLM. Мне читать такие статьи весьма интересно, а иногда и забавно.
Сегодня я решил, вооружившись опытом чтения статей с arXive, провести собственное исследование чтобы разобраться, насколько LLM близка к человеческому сознанию. Пытаясь компенсировать почти полное отсутствие в исследованиях российских ИИ, в качестве подопытного я выбрал наиболее доступную модель GigaChat от Сбера.
Читать далееВесь год мы скакали по бескрайним полям открытого кода, расследуя преступления, отстреливая уязвимости и собирая трофеи. Но сегодня мы решили заглянуть в самый пыльный бар, где у стойки стоит опытный шериф и вспоминает десять самых лихих и опасных багов на диком западе.
Читать далееОчередной Новый Год на носу, а значит, срочно нужно придумать очередной новогодний проектик и написать про него статью. И я придумал сделать интро-поздравление для ZX Spectrum. Да не современное, поражающее невообразимыми эффектами, а напротив, в максимально классическом стиле очень ранней демосцены. Заодно это повод рассказать про особенности национальных хакерских традиций в зимний и иные периоды. Сведём же новогодние олдскулы зарядом концентрированной ностальгии!
Читать далееВсе любят безопасность, пока не приходится её настраивать. Первая версия нашего аудита напоминала пульт управления АЭС: бесконечно гибко, но без инструкции не взлетишь. Мы признали поражение, послушали стоны администраторов и сделали «версию 2.0» — с классами событий и логикой, понятной человеку, а не только компилятору. История работы над ошибками, которая превратила «полочный» софт в рабочий инструмент.
Читать далееПривет. Меня зовут Климент, я co-founder GPTunneL, одного из крупнейших агрегаторов нейросетей в России и мире. Хочу поделиться опытом запуска и развития ИИ-продукта на 1,5 миллиона пользователей в 44 странах и тем, как перейти от концепта “доступ без VPN” к комплексному продукту для разной аудитории. А еще развенчать мифы о распространенности ИИ, в которые мы тут, внутри IT-пузыря, очень верим.
За два года в GPTunneL мы с командой прошли путь к 50k DAU и 650k MAU, объединили 100+ ИИ-инструментов для генерации фото, видео, аудио и текста в собственноручно написанном сервисе.. да, без VPN и с простой оплатой.
Поздравляю с праздниками! С удовольствием пообщаюсь на тему ИИ в комментариях, а помимо ценной информации, в статье оставил для вас приятный новогодний сюрприз.
Читать далееДля большинства из нас кубик Рубика — это популярная головоломка; для спидкуберов — спортивный снаряд; для художников и дизайнеров — пиксельный строительный блок в кубических мозаиках. Но если посмотреть на классический кубик 3×3×3 как на механическую систему со своей симметрией и жёсткими ограничениями, он начинает вести себя как математическая модель. Несколько лет я экспериментировал со свойствами куба, собирая мозаики из кубиков Рубика, и в процессе разработал метод, позволяющий создавать двусторонние паттерны — когда на противоположных сторонах мозаики формируются зеркальные изображения в инверсивных цветах. Я назвал этот метод Mirror Dual-Sided Inverse (MDSI). С его помощью любую мозаику из десятков и сотен кубиков Рубика можно превратить в «кубическую ткань» с лицевой и изнаночной сторонами. В этой статье я расскажу, как работает MDSI-метод и на каких принципах он основан.
Крутим кубик