Обновить

Все потоки

Сначала показывать
Порог рейтинга
Уровень сложности

Модульная надстройка для JasperReports: откуда взялся Jasper и почему он так устроен. Часть 1

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели7.8K

JasperReports появился в самом начале нулевых: румынский разработчик Теодор Данчу делал большой Java-проект, где нужно было формировать и печатать много сложных документов, а готовые решения оказались проекту не по карману. Прошло двадцать пять лет, движок жив и широко используется, а работают с ним примерно так же, как тогда. И на это есть причины, которые лежат в его происхождении.

В первой части серии — откуда взялся Jasper и почему он устроен именно так. Почему отчёт умеет сам ходить в базу и что из этого выросло: несколько разных способов передать в него данные, ручной вайринг субрепортов через строковые имена параметров и роли разработчика и верстальщика, между которыми нет чёткой границы. Плюс короткий срез состояния движка в 2026 году.

Это не критика. Ядро у Jasper мощное, просто он наследник другой традиции — той, где отчёт является самостоятельным приложением, а не частью вашего.

Читать далее

Томограф в чемодане: одна съемка от начала до конца (часть 2)

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели9.2K

В первой части мы, исследователи Smart Engines, представили наш портативный томограф и рассказали про его устройство. Судя по вопросам после докладов, самой убедительной части в той истории как раз и не хватало: а как это выглядит вживую? Поэтому сегодня никаких аксиальных коллинеаций. Мы включили запись на телефоне и сняли одно исследование целиком, от первого кадра до 3D‑картинки.

Читать далее

MLow — голосовой кодек звонков WhatsApp *

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели7.5K

Когда вы звоните в WhatsApp, Messenger или Instagram*, ваш голос, скорее всего, сжимает не Opus, а MLow — собственный низкобитрейтный кодек Meta*, созданный для плохих сетей и слабых смартфонов. Компания рассказала о нём в инженерном блоге, но ни спецификации, ни исходников, ни описания формата кадра нет.

Эта статья о том, как мы восстановили кодек по его поведению и написали совместимую реализацию на Go без cgo и сторонних зависимостей. Сначала мы дважды ошиблись в том, что это вообще за кодек. Ещё были «электронные пищалки» в эфире, и под конец пришлось честно признать, что чужой код лучше нашего.

Читать далее

Kubernetes просто, часть 4: как трафик попадает в кластер, NodePort и LoadBalancer

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели9.4K

Разбираемся, как предоставить доступ к приложению снаружи Kubernetes-кластера. На простых схемах рассмотрим ClusterIP, NodePort и LoadBalancer, разберём разницу между port, targetPort и nodePort и проследим путь запроса от клиента до Pod

Читать далее

Оценка AI‑агентов: 7 ошибок, из‑за которых тесты врут

Уровень сложностиСложный
Время на прочтение15 мин
Охват и читатели7.4K

Зелёный статус eval‑тестов ещё не гарантирует, что AI‑агент работает корректно: он может выдавать правильный ответ, но выполнять неверные действия или не выполнять их вовсе.

В статье разбираем семь ошибок оценки AI‑агентов и показываем, какие подходы помогают измерять реальное качество системы.

Разобрать ошибки

Один код на Paper и Velocity: как устроены multiloader-плагины в 2026

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели6.6K

Один код — и Paper-сервер, и Velocity-прокси: разбираем, как устроены multiloader-плагины для Minecraft и чем они питаются в 2026 году — от архитектуры до сборки.

Узнать о Multi Loader

Jev — нейросеть, которая не пишет текст, экономит бизнесу деньги

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели5.9K

Когда речь идет о нейросетях, мы представляем некого нашего ассистента, который пишет условно скажем какой‑то текст. Но есть модели, которые устроены иначе. Которые не генерируют слова, а придуманы для решения проблем. Быстро, дешево и что самое интересное, с указанием вероятности. Одна из таких моделей — Jev. Она не поддерживает диалог, не ответить вам на вопросы и не объясняет вам свои ответы. Предназначение этой модели в другом. Она получает данные и список вопросов, и выдает вам вероятность для каждого варианта. Простыми словами, это умный переключатель для программ. И посреди тысячи мелких задач и принятие решений в день, модель раскрывается лучше всего.

