Недавно мне попалась отличная статья про IAsyncEnumerable и стриминг данных. В ней у автора упал прод, который пытался выдать 500 000 записей разом и упал на вызове ToListAsync() с OOM при 8 ГБ RAM. Далее в статье описывается, как все это стримить с помощью IAsyncEnumerable с примерами кода. В целом после прочтения статьи может сложиться впечатление, что все свои ToListAsync() срочно нужно убрать и заменить на стриминг.
Но со времен появления стримингового апи в .NET мне всегда было интересно, не только то как отдавать стримы, но и как это все получать на клиенте?
Читать далееПривет, Хабр! Мы — Владимир, Дмитрий и Константин — команда из логистики в торговой сети «Монетка» («Группа Лента»). Мы управляем процессами в одной из крупнейших розничных сетей в России, и у нас — 4+ тысячи магазинов, 40+ тысяч сотрудников и миллионы коробок товара, которые каждый день нужно отгружать со складов 24/7. А выходной – только один день в году, 1 января.
Читать далееЛетом 2025 года xAI Илона Маска представила Grok 4 — и с этого момента текстовый помощник с характерным юмором вырос в ИИ-систему высшего эшелона, способную на равных конкурировать с ChatGPT, Claude и Gemini в глобальных бенчмарках. К середине 2026 года технологическая линейка сделала огромный шаг вперед. Тем не менее перед отечественными ИТ-специалистами и рядовыми пользователями стоит все тот же барьер: как получить официальный и стабильный доступ к экосистеме Grok, если зарубежные банковские карты заблокированы, а маркетплейсы приложений жестко привязаны к зарубежным регионам. Ниже подробно разберем актуальные версии модели, тарифные сетки и легальные сценарии работы.
Читать далееМы тут время от времени постим обзоры на интересные игры, которые нравятся кому-то из нашей команды. И сегодня у нас на очереди игра «Мор (Утопия)». Если вам по какой-то причине не хватает в жизни чувства бессилия и потери контроля, то «Мор (Утопия)» это исправит. Вы будете неправильно расставлять приоритеты, расплачиваться за принятые решения, бороться за выживание и, если повезёт, дойдёте до финала. Уставшим и неудовлетворённым, потому что так и задумано.
Игра «Мор (Утопия)»/Pathalogic — дебютный проект независимой московской студии геймдизайна Ice-Pick Lodge. Официальный релиз вышел в июне 2005 года. За неё студия получила премию «Самая нестандартная игра» на Конференции разработчиков игр. Основатель студии Николай Дыбовский рассказывал, что «Мор (Утопия)» — это попытка выйти за рамки жанра компьютерной игры, в которой принято преодолевать уровни один за другим и получать награды. Смысл в том, чтобы игрок получил новый эмоциональный опыт и пережил настоящую метаморфозу. Никаких развлечений, только тревога и фрустрация! Признайтесь, захотелось? :) Тогда заходите почитать про игру побольше.
Читать далееПривет, Хабр! Меня зовут Алексей Постригайло, я старший партнер ИТ-интегратора «Энсайн». Больше 20 лет занимаюсь системной интеграцией, разработкой и сопровождением цифровых систем.
За это время мы неоднократно сталкивались с ситуацией, когда сервер формально настроен правильно, проект работает, документация существует, но реальное устройство окружения знает только один инженер.
Он помнит, почему установлена конкретная версия PHP, откуда взялся дополнительный модуль, какие права были изменены вручную и что нужно выполнить после переноса базы данных.
Пока этот человек находится в команде и доступен, проблема почти незаметна. Она проявляется при миграции, восстановлении после сбоя, передаче проекта другой команде или попытке развернуть аналогичное окружение на новом сервере.
Для таких задач мы создали HConfig — консольный инструмент автоматизированного конфигурирования серверов и управления Linux-инфраструктурой.
В конце статьи расскажу, где найти HConfig. А сначала разберу, почему он появился, как устроен и для каких сценариев подходит.
Читать далееПривет, Хабр! На связи снова Максим из ATI.SU.
В прошлых статьях мы разобрались, как искать логи и креш‑отчёты на iOS‑устройствах — и делали это вручную. Этот навык остаётся базовым на проекте любого размера: без него невозможно понять причину сбоя. Но есть и вторая часть работы — сами проверки, то есть прогон пользовательских сценариев. Пока приложение небольшое, их можно прокликивать руками. По мере роста количество однотипных проверок увеличивается, и повторять их вручную перед каждым релизом становится всё дороже.
Возникает логичный вопрос: можно ли автоматизировать именно эту рутину — прогон сценариев, — чтобы проверки проходили без нашего участия, а нам оставалось разбираться с причинами сбоев, если такие возникнут? Здесь нам помогут нативные автотесты на XCUITest. Они позволяют системно, а не от случая к случаю, прогонять пользовательские сценарии, отслеживать падения и проверять стабильность. А когда тест краснеет, в дело снова вступают логи и креш‑отчёты — те самые, что мы научились искать в предыдущих статьях.
Этой статьёй мы открываем цикл о UI‑тестировании iOS приложений. Начнём с основ: разберёмся, какое место UI‑тесты занимают в пирамиде тестирования, познакомимся с инструментами и постепенно перейдём к построению устойчивых тестов с применением проверенных паттернов.
Отвёртки на изготовку!Меня зовут Алёна, и я более пяти лет занимаюсь оценкой языковых моделей: участвовала в создании таких русскоязычных бенчмарков как Russian SuperGLUE, ruMTEB, куратор проекта Альянса в сфере искусственного интеллекта «MERA» (бенчмарка для оценки русскоязычных LLM), и создатель множества других проектов в области тестирования генеративных моделей. На конференциях, встречах с командами и обсуждениях LLM-продуктов я часто слышу один и тот же вопрос: «А как вообще правильно оценивать LLM на практике?», и почти всегда за этим вопросом стоит один и тот же разрыв.
С одной стороны, есть академический мир. В нём бенчмарк — это методология, датасеты, метрики, контроль качества, проверка утечек, воспроизводимость, анализ ошибок и месяцы работы. Хороший академический тест должен быть достаточно строгим, чтобы его результатам можно было доверять.
С другой стороны, есть индустриальная практика. Команде нужно выбрать модель, проверить новую версию промпта, сравнить два пайплайна, выкатить RAG-систему, оценить агентную систему или понять, не стало ли хуже после очередного изменения. И всё это не через полгода, а, желательно, к следующему релизу.
На этом месте и возникает типовая развилка. Часть команд не оценивает почти ничего: несколько ручных примеров перед демо, быстрый просмотр ответов глазами — и решение «вроде, работает». Другая часть пытается сделать «минимально нормальную» оценку: 10–20 запросов, LLM-судья, средний балл, табличка для отчёта. Проблема в том, что второй вариант часто выглядит как контроль качества, но им не является. Более того, он может быть опасен, потому что создаёт уверенность там, где на самом деле есть только очень слабый сигнал. При этом я хорошо понимаю, почему так происходит. Дело не в том, что команды ленятся или не понимают важности оценки. Скорее, наоборот: они работают в темпе, для которого классический академический подход часто является слишком тяжеловесным.
Читать далееСостоялся выпуск (1.02) Книжной Системы Сайта (Book-Like CMS) «Froggy-BLC», работающей на файлах без БД.
В этом релизе:
NB: Автор не умеет писать качественный код, потому система написана не очень хорошо, не судите строго.
Изначально систему планировалось назвать Temple-CMS, из-за схожей истории: из-за шизофрении автором движет маниакальный энтузиазм и вдохновение; но в последствии, от этой идеи было решено отказаться.
Система предназначена для публикации книг, или домашних сайтов с глубоким древовидным представлением страниц сайта и комментариев.
Автор вдохновлялся ранними версиями CMSimple (преследовал цель создания системы с сильной семантикой и таксономией), и очень хотел сделать хорошую (но не идеальную) самобытную «вещь в себе», наподобие FreeDOS. Так-же, автор является поклонником Джона Кармака, и решил писать свою систему без фреймворков, а с библиотеками, каждая из которых выполняет одну строго-определённую функцию.
Система написана на PHP и JavaScript и распространяется по лицензии MIT. При этом автор подчёркивает, что он против её использования для пропаганды насилия, разжигания любой вражды или унижения достоинства.
Порезали и собрали для вашего удобства все материалы блиц-докладов со второго митапа сообщества Devhands AI Club. У нас было 6 мини-докладов, по 7 мин на доклад), 2 от фаундеров стартапов и 4 от разработчиков. Темы: ACP и взаимодействие агентов, скилы системного дизайна, AI в инфраструктурном и хостинг стартапах, организация проектов с Claude, транскрибация и саммаризация видео.
Читать далееПривет, Хабр! Когда заходит речь о SOC, в голове обычно всплывает техническая картина: вредонос на рабочей станции, фишинговое письмо, подозрительные PowerShell-команды, сканирование портов, эксплуатация уязвимости, скомпрометированный аккаунт, аномалия в инфраструктуре. Для крупного ритейла этой картины давно мало. О том, как киберугрозам противодействуют в М.Видео расскажет Евгений Прошин, руководитель отдела мониторинга и реагирования на инциденты.
Читать далееПривет, Хабр!
С вами снова Илья Вязников, инженер сопровождения СОФРОС. Продолжаю делится практическими приёмами и полезными настройками платформы.
В этой статье покажем, как интегрировать Datareon Platform с Zabbix через API Центра мониторинга.
Читать далееМиграция — риск даже для небольших инфраструктур. А когда у вас больше миллиарда пользователей и петабайт данных, права на ошибку нет вообще. Но выход всё равно один — грамотно спланировать переезд и... взять и сделать.
В статье — о том, как Reddit перешёл на Kubernetes: почему они отказались от Amazon EC2, какие ограничения им пришлось учитывать и чем их опыт может быть полезен в других проектах.
Читать далее10 новых российских продуктов для проверки земельных участков на риски и ограничения; совместных вишлистов с друзьями и партнёром; конструкции электрощитов; составления календаря сменных графиков и многого другого. Битва за «Продукт недели» началась!
Product Radar — здесь каждую неделю публикуются лучшие онлайн-сервисы и железки от русскоязычных команд.
Читать далееApache Paimon: стриминговый lakehouse для дата-инженеров
Сколько систем вы держите ради того, чтобы аналитики видели события через секунды, а годовые отчёты собирались без прогрузки всех данных целиком? Kafka, Flink, S3/HDFS, ClickHouse и бесконечная синхронизация состояния между ними. Apache Paimon стирает границу между стримингом и батчем: одна таблица на LSM-tree отдаёт свежие данные за секунды и одновременно служит источником для тяжёлой аналитики. Разбираем архитектуру, честные бенчмарки против Iceberg, Delta Lake и Hudi - где Paimon выигрывает, а где проигрывает - и проходим путь от первой таблицы до CDC-пайплайна в проде на рабочем коде.
Читать далееСпустя много лет я решил поиграть в Minecraft на пиратских серверах. Никакого исследовательского умысла не было, просто хотел поиграть. Но профессиональная деформация взяла свое: я начал ковырять функционал плагинов сервера. То, что я обнаружил, заставило забыть про игру и открыть Interactsh
ОхуетьНе “проводник”, а визуальное пространство документов, что-то ближе к COSMOS (от Waves)-подходу, где файлы живут плитками, имеют вес, цвет, превью, теги, статус и историю.
Всем привет. :?*(*%:%=)
Ниже разбор, как мы шли от красивых, но тяжёлых плиток к более живому и быстрому интерфейсу на C#
И давайте сразу разберемся с плитками (Тут только о плитках)
Серия: redb ecosystem (инженерный разбор после анонса 3.2.1)
Когда вышел SQLite-провайдер 3.2.1, анонс был на пару абзацев: «тот же LINQ, одна строка в DI». Эта статья — противоположность анонса. Здесь не «что вышло», а как оно устроено и где у нас потекло. Конкретно: как движок запросов redb переехал в нативное C-расширение там, где у базы нет хранимок; как мы храним DateTimeOffset в базе, у которой нет типа «дата»; и три бага из этого релиза, разобранные с фильтр-JSON, сгенерированным SQL и фиксом.
Это длинно и с кодом. Если хочется коротко — читайте анонс по ссылке выше. Если интересно, что под капотом «одной строки в DI», — устраивайтесь.
Читать далееДостаточно часто приходится проводить интервью на должность разработчика, технического лидера проекта. Обязательной частью интервью является валидировать понимание работы с распределенными событийными моделями. Тут начинается аномалия. Не смотря на то, что все кандидаты заявляют об опыте с Kafka, многие теряются в рассуждениях на тему что это и как организовано.
Для того, чтобы коллегам было комфортнее на техническом интервью, а так же для желающих понять работу Kafka без Zookeper предлагаю статью. Понимаю, что мы все не любим длинные тексты, поэтому вложил максимум деталей в схемы и краткие формулировки.
Читать далееСравним скорость ResNet-50 на PyTorch, ONNX Runtime, OpenVINO, TensorRT и TVM в 46 конфигурациях. ONNX Runtime + INT8 даёт ×4 на CPU, TensorRT + INT8 — ×6 на GPU. Код прилагается.
Читать далееВ России снова обсуждают вход на сайты через Google, Apple ID, GitHub и другие иностранные аккаунты. Повод — подписанный закон № 199-ФЗ от 26.06.2026, который добавил в КоАП штрафы за нарушение правил авторизации пользователей.
Но сам запрет появился не сейчас. Базовая норма пришла ещё с 406-ФЗ от 31.07.2023 и с 1 декабря 2023 года живёт в ч. 10 ст. 8 закона № 149-ФЗ «Об информации». Новое в том, что теперь за нарушение есть отдельная статья КоАП — 13.55: для граждан 10–20 тысяч рублей, для должностных лиц 30–50 тысяч, для юрлиц 500–700 тысяч.
Обычного пользователя не штрафуют за сам факт наличия Gmail, Apple ID или GitHub. Но если этот пользователь одновременно владелец российского сайта, приложения или сервиса и оставил там вход через иностранный аккаунт, он уже не «просто пользователь», а «субъект обязанности по 149-ФЗ».
Снаружи всё выглядит как борьба с иностранными кнопками входа, на деле можно разглядеть спор о том, кто держит ключ от аккаунта пользователя.
Читать далее