Потоковая выгрузка из базы данных в CSV
Экспорт таблицы в файл - очень типовая задача. Пока записей немного, экспорт CSV обычно пишут в несколько строк: выполнить запрос, получить массив, превратить его в текст и отправить клиенту. На сотнях тысяч строк этот подход начинает расходовать слишком много памяти. Результат запроса целиком оказывается в Node.js, а при сборке CSV появляются дополнительные строки и буферы. Несколько одновременных выгрузок могут довести процесс до OOM.
Разберём реализацию на Node.js, Fastify, Knex и PostgreSQL. CSV будем генерировать порциями, сохраняя сортировку списка (createdAt DESC). Если в вашем кейсе другая сортировка - достаточно поменять на нужную. Отдельно придётся решить вопрос с авторизацией ссылки на скачивание.
Читать далееЯ бывший программист, сейчас больше занимаюсь IT-менеджментом, проектами и развитием бизнеса. Постоянно экспериментирую с новыми инструментами, много чего делаю с их помощью самостоятельно. Вокруг меня все обсуждают агентов, автоматизацию разработки, новые модели и то, сколько людей понадобится для написания программ через несколько лет.
Читать далееIPO Anthropic обещает стать следующим большим моментом истины и завершить год, который, пожалуй, можно назвать величайшим в истории по масштабам дебютов компаний на фондовом рынке. Огромные суммы, о которых идёт речь, вызывают воспоминания о последней великой волне IPO, достигшей пика в 1999 году, как раз накануне краха пузыря доткомов.
Читать далееSwap на сервере отключают ради производительности, рассчитывая, что при нехватке памяти OOM killer быстро завершит проблемный процесс. Но на практике Linux может минутами выбрасывать из памяти файловые страницы, которые сервису нужны снова и снова, пока сервер практически не отвечает. В статье разбирается, почему возникает такое поведение, как скорость утечки влияет на время до OOM и какие настройки ядра и инструменты помогают избежать длительного зависания.
Разобраться со SwapМеня зацепила статья «Жизнь после Claude Code: как я переехал на Codex и сохранил историю проектов».
С решением, которое предлагает автор, я не согласен, т.к. в архиве переписки хранится разговор о проекте, а не итоговые решения.
Я предлагаю другой подход. Мой личный опыт - полгода у меня контекст в репозитории (методика GRACE, доведённая напильником до утилиты doubled-graph).
Читать далееВсем привет! Хочу рассказать про релиз своей системы Raytolfas OS v26.11.0 и о том, как она устроена внутри.
Главная цель проекта это сделать нормальную систему для игр и работы, где сразу решены частые проблемы linux. К примеру: фризы в играх, лаги звука, вылеты из-за нехватки памяти и неудобный запуск android программ(в моей ос в отличии от остальных предусмотрен WayDroid + libndk).
Читать далееВ 2025 году исследователь из Anthropic Джек Линдси начал искусственно усиливать в Claude паттерны активности, связанные с конкретными понятиями, и спрашивать модель, замечает ли она внедрённую «мысль». В 20% попыток самая новая версия верно сообщала о внедрении и описывала понятие, а в контрольной группе ложных срабатываний не было ни разу. За год другие группы повторили опыт: описание понятий, похоже, объясняется самим воздействием, а вот способность заметить вмешательство простыми причинами объяснить пока не удалось. Считать ли это интроспекцией, исследователи спорят до сих пор.
Читать далееАндрей Карпатый собрал из 20 лет комментариев Hacker News ролики, которые люди годами советуют друг другу. Я сделал то же самое для Хабра: из 10 млн комментариев получилось 388 видео — с описаниями по-русски, поиском по смыслу и пропуском рекламы. Без регистрации и бесплатно.
Читать далее13 октября 2026 года Линус Торвальдс ответил в рабочей переписке разработчику, который хотел ограничить ИИ в работе над ядром Linux. Ответ был довольно резким и саркастическим: Торвальдс предложил оппоненту отказаться не только от ИИ, но и от компиляторов.
Читать далееСтатья пригодится тем, кто готовит синтетические данные для обучения моделей, проверяет методы анализа или пишет пайплайн, который должен переживать неполные и грязные данные. И тем, кто учит статистику или машинное обучение и хочет показать студентам явление, а не рассказать о нём.
Читать далееРаньше мой путь к записи встречи выглядел как квест: открыть календарь → выбрать дату → прокрутить время → вбить название → сохранить. Шесть шагов. В суете я часто просто забивал на это, думая «и так запомню», и закономерно забывал.
Недавно мне посоветовали AI Daily Planner. Я зашел на их сайт (aidailyplanner.ru), зарегистрировался без привязки карты и решил проверить, действительно ли это работает так, как они обещают. Спойлер: в целом да, но есть важные нюансы, о которых стоит знать заранее.
Читать далееУниверсальное FIFO для широкого круга задач на FPGA. Как правильно его организовать, что оно должно уметь и какие требования к нему предъявлять. Подробно – с постановкой задачи, разбором внутренней структуры, временными диаграммами и примерами кода. Пакеты произвольной длины, перенос кода между различными ПЛИС и никаких зависимостей!
Читать далееТрудная проблема сознания и квалиа имеют достаточно серьезные подводные камни, из-за которых воспринимаются как хоть и странная, но значимая философская позиция. Однако немало тех, кто не только эту позицию не разделяет, но и указывает на ее явную внутреннюю слабость и предвзятость. Обсуждать эту тему непросто, но стоит попробовать. Опора в статье будет сделана на современное и инженерное переосмысление буддийских источников, которые остаются актуальными и в наше время.
Читать далееСреди кукурузных полей на востоке Южной Дакоты заработал аккумулятор нового типа, и некоторые компании делают ставку на то, что эта идея способна преобразить мировую энергетическую систему.
Большинство крупных аккумуляторов накапливают электричество и отдают его по мере необходимости. Они уже произвели революцию в электросетях и положили начало эпохе электромобилей. Однако эта аккумуляторная установка, построенная за последний год стартапом Antora Energy, накапливает огромное количество тепла при невероятно высоких температурах.
Для зарядки Antora использует избыточную электроэнергию близлежащих ветряных электростанций, которая в противном случае пропала бы впустую, и нагревает с её помощью углеродные блоки до 2400°C. Блоки остаются горячими на протяжении нескольких дней, отдавая тепло по мере необходимости для производства пара, который используется на соседнем заводе по выпуску биотоплива. Это позволяет отказаться от сжигания природного газа и угля.
Сегодня в мире существует лишь небольшое количество подобных крупных тепловых аккумуляторов. Однако, по словам экспертов, эта технология, также известная как тепловое аккумулирование энергии, обладает потенциалом для использования огромных объёмов недорогой чистой энергии.
«Мы хотим, чтобы это стало глобальным энергетическим решением, — сказал Джастин Бриггс, соучредитель и главный операционный директор компании Antora, базирующейся в Сан‑Хосе, штат Калифорния. — Мы хотим обеспечить возможность поставлять дешёвую и надёжную энергию в любой точке мира».
Читать далее«AI-агент» упоминают в 1 458 вакансиях на hh.ru, а «кэширование промптов» только в 13. Хотя именно кэш и токены решают, сколько стоит агент.
Разбираю по порядку 14 слов из вакансий: агент, агентный цикл, harness, MCP, скиллы, хуки, RAG, evals и другие. Что это, зачем и как выглядит внутри. Потом считаем деньги: за 30 шагов агент прочитал 1,63 млн токенов, хотя за раз ему не давали больше 100 тысяч, а кэш сделал ту же задачу в 6,6 раза дешевле. Заодно мой замер: русский текст в токенах Claude в 1,27 раза «дороже» английского.
Сколько стоит агент»Предупреждение «осторожно, хрупкое» почти бесполезно как техническое задание. Требовать особого отношения может и стекло, которое боится изгиба и удара в кромку; и лакированный предмет, для которого недопустима царапина; и плата, чувствительная к электростатическому разряду. Сначала нужно понять угрозу, затем подбирать против неё защиту. Поэтому в этой статье мы разберём упаковку как технологический стек: по слоям, у каждого из которых свои задачи. Контактный слой отвечает за сохранность поверхности, амортизатор — за пиковую перегрузку, а короб — за внешнее сжатие. Сравним «пупырку», вспененный полиэтилен и гофрокартон, и поймём принцип сбора защиты для разных грузов.
Читать далееВ прошлой статье я рассказывал, как искал и помогал исправлять уязвимости в Ginux. Это совместимое с Linux ядро ОС, независимо написанное на Rust. Его автор, Грегори Курцер, участвовал в создании CentOS и основал Rocky Linux. Опыта разработки операционных систем у человека достаточно.
У проекта есть собственная методика — HDAE, Human-Directed Agentic Engineering. Человек задаёт архитектуру, ограничения и условия приёмки, агенты пишут код, проверяют и исправляют. По словам автора, работающее ядро получилось за одиннадцать дней. Задача всё-таки посложнее подсчёта калорий по фотографии обеда.
Я пришёл искать уязвимости со своими rust-in-peace и reproof. Но по мере работы всё чаще замечал: баги возникали на границах, там, где ключевые свойства системы были реализованы лишь частично.
Лимит памяти есть, но часть выделений в него не попадает. Настройку можно включить, но на работу программы она не влияет. Управление возвращается ядру, пока программа обращается к нему через системные вызовы. А если она просто крутится в цикле?
Находки сами попросились на обобщение. В серии «Я созидатель, а ты ССД» мы уже обсуждали, почему спека ещё не гарантирует работающий продукт. Расширим вопрос: что мы забываем написать в спеке, прежде чем отдаём её агенту?
Читать далееВ Go обнаружили гонку данных, исправили её, а спустя три дня откатили фикс. Оказалось, что HTTP-клиент может продолжать отправлять тело запроса даже после получения ответа от сервера, и это приводит к неожиданным последствиям при повторном использовании буферов. Разбираем два реальных случая из vmagent и vmauth, в которых одна и та же проблема потребовала противоположных решений.
Читать разборПривет, Хабр! С вами снова МТС и сегодня мы предлагаем поразмышлять о том, как можно масштабировать систему искусственного интеллекта без банального увеличения модели.
Представьте, что вместо одного огромного универсального ИИ-ассистента у вас есть сотни маленьких специализированных агентов от разных разработчиков, и вместе они решают задачи лучше, чем любая отдельная система, созданная даже при бюджете в несколько раз больше. Именно эту идею исследуют авторы научной работы The Wealth of Agents: Scaling Agentic AI Across Developers.
В этой статье мы попробуем на человеческом языке разобрать решаемую проблему, чего уже удалось достичь и что это значит для будущего агентного ИИ в целом.
Читать далееВ конце октября я неожиданно остался без рабочего Claude Code. После запроса на подтверждение личности Anthropic приостановила доступ к моей платной организации. Подписку Claude Max 20x впоследствии отменили, а в возврате средств отказали. Апелляцию я отправил, но разработку проектов останавливать на неопределённый срок не хотелось.
Проблема оказалась не столько в выборе другой нейросети.
За время работы с Claude Code накопились десятки проектов и диалогов. В них оставались архитектурные решения, обсуждения функций, результаты экспериментов, исправления ошибок, планы развития и множество мелочей, которые не всегда попадали в документацию.
Исходный код никуда не исчез. Git-репозитории тоже. Но как объяснить новому агенту, почему проект устроен именно так, какие варианты мы уже отвергли и на чём остановились вчера?
Я решил перейти на OpenAI Codex. Сначала задумался о собственном инструменте переноса истории, затем попробовал встроенный импорт Codex, но результат меня не устроил.
В итоге обнаружил Hansard — инструмент, который не только позволяет восстанавливать историю работы в разных ИИ-агентах, но и предлагает дополнительные возможности для хранения, поиска и повторного использования накопленного контекста.
Расскажу, что получилось, что не получилось и как повторить такой переезд.
Читать далее