Мы продолжаем увлекательное путешествие по миру удалённого доступа. Это третья часть цикла про протокол доставки рабочего стола SPICE и то, как он вынужден работать в современных условиях.
Наша конечная цель - создать пилот стримингового агента для виртуальной машины на ОС Windows. В предыдущих двух частях рассматривали архитектуры самого протокола и графической подсистемы Windows, а сегодня мы готовим плацдарм в вопросах захвата экрана в Windows и сжатия видео средствами различных библиотек, фреймворков и API. С кодом и компактными пояснениями.
Приглашаю под кат всех любознательных - в особенности тех, кто сталкивается с Windows не только как пользователь; с решениями для удалённого доступа; с протоколом SPICE; с системами виртуализации и виртуальными машинами в принципе.
К технологиям доставки рабочего столаПланы выполнения формируются на основе команды, статистики, собранной по объектам и параметрам конфигурации. Основной способ сбора статистики - команда ANALYZE, для которой нужны данные. В PostgreSQL 18 версии появились функции pg_restore_relation_statsи pg_restore_attribute_stats, которые могут записать статистики в системный каталог. Вместе с возможностью выгрузки статистики параметром утилиты pg_dump --statistics-only, статистику можно переносить между базами данных.
Функционал переноса статистики был создан для обновления кластера баз данных на новые версии. До 18 версии статистика не выгружалась и собиралась после обновления. Сбор статистики мог выполняться часами, что увеличивало время обновления. Начиная с 18 версии, утилита pg_upgrade, по умолчанию, сохраняет статистику, используя функционал экспорта и импорта статистики.
Этот же функционал можно использовать для переноса статистики с промышленных на тестовые базы данных. В статье рассматривается как это применять.
Читать далееРабота с внешними ресурсами — файлами, базами данных или сетевыми соединениями — требует строгой дисциплины. Забыли закрыть соединение? Приложение в итоге столкнется с утечками памяти или исчерпанным пулом коннектов.
Чтобы не писать громоздкие и плохо читаемые конструкции try…finally, в Python используется оператор with. Однако многие разработчики применяют его исключительно как встроенный инструмент для функции open(), упуская огромный архитектурный потенциал этой конструкции.
Читать далееНаверное, всем уже очевидно, что ИИ крайне полезен, мир поменялся, нас всех заменят роботы и вообще ИИ уже нас во всём превзошёл.
Всё так или почти так, "но есть одно но" как поётся в одной известной песне. ИИ стоит денег, и весьма немалых при текущих ценах. А про локальные модели для большинства пользователей и компаний в РФ можно забыть. Ну и в целом кажется локальные модели - это не сценарий ИИ будущего.
Соответственно, как мы платим за интернет и за свет - регулярный платёж за ИИ — то, что нам светит в будущем, а большинству уже сейчас. На текущий момент времени расход токенов - пожалуй, самое главное что-тормозит повсеместное внедрение ИИ. Полностью без оплаты конечно не обойтись (нуу почти), но существенно сократить её точно можно. Далее все методы, которые я испробовал и использую за 3 года работы. По убыванию - от самых жестких и очевидных, до самых хитрых и "технологичных".
Читать далееСмотрю на этот текст и понимаю, что все пользуются ИИ, просто кто-то это хорошо скрывает.
Сейчас всё больше рабочих задач имеет смысл не просматривать вручную, а сначала прогонять через ИИ. Закупки — хороший пример такой задачи.
Проблема не только в том, чтобы открыть сайт ЕИС и вбить пару фильтров. Проблема в том, что нужно быстро понять: подходит закупка или нет, относится ли она к нужной теме, есть ли там нужные работы, стоит ли тратить время на документацию.
В закупках есть отдельная большая работа — постоянно просматривать новые публикации, отсекать нерелевантное и выбирать то, что стоит разобрать детально. На один подходящий договор могут уходить недели такого просмотра. В компаниях это нередко отдельная роль: человек ежедневно мониторит площадки, проверяет закупки, открывает документацию и решает, что передавать дальше специалистам.
ИИ с такой первичной сортировкой может помочь. Но для этого ему нужно дать нормальные данные: таблицу, где есть номер закупки, заказчик, регион, наименование, цена, сроки, ОКПД2, ссылка и дополнительные поля.
Мне был нужен не просто “поиск на сайте”, а программа, которая создаёт Excel для последующей загрузки в ИИ и ручного анализа.
Так появилась идея сделать локальную программу, которая:
Читать далееНа днях Яндекс представил новое устройство своей экосистемы — Датчик присутствия на 24гГц. На момент написания это самый дешевый датчик присутствия с определением нескольких человек и со срабатыванием в указанных зонах. Ближайший аналог это Aqara FP2. Хотя на рынке полно других датчик с радаром, но большинство из них умеют определять только один объект и обычно только расстояние.
Читать далеемы продолжаем изучать моделирование спутниковой связи. В предыдущей статье мы узнали 3 способа организации дерева папок нашего проекта в NS-3. Данная статья цикла посвящена знакомству с устройством и возможностями модуля Satellite и как его установить в NS-3.
Читать далееПолное руководство по аппаратному мультиколору для тех, кто не знает, что это такое и зачем он нужен.
Совместимость, алгоритмы, эффекты и градиенты
Читать далееВ начале 2024 года я устроилась Senior Software Test Automation Engineer в финтех-стартап. После работы в большой стабильной корпорации это был настоящий вызов ― попасть в живой дышащий мир молодой продуктовой компании, пытающейся занять своё место на рынке. Мне понравился продукт и привлекала возможность влиять на процессы, даже устанавливать новые.
Сперва я изучала как всё работало на тот момент, особенно меня интересовал вопрос обеспечения качества. В жизни я стремлюсь к эффективности: получать больше, а тратить меньше. В бизнесе такой подход приветствуется, особенно в стартапе. Причем стартап банально не выживет если он неэффективен. Я чувствовала себя на месте.
Так вот, в этой компании я встретила подход automation first. Это означало, что весь разрабатываемый функционал сразу же покрывался автотестами. В добавок к этому были задействованы многие продвинутые инженерные практики, к которым, как я знала из опыта, компании и проекты приходили через боль, страдания, унижения и годы беспросветного мануального регрессионного тестирования.
Однако не всё было идеально, проблем тоже хватало, даже при том, что скорости релизов мы достигли прямо таки нереальной, обеспечивая при этом отличное качество. В этой компании существовала доселе не встречавшаяся мне структура ― инженерное комьюнити. В каждой дисциплине было своё. У инженеров по качеству ― QA Community. Польза его для процветания компании неочевидна при первом взгляде. Как человеку, который любит докопаться до причин всего на свете, мне было любопытно как это работает и почему. В том числе влекомая этом любопытством я спустя некоторое время выдвинула свою кандидатуру на должность очередного QA Community Lead. Да, должность выборная, как президенство, срок правления ― год, потом смена власти. Немного ранее выборов у нас сменился СТО и объявил, что теперь теперь избранный кандидат должен получить также апрув от него, а также он может оставаться на должности дольше, если нет возражений от комьюнити и/или СТО. Или пока не настанет импичмент, а такое тоже было в истории компании.
Читать далееРассказываю про новый закон об идентификации администраторов доменов через госуслуги.
Что произошло?
С 1 сентября 2026 владельцев сайтов обяжут проходить идентификацию через ЕСИА [госуслуги], без которой могут возникнуть проблемы с управлением доменом. Основание — п. 2 ст. 1 Федерального закона от 29.12.2025 № 569-ФЗ. Важные нюансы указанного нововведения, которые известны по состоянию на сегодня ↓
Читать далееХотим рассказать о том, как мы делаем платформу для онлайн звонков и видео конференций с ИИ, но чтобы не слишком сложно было. Начнем с самого низкого уровня - с механизма передачи данных между клиентами в созвоне. В этой статье мы расскажем про WebRTC, NAT, STUN/TURN и немного про LiveKit
Читать далееСамые интересные новости финансов и технологий в России и мире за неделю: MAX выпилили из AppStore, Трамп придумал новые тарифы, миллионы Гугл-комаров выпустят в США, Google и Цукерберг хотят продать много новых акций для строительства датацентров, а фондовый рынок и крипта падают дружно упали, как только Майкл Сейлор начал продавать биткоины.
Читать далееWebSocket — один из самых распространенных транспортов для обмена данными в реальном времени: чаты, биржевые котировки, игровые серверы, IoT. На практике выбор библиотеки редко сводится к вопросу «кто быстрее парсит заголовок фрейма». Важнее сочетание совместимости со старым набором инструментов сборки, поддержки TLS, сжатия per-message-deflate, модели асинхронности или блокировки, размера бинарника и способа обработки ошибок.
Читать далееЯ полгода улучшал продукт и почти не зарабатывал. А потом поменял не сам продукт, а только путь пользователя до оплаты — и внезапно появились годовые подписки.
В этой статье рассказываю, почему в мобильных приложениях онбординг и пейволл часто важнее очередной фичи, и как я переработал их в своем приложении для изучения слов.
Читать далееУ $mol реактивность, локальное хранилище, оффлайн и темы приезжают одним пакетом. Минусы есть, но они почти все про коммьюнити и тулинг, не про сам код.
Начинаю с минусов, чтобы было честно. Потом — плюсы и таблица сравнения с React/Angular/Vue. Главная цифра: за 10 лет у $mol один мажорный релиз. У React за то же время 19 версий, у Angular 21.
Внутри: ОРП, view.tree, типизированный CSS, локализация без extractor-плагинов, виртуализация любой вёрстки автоматом, кросс-платформа Web/Tauri/MV3/TMA. Живые демо: треугольник Серпинского React vs $mol, корнер-кейс реактивности на Svelte, js-framework-benchmark с включённым $mol.
А почему не Vue ?Есть странная мысль, от которой сложно отмахнуться: если у человека отобрать воспоминания, от него останется сильно меньше, чем кажется.
С агентами похожая история. Агент без памяти каждый раз начинает с нуля. Он может быть умным, быстрым, вежливым, подключенным к 15 инструментам, но он не знает, кто вы, как вы работаете, что уже было решено, где вы обожглись, какие темы лучше не трогать, какие слова вас бесят, как устроены ваши проекты.
И если вся эта память живет у провайдера модели, вы фактически отдаете ему кусок своей рабочей личности.
Я не про жадность. Я про контроль.
Читать далееЭйфория от повсеместного перехода на удаленный формат работы (Remote First), ставшая визитной карточкой ИТ-индустрии начала 2020-х, к 2026 году сменилась фазой глубокого разочарования менеджмента. Задекларированная свобода и рост продуктивности на практике столкнулись с системным кризисом вовлеченности: размытием трудовой дисциплины, падением мотивации и потерей фокуса со стороны распределенных сотрудников. Ситуация, когда разработчик формально присутствует на созвонах, но фактически утилизирует рабочее время на сторонние проекты, личные дела или симуляцию активности, стала массовой.
В настоящем материале мы проведем структурный анализ причин деградации контроля на "удалёнке", разберем, почему классический тайм-трекинг не решает проблему дисциплины, и исследуем экономические последствия низкой включенности инженеров для бизнеса.
Читать далееЧто может быть проще? Стрелка, циферблат... В детстве каждый крутил такой и думал: «Ну, это же элементарно, север есть север».
А теперь представьте, что вы засунули этот компас в металлическую коробку, где вокруг бегают сотни ампер, крылья гнутся, а стальные тросы намагнитилась ещё при сборке на заводе. И вы ожидаете, что он будет честно показывать курс.
Он показывает. Но только то, что осталось от магнитного поля матушки-Земли после того, как его «поправили» инженеры и электрики.
Читать далееВсе мы любим терминал. Но мало кто помнит наизусть все флаги команды find или как правильно распаковать хитрый архив без гугла. Данный инструмент может помочь избежать данной рутины.
Читать далееКак-то раз мне понадобилось написать положение о качестве услуг. С одной стороны, я немного слышал про ITIL и уже написал несколько регламентов, а с другой - у меня никак не складывалась картина “как это должно работать”. Мне нужна была практичная модель, а не набор пространных тезисов.
Наличие такой модели автоматически не гарантирует высокое качество продукта или услуги. Она лишь показывает, что в компании понимают как с этим работать, а высокое качество не всегда достигается большими затратами. Чаще оно основано на дисциплине, системном подходе и учёте обратной связи от пользователей. Прелесть этой модели также в том, что она универсальна и может применяться не только в ИТ.
Читать далее