Normal view

Пароль от корпоративного Wi-Fi лежит в открытом виде на каждом ноутбуке, который к нему подключался

Ситуация из практики любой компании: сотрудник уволился, ноутбук сдал, пароль от гостевой и рабочей сети остался прежним. Формально сотрудник его не знает — вводил один раз при подключении, полгода назад, наизусть не помнит.

На самом деле пароль он унёс: если ноутбук уехал с ним, а иногда и просто потому, что пароль можно было посмотреть в системе одной командой в любой момент.

Читать далее

Камера узнаёт о клике за 0,55 секунды до того, как он случится

TL;DR

Я собрал плагин, в котором LLM-агент сам водит курсором по Windows-приложению и каждое своё действие пишет в журнал с точным временем. Из этого журнала — не из анализа видео — потом собирается демо-ролик: камера подъезжает к кнопке за 0,55 секунды до клика.

Рекордер, который висит на хуке мыши, узнаёт о клике в момент клика. Его камера либо догоняет, либо чинит это вторым проходом по уже снятому файлу. Здесь весь сценарий известен до первого кадра — поэтому ролик пересобирается с другими настройками, ни разу больше не запустив приложение.

Ниже — архитектура, три загубленных дубля с цифрами и два моих собственных вывода, которые развалились от замеров этой же работы.

Как это выглядело

Задача пришла не от меня. На потоке курса по вайб-кодингу ученица разбирала свою рабочую проблему: скринкасты продукта нужно снимать регулярно, и хочется, чтобы их снимала машина, а не человек. Мы пошли искать готовое — и не нашли (ниже раздел с двумя десятками проверенных репозиториев). Так что инструмент пришлось написать с нуля, прямо по ходу разбора.

Проверяли его на задаче, которая звучала буквально так: «открой калькулятор, посчитай 100 × 100, запиши демо». Дальше я не трогал мышь.

Агент нашёл окно, поставил его на нужный монитор, запустил запись, кликнул 1, 0, 0, ×, 1, 0, 0, =, остановился, отрендерил ролик и вернул строку вида «37.3s recorded → 27.7s output (17 segments)». В ролике 27,7 секунды: чёрные поля вокруг окна, мягкая тень, курсор с плавным следом. Камера наезжает на цифровую клавиатуру перед тем, как палец до неё дойдёт, а в финале на дисплее — 10 000.

Читать далее

После C++ захотелось изучить Rust поглубже. Да и под рукой не оказалось софтины с нужным функционалом Quicksort

Каждый день мы работаем с файлами: перемещаю, копируем, сортируем, раскладываем по папкам. И каждый день тратим массу времени на то, чтобы открыть нужную директорию, перетащить файл, закрыть лишние окна. В Windows эта рутина особенно утомляет: проводник, куча вкладок, постоянное переключение между папками. Хотелось простого решения: выделил файл → правый клик → выбрал папку → файл перемещён. Без лишних телодвижений, без открытия дополнительных окон.

К тому моменту уже много лет работал с C++ — WinAPI, COM, IPC, низкоуровневую работу с системой. Но в современных проектах хотелось попробовать что-то более безопасное, современное и приятное в разработке. Так я обратил внимание на Rust. Безопасная работа с памятью, богатая экосистема, отличная поддержка Windows через windows-rs — это выглядело многообещающе. А Tauri (на базе Rust) давал возможность сделать красивый GUI на React, но без тяжеловесного Electron.

Читать далее

Как Telegram удалил 800 ГБ моих данных и причем тут орфография

После очередного запуска компьютера привычные программы одна за другой перестали открываться. В папке C:\custom остались в основном пустые каталоги: исчезли проекты, программы и другие данные общим объёмом около 800 ГБ.

Я начал запускать приложения по одному и смотреть, после какого действия пропадают файлы. След привёл к Telegram Desktop — мессенджер, установленный в другой папке, при каждом запуске рекурсивно очищал C:\custom.

Дальше были Process Monitor, стеки вызовов, issue на GitHub и неожиданная причина в проверке орфографии.

Читать далее
❌