Direct 2D #14. Разбиение на блоки и сжатие. Оптимизация текстур
Здравствуйте! Продолжается серия статей по Direct2D. Теперь мы рассмотрели довольно интересную тему - оптимизацию размеров текстур и тому подобное
Здравствуйте! Продолжается серия статей по Direct2D. Теперь мы рассмотрели довольно интересную тему - оптимизацию размеров текстур и тому подобное

Медийную рекламу до сих пор часто оценивают по количеству продаж или лидов.
На мой взгляд, главная ошибка в том, что, в отличие от performance-каналов, её задача не привести к покупке сразу после клика, а сформировать знание о компании, повысить доверие к бренду и подготовить пользователя к будущему выбору.
Поэтому после запуска медийной кампании руководитель нередко делает вывод: «Лидов больше не стало, значит, реклама не работает».
За последние проекты я пришел к модели, в которой оцениваю медийную рекламу не по одному KPI, а по системе сигналов. Именно их совокупность позволяет понять, начинает ли медийное продвижение влиять на продажи.
5 показателей оценки влияния медийного продвижения на продажи:

Купил я тут по дешевке 43-дюймовый телевизор Hartens (модель HTY-43FHD06B‑HK22, панель BOE HV430FHB‑F91) под проект умного гостевого дома. Железо внутри скромное: чипсет MediaTek MT5867, 32-битная архитектура (armeabi‑v7a), 1.5 ГБ оперативной памяти и вишенка на торте — фирменная оболочка Яндекс.ТВ на базе AOSP Android 11.
Из коробки это чудо техники работает «не очень». Интерфейс задумчивый, повсюду рекомендации, Алиса, Кинопоиск, Яндекс.Музыка и куча другого софта, который постоянно висит в памяти и кушает и без того дефицитные ресурсы.
План по исправлению созрел быстро, но на первом же шаге я уперся в стену: производитель полностью вырезал пункт «Отладка по USB» (USB Debugging) из меню разработчика. USB‑порты у телевизора работают только в режиме хоста (подключить ПК напрямую кабелем нельзя), а сетевой ADB по умолчанию закрыт.
Ниже я расскажу, как удалось обойти это ограничение, залезть «под капот» телевизора и превратить тормозящий яндекс‑комбайн в чистый и шустрый Android TV.
Меня удалили из рабочего чата после того, как заказчики поверили нейросети больше, чем живому специалисту, с которым работали полгода и у которого всё это время всё работало.
Быть может, звучит это как обида фрилансера, которого кинули. Ну и да, меня кинули — не доплатили, опять (про «опять» далее). Статья про штуку, которую я для себя назвал делегированием мышления — когда человек отдаёт нейросети не выполнение задачи, а само рассуждение. Еще про то, почему люди, которые не способны проверить выводы модели, неизбежно доверяют этому механизму. Но этот механизм на неполном контексте — очень опасная штука!

Разработчик и производитель российской вычислительной вычислительной техники «Гравитон» выпустил интерактивную сенсорную панель нового поколения. Устройство построено на базе отечественного процессора «Байкал» и ориентировано на использование в школах, вузах, государственных ведомствах, а также на объектах критической информационной инфраструктуры (КИИ). Новая разработка представляет собой полностью отечественную технологическую платформу. Она создана для решения задач импортозамещения и обеспечения цифрового суверенитета. Использование российской компонентной базы позволяет применять панели в организациях с высокими требованиями к информационной безопасности и защите данных.

Лет 10 назад я писал о том, что человечество находится внутри порога Технологической Сингулярности. За ним – состояние науки, в котором новые исследования пересматривают железобетонные аксиомы быстрее, чем мы успеваем моргать. Сегодня же, человечество преодолело этот порог. Новые исследования, определяющие природу сознания, биомаркеры сознания и суть человеческого «Я» кардинально меняют картину мира. И новое исследование, о котором пойдет речь, наглядный тому пример.

Тайваньская Asus представила портативную игровую консоль ROG Xbox Ally X20 в честь 20-летия своего суббренда Republic of Gamers. Новинка представляет собой специальную версию прошлогодней ROG Xbox Ally X, но с более широким OLED-дисплеем и очками дополненной реальности.