Читать далее

Взлом режима Secure Debug на RP2350 с помощью лазера и фотонной эмиссии

Уровень сложностиСложный
Время на прочтение15 мин
Охват и читатели18K

В этом эксперименте мы с помощью дифференциальной микроскопии фотонной эмиссии засекли, в какой момент на чипе RP2350 (ревизии A4) активируется регистр отладки, и точно определили, куда целиться лазером. Затем, поймав нужный момент через интерфейс SWD, мы с помощью лазерного импульса точечно переписали два бита, восстановив доступ к режиму Secure Debug.

Читать далее

На чём советские гики учились программировать? Часть 6 (Импортные ПЭВМ)

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели11K

В СССР с импортом, конечно, всё обстояло туговато. Но иногда иностранные машины всё же доходили до пытливых глаз и проворных рук советских гик-энтузиастов. Сегодня поговорим о таких компьютерах.

Читать далее

Qwen3.8–27B на двух RTX 3060 12ГБ: как я разогнал OpenCode с ~9 до ~40 токенов/с при 128K контекста

Уровень сложностиСредний
Время на прочтение22 мин
Охват и читатели12K

Можно ли превратить две 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 дала AI-агентам лицо. Gemini 3.8 Live создаёт говорящих аватаров в реальном времени

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели6.6K

Google представила Gemini 3.8 Live with Live Avatar. Модель принимает голос, изображение, видео и текст, а отвечает через анимированного персонажа с синхронизацией губ, мимикой и голосом.

Это не отдельный генератор говорящих голов, приклеенный к чат-боту. Аватар встроен непосредственно в разговорную модель и может видеть собеседника, слушать его, отвечать и обращаться к внешним сервисам во время беседы.

Читать далее

Две недели я собирал данные с трёх маркетплейсов Telegram-подарков, чтобы доказать, что на них нельзя заработать

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели5.4K

Идея выглядела очевидной: на маркетплейсах Telegram-подарков постоянно появляются лоты дешевле рынка, купил дешевле — продал по рынку. Две недели сбора данных с Portals, Tonnel и MRKT: 54 447 лотов, 1.8 млн изменений цен, 4420 подтверждённых сделок с ценой. Ответ: заработать нельзя — и это видно по цифрам. Данные и код открыты.

Как это измерено

Промпт-инжиниринг: как лучше общаться с ИИ

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели6.4K

Качество ответа генеративной модели во многом зависит от того, как сформулирован запрос. Промпт-инжиниринг здесь не сводится к поиску «правильных слов» или универсальных команд. Его основная задача гораздо проще: как можно точнее передать модели свое намерение.

Генеративный ИИ заметно изменил способ взаимодействия с программами. Модель можно попросить написать письмо, проанализировать информацию, объяснить сложную тему, предложить идеи, сгенерировать код, составить план проекта или критически разобрать предложенное решение.

Но есть ограничение..

Читать далее

Ближайшие события

Чем заменить Microsoft Project? Российские аналоги зарубежной системы управления проектами

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели7.6K

В 2022 году с российского рынка ушел Microsoft Project, причины вы знаете. Многие отечественные компании вынуждены были начать поиски новой системы управления проектами. Не стал исключением и один из наших клиентов. Далее — повествование от имени заказчика, который пожелал остаться анонимным.

Узнать больше

Каждая рабочая задача должна быть чатом. Объясняю, почему вам это точно надо

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели16K

Каждая задача — это чат. Звучит странно? Мы в YouGile считаем иначе: если задачи лежат в таск-трекере, а вся реальная работа обсуждается в Telegram — таск-трекер превращается в место для отчётности. Поэтому мы решили не отучать людей общаться, а сделать общение ускорителем работы. Рассказываю, как чаты вовлекают в работу, ускоряют команду и становятся базой для ИИ.

