JasperReports появился в самом начале нулевых: румынский разработчик Теодор Данчу делал большой Java-проект, где нужно было формировать и печатать много сложных документов, а готовые решения оказались проекту не по карману. Прошло двадцать пять лет, движок жив и широко используется, а работают с ним примерно так же, как тогда. И на это есть причины, которые лежат в его происхождении.
В первой части серии — откуда взялся Jasper и почему он устроен именно так. Почему отчёт умеет сам ходить в базу и что из этого выросло: несколько разных способов передать в него данные, ручной вайринг субрепортов через строковые имена параметров и роли разработчика и верстальщика, между которыми нет чёткой границы. Плюс короткий срез состояния движка в 2026 году.
Это не критика. Ядро у Jasper мощное, просто он наследник другой традиции — той, где отчёт является самостоятельным приложением, а не частью вашего.
Читать далееВ первой части мы, исследователи Smart Engines, представили наш портативный томограф и рассказали про его устройство. Судя по вопросам после докладов, самой убедительной части в той истории как раз и не хватало: а как это выглядит вживую? Поэтому сегодня никаких аксиальных коллинеаций. Мы включили запись на телефоне и сняли одно исследование целиком, от первого кадра до 3D‑картинки.
Читать далееКогда вы звоните в WhatsApp, Messenger или Instagram*, ваш голос, скорее всего, сжимает не Opus, а MLow — собственный низкобитрейтный кодек Meta*, созданный для плохих сетей и слабых смартфонов. Компания рассказала о нём в инженерном блоге, но ни спецификации, ни исходников, ни описания формата кадра нет.
Эта статья о том, как мы восстановили кодек по его поведению и написали совместимую реализацию на Go без cgo и сторонних зависимостей. Сначала мы дважды ошиблись в том, что это вообще за кодек. Ещё были «электронные пищалки» в эфире, и под конец пришлось честно признать, что чужой код лучше нашего.
Читать далееРазбираемся, как предоставить доступ к приложению снаружи Kubernetes-кластера. На простых схемах рассмотрим ClusterIP, NodePort и LoadBalancer, разберём разницу между port, targetPort и nodePort и проследим путь запроса от клиента до Pod
Читать далееКомпания обновляет компетенции, шкалы и профили ролей, а затем сравнивает новые результаты со старыми. Разбираем, когда такое сравнение допустимо и какие версии нужно хранить.
Читать далееЗелёный статус eval‑тестов ещё не гарантирует, что AI‑агент работает корректно: он может выдавать правильный ответ, но выполнять неверные действия или не выполнять их вовсе.
В статье разбираем семь ошибок оценки AI‑агентов и показываем, какие подходы помогают измерять реальное качество системы.
Разобрать ошибкиОдин код — и Paper-сервер, и Velocity-прокси: разбираем, как устроены multiloader-плагины для Minecraft и чем они питаются в 2026 году — от архитектуры до сборки.
Узнать о Multi LoaderКогда речь идет о нейросетях, мы представляем некого нашего ассистента, который пишет условно скажем какой‑то текст. Но есть модели, которые устроены иначе. Которые не генерируют слова, а придуманы для решения проблем. Быстро, дешево и что самое интересное, с указанием вероятности. Одна из таких моделей — Jev. Она не поддерживает диалог, не ответить вам на вопросы и не объясняет вам свои ответы. Предназначение этой модели в другом. Она получает данные и список вопросов, и выдает вам вероятность для каждого варианта. Простыми словами, это умный переключатель для программ. И посреди тысячи мелких задач и принятие решений в день, модель раскрывается лучше всего.
Читать далееВ этом эксперименте мы с помощью дифференциальной микроскопии фотонной эмиссии засекли, в какой момент на чипе RP2350 (ревизии A4) активируется регистр отладки, и точно определили, куда целиться лазером. Затем, поймав нужный момент через интерфейс SWD, мы с помощью лазерного импульса точечно переписали два бита, восстановив доступ к режиму Secure Debug.
Читать далееВ СССР с импортом, конечно, всё обстояло туговато. Но иногда иностранные машины всё же доходили до пытливых глаз и проворных рук советских гик-энтузиастов. Сегодня поговорим о таких компьютерах.
Читать далееМожно ли превратить две RTX 3060 12 ГБ на старой Z97-платформе в нормальный локальный backend для OpenCode? Я начал с 9 токенов/с на длинном контексте и в итоге получил около 40 токенов/с в реальной агентной сессии с контекстом за 100K без уменьшения модели и без отказа от 128K.
В статье — tensor split без CUDA P2P, Q8 KV‑cache, встроенный MTP, подбор n-max, неудачные эксперименты с NCCL и shared buffers, реальные long‑context тесты и проверка качества на coding‑задачах.
Читать далееGoogle представила Gemini 3.8 Live with Live Avatar. Модель принимает голос, изображение, видео и текст, а отвечает через анимированного персонажа с синхронизацией губ, мимикой и голосом.
Это не отдельный генератор говорящих голов, приклеенный к чат-боту. Аватар встроен непосредственно в разговорную модель и может видеть собеседника, слушать его, отвечать и обращаться к внешним сервисам во время беседы.
Читать далееИдея выглядела очевидной: на маркетплейсах Telegram-подарков постоянно появляются лоты дешевле рынка, купил дешевле — продал по рынку. Две недели сбора данных с Portals, Tonnel и MRKT: 54 447 лотов, 1.8 млн изменений цен, 4420 подтверждённых сделок с ценой. Ответ: заработать нельзя — и это видно по цифрам. Данные и код открыты.
Как это измереноКачество ответа генеративной модели во многом зависит от того, как сформулирован запрос. Промпт-инжиниринг здесь не сводится к поиску «правильных слов» или универсальных команд. Его основная задача гораздо проще: как можно точнее передать модели свое намерение.
Генеративный ИИ заметно изменил способ взаимодействия с программами. Модель можно попросить написать письмо, проанализировать информацию, объяснить сложную тему, предложить идеи, сгенерировать код, составить план проекта или критически разобрать предложенное решение.
Но есть ограничение..
Читать далееВ 2022 году с российского рынка ушел Microsoft Project, причины вы знаете. Многие отечественные компании вынуждены были начать поиски новой системы управления проектами. Не стал исключением и один из наших клиентов. Далее — повествование от имени заказчика, который пожелал остаться анонимным.
Узнать большеКаждая задача — это чат. Звучит странно? Мы в YouGile считаем иначе: если задачи лежат в таск-трекере, а вся реальная работа обсуждается в Telegram — таск-трекер превращается в место для отчётности. Поэтому мы решили не отучать людей общаться, а сделать общение ускорителем работы. Рассказываю, как чаты вовлекают в работу, ускоряют команду и становятся базой для ИИ.
Согласиться, поспорить или узнать себяИзучая Adobe Photoshop (в частности любимый мною CS6 – так как запросто устанавливается на любой чайник), программы по монтажу (VSDC Video Editor, Wondershare Filmora, Movavi и Capcut), и другого типа редакторы мне не могла не прийти мысль об автоматизации. Как минимум потому, что я ленивый, а в общем и целом – для автоматического создания материалов и текстур. Создавая игры любой разработчик уткнётся носом в одну простую вещь: у него есть готовый и расписанный лор, персонажи и их дизайны, может даже саундтрек и примеры кода, но нет второстепенных текстур. Под второстепенными текстурами я имею в виду то, что не влияет на лор, но влияет на игровой опыт (к примеру, блок земли в Minecraft не поможет нам убить дракона, но данная текстура жизненно необходима игре).
Следовательно, нужно было научиться автоматизировать процессы обработки графических материалов. Последовательная обработка подразумевает код, а автоматизация – наличие функций. Желательно было всё это оформить на Python. Идея понятна: хочу обрабатывать визуал таким образом, чтобы целый ряд фильтров и сопутствующих преобразований накладывались по одному клику, без упорного затирания UI Photoshop до дыр. И что делать? Здесь на помощь приходит один известный форк PIL (Python Imaging Library) под названием Python Pillow.
Как оказалось, сообщество Python уже давно задумалось над тем, как можно через код работать с графикой. PIL – древняя библиотека для работы с растровой графикой, поддержка которой давно прекращена. Потому на её основе возник форк под названием Pillow, о котором сейчас и поговорим. Стоит отметить, что на мой субъективный взгляд Pillow лучше всего работает именно с форматом PNG, потому рассматривать работу библиотеки с файлами иных расширений мы не станем, по крайней мере в этой статье. Также отмечу, что это не совсем образовательная статья, а скорее Roadmap, потому что доступ к каким угодно учебным материалам сегодня есть из любой точки земного шара, и гораздо важнее поговорить именно про последовательность действий при освоении данной технологии – какой она должна быть, чтобы иметь достаточное понимание для выполнения определённого рода задач.
Читать далееЯ хотел автоматизировать написание технических статей и в итоге сделал StoryOps: систему, которая читает прошлые публикации автора, исследует репозиторий, проверяет факты и анализирует актуальные материалы площадки. А потом возник неприятный вопрос: чем всё это отличается от очередной фабрики AI slop? Попробовал разобраться на цифрах: сколько AI-контента уже в интернете, почему его так много в TikTok и YouTube, почему аудитория его отвергает, как с этим борются платформы и где вообще проходит граница между ИИ как инструментом и конвейером мусора.
Читать далееНа демо все выглядит безобидно: загружаем документы, строим эмбеддинги, подключаем векторный поиск — и RAG уже отвечает на вопросы. А потом поиск тормозит, после фильтрации пропадают результаты, а команда внезапно тратит все силы на систему, которая слишком велика для проекта.
Разберу, когда для векторного поиска достаточно PostgreSQL с pgvector, зачем выносить его в Qdrant и в каких случаях сложная архитектура Milvus действительно оправдана.
Читать далееПривет, Хабр!
Я Дмитрий Старов, директор департамента «Инструменты и технологии разработки» компании «Диасофт».
Еще относительно недавно вопрос звучал так: сможет ли искусственный интеллект писать код?
Сегодня этот вопрос уже не кажется самым интересным. Современные модели умеют генерировать код, находить ошибки, писать тесты и объяснять, как работает тот или иной фрагмент программы. Каждые несколько месяцев появляются новые AI-ассистенты, и каждый обещает работать быстрее, точнее или самостоятельнее, чем предыдущий.
Все это действительно меняет роль разработчика. Но если посмотреть на крупные enterprise-системы, становится понятно, что скорость написания кода – уже давно не главный фактор.
Гораздо сложнее понять, что именно нужно изменить, как это изменение впишется в существующую архитектуру, не нарушит ли оно работу других компонентов системы и пройдет ли все обязательные проверки. Речь идет о том, что можно назвать AI SDLC – подходом к жизненному циклу разработки, в котором AI изначально встроен как полноценный участник, а не подключается сбоку. В корпоративной разработке путь от требования до рабочего решения гораздо длиннее, чем кажется, если смотреть только на код.
Это наблюдение заставило нас в «Диасофт» по-другому посмотреть на роль AI. Мы не считаем, что основные усилия должны быть направлены на то, чтобы модель писала код еще лучше. Все гораздо серьезнее, потому что использование AI полностью перестраивает процесс разработки и даже сам состав инженерной команды.
7 октября я вместе со своими коллегами в прямом эфире покажу как устроена наша AI SDLC архитектура (ссылка - в конце статьи).