Некоторые компьютеры предназначены для того, чтобы двигать прогресс вперёд. Я собрал Daisy, чтобы двинуть его в прошлое!
Это самодельный персональный компьютер, изготовленный из трёх плат Arduino, резисторов и большой любви. Он не пытается быть мощным. Он старается быть интересным: портативным, ограниченным в возможностях и милым. За таким компьютером можно провести ночь, рисуя простые картинки, сочиняя музыку или создавая маленькую игру. Такие машины когда-то были в изобилии, но теперь их практически нет: Timex Sinclair 1000, Commodore PET, TRS-80 MC-10.
Но Pinecone Daisy — это ещё и нечто иное: артефакт из альтернативной истории. У него есть название, производитель, номер модели и печатное справочное руководство по программированию на BASIC. Моё руководство стилизовано под книги Abacus Software для Amiga; источником вдохновения для него стала реклама DASH-80 в журнале, а напечатано оно было якобы существующей компанией Pinecone Computer. Всё это не совсем реально, но реально достаточно. Машина работает. Руководство точно её документирует. Медведь (капибара из начала статьи) присутствовала почти при всём процессе сборки, как помогающий в отладке «резиновый утёнок».
Название собрано из двух частей: вымышленной компьютерной компании из фильма 1985 года «Электрические грёзы» и клички моей собаки Дейзи. Модель называется DAISY-1.
Творческий, авантюрный дух домашних компьютеров 1970-х и 80-х был неотделим от ограничений. 40 столбцов, пара цветов (если повезёт), несколько звуковых каналов и BASIC. Это были не изъяны, которые нужно преодолевать, а сама среда.

Пока взрослые изучают возможности искусственного интеллекта и обсуждают его влияние на мир, школьники всё чаще воспринимают нейросети как обычный рабочий инструмент. Они не только следят за развитием технологий, но и создают собственные проекты, тестируют гипотезы и работают над продуктами для реальных пользователей.
В этой статье расскажем о Papus_team — команде семиклассников из Санкт-Петербурга, которые уже создают собственные продукты и интегрируют их с реальными компаниями. Каждый участник отвечает за своё направление. Один из таких проектов — бот «Су-Шеф», который помогает придумать, что приготовить, подобрать продукты и сразу собрать корзину во ВкусВилле. Его созданием и развитием полностью занимается Никита Виноградов.
Идея родилась во время обсуждения возможных проектов. Команда решила делать что-то практичное, а еда показалась понятной и близкой темой. Так появился бот, который не только предлагает рецепт, а помогает сразу закрыть вопрос с покупками.

С детства я смотрел фильмы, где люди разговаривают с компьютерами, и каждый раз думал — ну когда уже. Когда можно будет сказать машине, что делать, а она сделает.
Учился на технолога бродильных производств. Защитил кандидатскую. Управляю пивоварней и параллельно — исполнительный директор в фирме по производству пищевого оборудования. Код не писал никогда. Но в детстве, когда появился нормальный интернет, я развлекался тем, что ставил на комп разные дистрибутивы Linux — от OpenBSD до классических. Не особо понимал, как их настраивать и зачем мне это. Потом, когда стал работать — понял, в чём сила Linux, но для настройки просто искал советы в интернете и копировал оттуда команды, или просил брата помочь.
А потом появились LLM. И я понял — вот оно. Можно не учить синтаксис, не зубрить фреймворки. Можно объяснить что нужно и получить работающий код. Вдохновился. Попробовал. Столкнулся с галлюцинациями, бесконечными переделками, кода сгенерировано уже куча — а он не работает. Перегорел. Попробовал снова.
Контекст такой: мне нужно было сделать АСУ ТП для пивоварни. Система управления технологическим процессом — датчики, клапаны, насосы, частотники. Я решил, что ИИ уже дорос. Начал с одного Claude‑агента: я ему говорю что делать, он делает. Потом дошёл до шести параллельных агентов. Они начали конфликтовать, переделывать работу друг друга, плодить баги. На одну фичу — пять новых проблем. Проект рос, но болезненно.
А потом на предприятии по производству оборудования случилась попытка рейдерского захвата. Пришлось бросить всё и месяц заниматься защитой станков. Код и агенты отошли на второй план.

Думаю, пришло время рассказать широкой общественности об интересном ML проекте в нефтяной отрасли, в котором я принимал участие не только как руководитель направления DS, но и как основной исполнитель. Проект начался в 2024 году и, по сути, сейчас продолжается, но основная часть уже выполнена. В первой части расскажу в целом о проекте: какую проблему мы решали, какова постановка задачи, о рабочем процессе. Во второй части уже будет больше технической информации, и подведу итоги того, что удалось нам в итоге получить. Спойлер: результаты проекта признаны успешными по итогам реальных, в прямом смысле, полевых испытаний.
Агентские скиллы: как применить их в разработке
Привет, меня зовут Дима Васильев, я бэкенд-разработчик в Doubletapp. В этом тексте коротко расскажу, как эффективно управлять кодовыми ассистентами с помощью агентских скиллов.
Ассистенты уже умеют читать репозиторий, править файлы и запускать команды, но им часто не хватает контекста команды: как оформлять задачи, какие проверки запускать, как работать со стендами и где нужно подтверждение. Для этого и нужны агентские скиллы.
Скилл — это инструкция для ИИ-помощника: когда её применять, по каким шагам действовать, какие шаблоны и команды использовать. В открытой спецификации Agent Skills скилл обычно оформляется как папка с SKILL.md; рядом могут лежать скрипты, справки и шаблоны.
Подход уже поддерживают разные кодовые ассистенты. GitHub Copilot работает с agent skills в режиме агента, Copilot CLI и облачном агенте. Codex поддерживает скиллы в командной строке, расширении и приложении. Claude Code тоже работает со скиллами через SKILL.md. Поэтому речь не про один инструмент, а про общий способ описывать повторяемые действия команды рядом с кодом.
Кейс 1. Описание проделанной работы
Разработчик закончил задачу, а дальше её должны подхватить тестировщики, аналитики или другие разработчики. Часто в задаче остаётся короткое «сделал», хотя нужно больше контекста.
Можно сделать скилл «описать изменения». Он смотрит на изменения в коде, коммиты и описание задачи, а потом формирует выжимку: что изменилось, какие модули затронуты, как проверить результат, есть ли риски, миграции, настройки или флаги.