Согласиться, поспорить или узнать себя

Pillow вместо Photoshop: как за 20 строк кода делать мультяшные и Minecraft-текстуры

Время на прочтение8 мин
Охват и читатели6.6K

Изучая 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, потому что доступ к каким угодно учебным материалам сегодня есть из любой точки земного шара, и гораздо важнее поговорить именно про последовательность действий при освоении данной технологии – какой она должна быть, чтобы иметь достаточное понимание для выполнения определённого рода задач.

Читать далее

pgvector, Qdrant или Milvus: как выбрать базу для RAG и не усложнить архитектуру

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели6.8K

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

Разберу, когда для векторного поиска достаточно PostgreSQL с pgvector, зачем выносить его в Qdrant и в каких случаях сложная архитектура Milvus действительно оправдана.

Читать далее

После Copilot: как «Диасофт» строит AI-Native SDLC вместо ИИ-ассистентов

Время на прочтение19 мин
Охват и читатели5.9K

Привет, Хабр!

Я Дмитрий Старов, директор департамента «Инструменты и технологии разработки» компании «Диасофт».

Еще относительно недавно вопрос звучал так: сможет ли искусственный интеллект писать код?

Сегодня этот вопрос уже не кажется самым интересным. Современные модели умеют генерировать код, находить ошибки, писать тесты и объяснять, как работает тот или иной фрагмент программы. Каждые несколько месяцев появляются новые AI-ассистенты, и каждый обещает работать быстрее, точнее или самостоятельнее, чем предыдущий.

Все это действительно меняет роль разработчика. Но если посмотреть на крупные enterprise-системы, становится понятно, что скорость написания кода – уже давно не главный фактор.

Гораздо сложнее понять, что именно нужно изменить, как это изменение впишется в существующую архитектуру, не нарушит ли оно работу других компонентов системы и пройдет ли все обязательные проверки. Речь идет о том, что можно назвать AI SDLC – подходом к жизненному циклу разработки, в котором AI изначально встроен как полноценный участник, а не подключается сбоку. В корпоративной разработке путь от требования до рабочего решения гораздо длиннее, чем кажется, если смотреть только на код. 

Это наблюдение заставило нас в «Диасофт» по-другому посмотреть на роль AI. Мы не считаем, что основные усилия должны быть направлены на то, чтобы модель писала код еще лучше. Все гораздо серьезнее, потому что использование AI полностью перестраивает процесс разработки и даже сам состав инженерной команды.

7 октября я вместе со своими коллегами в прямом эфире покажу как устроена наша AI SDLC архитектура (ссылка - в конце статьи).

Читать далее

Сонар-управление + Asteroids. Игра на 50 КБ, которой нужен флагманский смартфон

Время на прочтение6 мин
Охват и читатели6.8K

Телефон лежит на столе или в другой руке. Сбоку от него в воздухе ладонь. Двигаешь ладонью — корабль на экране поднимается и опускается. Экрана не касаешься. Камера не нужна: телефон пищит ультразвуком и слушает эхо своим микрофоном.

Играть: sonaroids.app (веб-приложение на iPhone; для Android есть .apk — ссылка на главном экране игры). Код: github.com/neokrasav4ik/sonaroids, MIT.

UPD. Заголовок устарел, и это хорошая новость: на Mi 9 Lite, середнячке 2019 года, играется так же, как на iPhone 16. Помогли широкий зонд (управление примерно вдвое чище) и приложение для Android со своим звуком, правильной громкостью и выбором микрофона. Новые разделы статьи — «Широкий зонд» и «Android: приложение вместо браузера».

Читать далее

Яндекс Дропс под рентгеном: микротомография первых ИИ-наушников Яндекса

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели9.7K

Яндекс Дропс наушники с ИИ под рентгеном: восьмислойная HDI-плата, три микрофона на наушник. Разбираем внутренности первых ИИ-наушников Яндекса методом рентгеновской микротомографии.

Заглянуть внутрь