Привет, меня зовут Ашот Агабеков. Я Java backend‑разработчик.
В этой статье хочу рассказать про мой pet project для свободного времени - попытку собрать настоящего полноразмерного гуманоидного робота по проекту OpenLoong.
Робот в проекте ростом 180 см, уже сделал часть туловища и голову. Все фото в статье.

Роб Савойе (Rob Savoye) — один из основных разработчиков GNU Project, всю жизнь посвятил свободному ПО. Он приложил руку к созданию десятка опенсорсных проектов, включая GDB, GCC и Cygwin. Является ведущим разработчиком и мейнтейнером медиаплеера Gnash, через который можно воспроизводить проприетарные файлы Flash (SWF) под Linux.
А недавно Роб получил широкую известность как главный разработчик нового проекта LibrePhone по созданию первого в мире полностью свободного телефона, без проприетарных компонентов и бинарных блобов. Этот проект «должен закрыть последние пробелы между Android и свободным ПО».

Ollama с восторгом встречает запуск модели MiniMax M3 — в партнёрстве с MiniMax.
Доступно в Ollama Cloud
Модель размещается на серверах в США. Хостинг работает с нулевым хранением данных (zero data retention).

Я уже год пощу отдельные промпты в свой Telegram-канал. По просмотрам они стабильно обгоняют всё остальное — кейсы с цифрами, разборы инструментов, личные истории. Просто промпты в два раза популярнее.
Видимо, людям не очень интересно читать про нейросети. Им интересно взять что-то готовое и сразу проверить.
Поэтому собрал семь промптов, которые я использую в реальной работе. Не концепция «как ИИ меняет маркетинг». Конкретный набор инструментов под конкретные задачи: бриф, анализ аудитории, конкуренты, стратегия, аудит сайта, аудит рекламы, таблица гипотез.
Всё это проверено на реальных проектах агентства. Где-то экономит несколько часов, где-то — неделю. Один промпт (анализ конкурентов через Perplexity) однажды нашёл конкурента, которого я за два года не замечал. Немного стыдно, но факт.

Из новостей: миллион копий Olden Era, бюджет Mina the Hollower составил 5 миллионов, продажи 007 First Light за первые сутки превысили 1.5 миллиона копий, Игромир займётся изданием игр, CD Projekt анонсировала третье сюжетное DLC для Ведьмака 3.
Из интересностей: подкаст с Крисом Авеллоном, как работает размытие в видеоиграх, хороший игровой дизайн Mina The Hollower, игры, не имеющие себе равных.

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

Рассмотрим одну из старых проблем со стабильностью работы Postgres – отсутствие полного контроля за потреблением оперативной памяти при выполнении запросов. В ряде случаев это приводит либо к свопированию, либо к падению СУБД и остановке работы информационной системы. Происходит это неожиданно, без предупреждения и в не самый удачный момент. В системах 1С эта проблема точно существует, встречали не раз.
Вроде бы на помощь должна прийти технология OOM Killer Linux, но, как обычно, не все так радужно и есть неприятные нюансы.

Во Flutter экран связан с жизненным циклом виджета: пользователь может вернуться назад, открыть другую вкладку или свернуть приложение, после чего состояние экрана уже будет уничтожено. При этом асинхронная операция может продолжать выполняться: сетевой запрос, обработка данных или отложенный callback не завершаются мгновенно.
Основная сложность заключается в том, что после ожидания состояние приложения может измениться: экран мог быть закрыт, пользователь мог ввести новый поисковый запрос, а активная вкладка — смениться. Если после этого без дополнительных проверок обновить состояние или выполнить действие с интерфейсом, приложение может показать устаревшие данные, вызвать лишнюю перерисовку или получить ошибку при обращении к уже неактуальному экрану.
В этой статье рассматриваются практические сценарии, которые часто встречаются в обычных Flutter-приложениях: загрузка данных, поиск, работа с подписками и обновление интерфейса после асинхронной операции.