О разном
Раз дочка в Лениногорске счастливо проводит время с бабушкой и дедушкой и нет надобности
Всё вожусь с языком «
Теперь ко мне едет уже собранный «
Говорят нам на днях должны вернуть нейросеть «Фейбл 5», на которую американское правительство наложило запрет. Сам я её погонять успел мало, но те, кто успел, говорят, что она программирует уже на уровне синьора. Ну проверим, у меня задача для неё есть — довести
В то, что она хотя бы дотянет до этого уровня я не верю, но любопытно посмотреть насколько близко подойдёт, так как доступные сейчас сети уже упёрлись в свой потолок.
Поставил себе и родителям
Книги: «Толкователи» Урсулы Ле Гуин
Недавно открыл для себя писательницу Урсулу Ле Гуин. До сих пор недоумеваю, каким образом она прошла мимо меня: обычно такие крупные имена я не пропускаю. Её книги мне очень понравились: прочитал уже десяток, читались легко и быстро. Но на одиннадцатой — «Толкователях» —
Вроде и книга нравится,
ИИ: что в имени тебе моём?
Вижу, что многие сравнивают нейросети между собой без особого понимания, как они устроены и чем реально отличаются. Хочу немного прояснить этот вопрос.
Начнём с открытых моделей, там есть о чём рассказать.
Кстати, важно понимать: даже самые сильные открытые модели пока заметно уступают ведущим коммерческим решениям. Поэтому что бы вы ни развернули локально, это не даст помощника того же уровня, что доступен в платных облачных сервисах.
Открытые модели обычно называются так, что по названию уже примерно понятно, чего от них ждать.
Например: Qwen3.6-35B-A3B.
Qwen — это семейство моделей. Если пользоваться простой метафорой, это как «школа», в которой модель училась. У «школы» «Квен» хорошая репутация: из этого семейства выходило много сильных моделей, поэтому есть основания ожидать, что модель будет достаточно умной.
3.6 — это поколение или версия модели. Обычно более новая версия означает, что разработчики улучшили архитектуру, обучение, данные, дообучение и поведение модели. То есть обновили в своей «школе» методику преподавания и учебники.
35B — это общий размер модели: примерно 35 миллиардов параметров. Упрощённо параметры можно сравнить с «объёмом мозга», в которых хранится опыт модели. Чем параметров больше, тем потенциально больше знаний и способностей может поместиться в модель, но размер — не единственный показатель ума. Иногда более новая и лучше обученная модель меньшего размера работает лучше, чем старая модель большего размера.
A3B означает, что модель относится к типу MoE — «mixture of experts», «смесь экспертов». У неё всего около 35 миллиардов параметров, но при ответе на каждый отдельный токен активируется только примерно 3 миллиарда. Если говорить совсем грубо, модель не задействует весь «мозг» сразу, а выбирает нужные участки под конкретный шаг ответа. Поэтому такие модели часто быстрее и дешевле в работе, чем плотные модели похожего общего размера.
Плотные модели — те, у которых задействуется сразу весь «мозг».
При этом MoE-модель не обязательно глупее плотной модели. Плотные модели используют все параметры на каждом шаге и иногда дают более стабильное качество, но обычно требуют больше ресурсов и отвечают медленнее при том же общем размере.
Если в названии дальше есть приписки вроде FP4, FP8, Q4_K_M, GPTQ, AWQ и похожие, это обычно говорит о формате хранения весов или о квантовании. Модель сжали или перевели в более экономный числовой формат, чтобы она занимала меньше памяти и быстрее запускалась на доступном железе.
Это означает, что «знания» модели обо всём менее точные. Хорошее квантирование мало сказывается на модели, но бесследно не проходит.
У коммерческих моделей всё сложнее, характеристики в названии не пишут, обычно там только версия модели. Например, у «Антропика» пишется название и версия.
Название указывает на размер, а версия — на «версию методики обучения». Самая умная и большая на сегодняшний момент — «Фейбл 5», менее умная — «Опус 4.8» и самая простая — «Соннет 5».
Конечно, когда платишь деньги за использование модели, стараешься исполнителя подобрать под задачу, всё как в обычной работе, поэтому всегда использовать самую умную из платных моделей, вроде бы, логичнее всего, но на практике всё упирается в стоимость эксплуатации.
Завтраки в кафе
Давно всё никак не мог дойти до кафе, глянуть, как там дела. Сегодня наконец добрался, а там уже и весь персонал успел смениться. Заехал пообедать — повезло застать завтраки. Ребята недавно ввели их в меню: они там до 14⁰⁰, давно хотел попробовать. Вкуснотища!
Ещё появились новые десерты с лесной земляникой. Жаль, поздно увидел: переедать не хотелось. Попробую завтра съездить, может, ещё застану.
Прибыли кафе мне пока не приносит, но по нынешним временам уже хорошо, что работает не в убыток. Расширились, я считаю, мы очень вовремя. Людей в кафе стало больше, хотя загруженным его теперь не назовёшь. Но осенью, надеюсь, это сыграет нам на руку: раньше посадочных мест было всего ничего, и половина — на улице, в итоге в холод или дождь посещаемость была низкой — сидеть было негде.
Кирпич «XW»? «MX»?
Те, кто давно меня читает, знают, что я облазил всю историческую Казань в поисках старинных клейм на кирпичах.
Со временем незнакомых мне казанский кирпичный клейм не осталось, но иногда судьба подбрасывает
Ретроконсоль «МК-61s»
Мне довольно быстро дошла посылка с собранной ретроконсолью «
Ещё не успел как следует разобраться, только включил: правильно догадался, что за включение отвечает рычажок справа. Надо будет хотя бы инструкцию почитать, а то я пока даже не знаю, как к нему подступиться.
Пока интересует, как в него заливать свежую прошивку, что делает рычажок сверху и почему у него два
Дополнено: немножко разобрался, но вопросов стало только больше. Для работы с прошивкой предназначен разъём слева, устройство надо перевести в режим DFU через меню. Но, самое главное, — дата прошивки 10 мая 2026 года, а репозиторий устройства не обновлялся уже восемь месяцев. Вопрос — где же идёт работа?
Да и размеры не совпадают. Я слил прошивку с устройства, она там занимает около 80КБ, тогда как, если собрать прошивку из репозитория, она займёт около 60. Ничего не понимаю.
Доработка «МК-61s»
Программировать всякие железки — увлекательнейшее занятие. За ночь и утро я её русифицировал (решив проблему распихивания русских букв на восьми программируемым знакоместам), выделил слой примитивов работы с экраном, что позволило объединить две прошивки в одну, добавил интепретаторы двух языков (Бейсик и Фокал), сделал файловую систему с монтированием этой системы на компьютере и ещё многое другое.
Бейсик планировали сделать в сообществе и я его прикрутил строго по техзаданию, но мне не понравился режим ввода букв — на клавиатуре калькулятора нет способа ввода алфавита, не нужно было, поэтому в Бейсике предлагалось нанести на клавиатуру ещё один слой клавиш со своей уникальной раскладкой.
Запомнить это тяжело, поэтому я и реализовал Фокал. Не совсем чистый, его диалект. В Фокале каждое ключевое слово начинается на свою собственную букву. Их вообще можно не дописывать, а так и оставить однобуквенными — Фокал их и в такой форме понимает.
В «
Я попробовал, так гораздо проще набирать программы. Мне кажется, что от Бейсика надо избавиться и, если уж хочется иметь в этой консоли
«МК-61s»: русские буквы
Вчера я писал, что сделал ретроконсоли «
Как же делается русификация? Секрет в том, что в позициях от нуля до семи стоят символы, которые можно определять самостоятельно. Пришлось написать упаковщик, который, выводя на экран русские символы, на самом деле заменяет их латиницей, а те буквы, которые есть только в русском, распихивает по восьми символам, которые можно рисовать самостоятельно. Если позиций не хватает, пытается минимально изуродовать вывод, заменяя «Ч» на «4» и «У» на «Y».
Пока работает идеально, глюков не было — во тех фразах, что используются в интерфейсе, восьми дополнительных символов хватает, а пользователь русские символы ввести не может — для этого нет никаких средств.
Документалка об «Электронике МК-61»
Иван Черняков, автор совершенно шикарных документальных фильмов про айти, наконец выпустил новую работу — «
Было очень интересно заглянуть за кулисы документального кино такого уровня: увидеть, как из разрозненных фактов выстраивается сюжет, который потом нещадно режется ради динамики; как появляются первые скетчи, затем ещё не смонтированные черновики; как появляется графика, выравнивается и перезаписывается звук и так далее. Было очень интересно в этом участвовать, хотя и тяжело просматривать по большей части один и тот же материал раз за разом.
За этот опыт я очень благодарен Ивану.
Хотя в прошлом я и сам немало занимался исследованиями — пусть и не столь масштабными — и хорошо знаю, что на сбор фактов для одного абзаца текста порой могут уйти дни, я всё равно не ожидал, что работа над фильмом окажется настолько долгой и кропотливой. За видимой лёгкостью, с которой Иван выпускает свои фильмы, стоит огромный объём невидимого труда целой команды людей.
Фильм уже неделю как был готов — оставалось дождаться только рекламодателя. Результат мне так понравился, что я буквально дождаться не мог момента, когда смогу разослать его всем. С особым удовольствием отправил ссылку ребятам из чата о ретроконсоли «MK61s». Надеюсь, им это согреет душу!
Статья в газете о папе
Папа почти всю жизнь проработал в «Иркеннефти» — сейчас уже не существующим подразделении «Татнефти». В последней должности там он был начальником технического отдела. В его ведении была служба АСУП, которая занималась автоматизацией производства.
Недавно бывший руководитель этой службы разгребал дома архивы и нашёл заметку в газете «Нефтяник Татарстана» №79 (825) за 1998 год, про большой проект по автоматизации, в котором принимал участие и мой папа. Я решил статью вырезать и положить себе на сайт, чтобы она сохранилась.
«МК61s»: распробовал «Фейбл 5»
Самая сложная задача, которую пришлось решать для ретроконсоли «MK61s», — это монтирование её как диска. В прежней прошивке программы были зашиты внутрь, и пользовательского способа сохранить туда новые программы не существовало. Я подумал, что раз есть
Перебрав в голове все варианты, я решил делать эмуляцию FAT12. Напрямую она не подходила: не очень хорошо ложится
Этот путь тоже не был безоблачным, проблем хватало. Система, к которой подключён такой диск, не пишет файлы последовательно, то есть там нет команд вроде: «мы начали писать вот такой файл, вот его полное упорядоченное содержимое, а вот и конец». Система пишет кусками, причём это могут быть куски разных файлов вперемешку. Их нужно получить в буфер, а по окончании аккуратно разобрать на файлы, найдя там же метаинформацию, из которой можно получить имя файла. Нетривиальная задача, на самом деле.
Я написал
В итоге, я открыл сеть «Фейбл 5», описал ей проблему и она задумалась минут на двадцать, после чего начала неспешно писать код, в котором проблема была исправлена. Без отладки, без тестов, без диагностики. Задачу я ставил в минимальной формулировке, почти буквально «пять файлов копирую, оно падает», а «Фейбл» разобрала весь код, увидела проблему и решила, даже ни разу ничего не запустив.
Что я хотел сказать этой историей — человек так не сможет.
ИИ: локальное ревью кода
Подключил локальный
Считаю, что польза уже есть, но надо продолжать его улучшать.
Нанял тренера
Я тут
«Выбрал по лайкам», что называется. «Ютуб», поскольку я часто смотрю
Пока он только следит за тем, что я ем: каждый день фотографирую еду, и вот уже заканчивается вторая неделя. Упражнений пока не было, но я уже начал худеть — почти два килограмма скинул на стыде. Думаю съесть
Моего тренера мы с женой зовём Буськой. Как его на самом деле зовут, я и не знаю. Буськой — потому что в конце почти каждого своего ролика он говорит: «Понял? Ай, молодец, держи буську».
Вот вам моя свежая фотография, в сложные моменты своей жизни я весил и на 15 килограмм больше, чем сейчас.
«МК-Про»: далеко ли до «отлично»?
В моей работе над проектом ретроконсоли
Поэтому высвободившееся внимание я направил на проект «
Этот проект родился в ответ на вопрос Ивана Чернякова, заданный в недавно вышедшем документальном фильме, при создании которого я выступал консультантом: не знаю ли я такой задачи, с которой не смогли бы справиться программирующие нейросети.
Со временем, у меня сложится такой критерий того насколько нейросеть хорошо решила эту задачу — насколько близко мы приблизились к оптимизированной версии игры «Пещера сокровищ» в варианте Сергея Анварова «
На настоящий момент разница составляет 34 байта или 25%, я попросил нейросеть нарисовать для наглядности график. Планирую сегодня запустить свежевышедшую на днях сеть
Добавлено позднее: в итоге сеть мне сначала довела почти до 105 байт, а потом откатила часть прогресса, сделанного другими сетями и теперь программа у нас занимает 154 байта. Причина — оптимизации слишком заточены под конкретную программу, что противоречит задаче.
«МК-61»: размер программ
Много где говорится, что программы для «Электроники
Например, на приведённом тетрадном развороте справа видно значения, которые надо ввести до ввода программы.
Это как если бы браузер (или что вы там запускаете каждый день) состоял из двух программ, которые надо было запускать каждый одну за другой, всегда в определённой последовательности, потому что вместе они не влезают в память.
Это очень хорошее изобретение позволяет впихивать в ограниченную память калькулятора очень много логики, так как на значениях предзагруженных констант иногда строятся такие алгоритмы, что закачаешься!
Что-то там-тьюб
Надоело, что «ВК Видео» и «Рутуб» сильно тормозят на проекторе: дизайнеры рисуют всё более навороченные приложения, а железо остаётся прежним.
Запустил на проекторе «Аиду» (там «Андроид») — приложение для просмотра характеристик оборудования, сфотографировал параметры процессора, видеосистемы, доступные аппаратные кодеки, загрузил снимки в нейросеть и попросил написать мне небольшой клиент, который умеет искать ролики на этих площадках и проигрывать.
Пришлось сделать два пробных запуска, приложение заработало только с третьей попытки, зато с невиданной до сих пор производительностью. Надо будет немного дописать, но в целом плеер получился офигенным. Буду пользоваться.
«0W-Tube»: подтянул дизайн
У моего нового плеера за утро появилось имя: «
Сетевое хранилище и «Мак»
Вчера по случаю зашёл в админку домашнего сетевого хранилища — давно хотел заглянуть, а тут время образовалось. Оказалось, не зря зашёл, как чувствовал: в углу горит индикатор сообщения, а в нём написано, что несколько дней назад все девять терабайт были забиты под завязку.
Это меня очень удивило, потому что в конце прошлого года места оставалось никак не меньше половины. Пошёл искать виновника. Им оказался мой «Макбук». Не знаю, что в нём дало сбой,
Удалил всё это безобразие не глядя. Надо будет вечером не забыть сделать принудительный бэкап. У меня вся информация на ноутбуке продублирована в разных уголках интернета и интранета, но собирать её при сбое будет очень неудобно, лучше уж локальная копия.
«0W-Tube»: и под смартфон тоже
Поскольку у приложения «
По идее приложение сейчас должно нормально работать везде —
Старостин, но не Фёдор
Время от времени просматриваю сайт «Память Народа», в надежде что однажды там появятся
Военкомат, откуда он призывался, сгорел
Сегодня вечером, снова систематизировал все материалы и решил поискать в интернете информацию об одном из захоронений, где потенциально, судя по информации сайта «Память Народа», может быть похоронен мой прадед. Оно находится в небольшом сельском поселении в Ростовской области.
Каково же было моё удивление, когда оказалось, что это захоронение
Что же я о тебе помню?..
В истории со случайным удалением аккаунта в «Телеграме» было только одно светлое пятно — вопросы, которые задавали мне друзья и знакомые, чтобы убедиться, что новый аккаунт действительно принадлежит мне. Приводить их я по очевидным причинам не буду, но среди них попадались очень забавные, а порой и совсем неожиданные.
«МК-61» и случайные числа
Один из досадных инженерных промахов «Электроники
Меня, если честно, это давно расстраивает, но я
В итоге мы решили брать шум с нескольких пинов, плюс замерять задержки между нажатиями и коды нажатых пользователем клавиш. В настройках появилось управление генератором случайных чисел — режим совместимости и новый режим, перехватывающий команду К СЧ калькулятора и подсовывающий ему значение из нового генератора.
Распределение сильно лучше: на десяти тысячах запусков старый генератор дал 179 случайных значений, а новый — 9957.
«Тайм-капсула» и современные «Маки»
В комментариях в телеграмном канале к заметке о проблемах создания резервной копии на сетевом хранилище один из читателей рассказал, что это известный баг взаимодействия моего сетевого накопителя и «Мака» — резервные копии пишутся, пока не забьют всё место.
Там же посоветовали способ оживить
Хорошо, что у нас есть нейросети — я рассказал, что хочу, дал ссылку на репозиторий и только попросил проанализировать выложенный там запускаемый файл. И не зря! Внутри оказался код, отсутствующий в исходниках, который скачивает
Выяснять, что там такое и какие ещё закладки есть в этом файле, я не стал, а решил поручить нейросети поискать закладки в исходном коде и, если их там нет, собрать запускаемый файл самостоятельно.
Нейросетка довольно долго мне всё настраивала и компилировала, но в итоге собрала требуемую версию, активировала внутри
К сожалению, скорость оказалась отвратительной — четыре дня на бакап моего ноутбука. Я попросил нейросетку
Она посмотрела загрузку процессора (там внутри одноядерный Cortex‑A9) и предположила, что он не справляется с шифрованием канала. После того как мы отключили шифрование —
Завтра посмотрю всё ли успешно и посмотрим нельзя ли ещё ускорить,
«Тайм-капсула»: что получилось
После вчерашних манипуляций
Меня это не особо устроило, я подумал, что наверняка есть способ ускориться — например, серверную часть для поддержки протокола SMB мы собирали довольно древним компилятором — gcc седьмой версии, если мне не изменяет память. Я подумал, что более свежий компилятор может помочь — в них всё время добавляют
Поскольку платформа уже довольно старая, самый свежий компилятор мы брать не стали, взяли двенадцатую версию. По уверению нейросети
В итоге довольно много времени было потрачено на то, чтобы подобрать подходящие ключи компиляции — процессор
По итогу наибольшее ускорение дал не компилятор, а настройка сети, но кроме мы этого сделал ещё несколько вещей.
В итоге скорость выросла с 7—8 мегабит до 12—14.
Для ноутбука жены резервная копия уже создалась, сейчас создаётся для моего ноутбука. Сколько это займёт, сказать трудно — на скриншоте расчёт скорости только завершился, обычно в самом начале он очень сильно врёт.
Пропавший без вести прадед
Как я уже писал, я решил попробовать оформить в виде проекта поиск с привлечением нейросетей моего прадеда по отцовской линии, пропавшего без вести во время Великой Отечественной войны.
Его дочь, Клавдия Фёдоровна Старостина на фотографии из хозяйственной книги — моя бабушка, папина мама.
За несколько дней мы вдоль и поперёк перерыли интернет и архивы, обнюхивая каждую зацепку, и смогли исключить одиннадцать потенциальных могил из пятнадцати. Не факт, что он лежит в одной из оставшихся: пропал он в самое горячее время, бойцов находят до сих пор, спустя 80 лет, и часть из них так и не удаётся идентифицировать.
ИИ мне, конечно, здорово помог: я не могу просматривать архивы насколько быстро, а он работал со скоростью, с которой сайты отдавали информацию, да ещё и в нескольких браузерах одновременно.
Сейчас — этап написания писем. К счастью, и тут ИИ здорово помогает: сам ищет, куда писать и как выглядят анкеты, а там, где обращения приходится подавать через
Делаю я всё сеткой
Прадед и загадка зачёркнутой надписи
Работа над проектом поиска могилы без вести пропавшего прадеда внезапно пролила свет на загадку, которая не давала мне покоя с тех самых пор, как я много лет предпринял свою первую попытку узнать
Речь идёт про лист на скриншоте, где строка, относящаяся к моему прадеду перечёркнута. Встаёт вопрос — почему её перечеркнули? Прадед нашёлся? Но я смотрел другие записи, где человек пропадал, а потом появлялся, там зачёркиваний не было.
Разгадка, между тем, была у меня под носом, просто я её прочитать не мог. Лист ниже мне прислал в 2014 году Лениногорский военкомат, правоприемник того военкомата, откуда забирали служить прадеда.
Почти все бумаги сгорели
Но что это за надпись справа от фамилии? Слово «деревня», написанное с ошибкой, или «дирижёр»? Я не смог прочитать. По смыслу понятно, что уточняли
Оказалось, это «Дурасово» — деревня рядом, относящаяся к тому же военкомату.
Откуда же она там? От другого Старостина, которого перепутали с моим прадедом — он как раз из Дурасова и именно он считался пропавшим почти что в тот же месяц в 1941 году. Этому Старостину повезло больше — он попал в плен, был освобождён и дожил по меньшей мере
«МК-61s»: часы на экране
Выяснилось, что на борту ретроконсоли «
Вывел в интерфейс их настройку, приспособил их к энтропии генератора случайных чисел и задумался, куда бы их поместить на экране моего экземпляра
Пока ехал с работы домой, пришла мысль попробовать выделить под них два программируемых знакоместа,
Нашёл очень маленький шрифт, но две цифры помещались в каждую позицию только наискосок, и выглядело это плохо. В итоге взял редактор и нарисовал шрифт размером 2×5, в котором неплохо уместились все цифры. Восьмёрка получилась немного сомнительной, но главное — вполне читаемой. В итоге, правда, пришлось выделить три места, так как без двоеточия смотрелось так себе, а с ним в две позиции уже никак не умещалось.
Как шрифт выглядит на реальном устройстве с сомнительной «восьмёркой» можно увидеть на фотографии ниже:
«МК-61s»: графика на текстовом экране
У меня давно вертится в голове идея попробовать вывести графику
Сначала я подумал, что можно было бы воспользоваться инерцией дисплея
Потом я попробовал показывать по восемь символов за раз, быстро чередуя их и отображая полное изображение за четыре кадра. Изображение стало узнаваемым, но очень низкоконтрастным. Чтобы наглядно показать, что получилось, мне пришлось сильно скорректировать уровни изображения в редакторе:
Следующая идея была сложнее: первым проходом показывать максимум общих точек, а последующими — «добивать» оставшиеся, также перепрограммируя символы «на лету». Идея могла бы сработать, тем более, что на фрагменте эталонного изображения Лены Сёдерберг вместо четырёх кадров, по нашим с нейросетью расчётам, потребовалось бы всего три.
В реальности изображение стало чётче, но отображалось полосами. Я попросил нейросеть сделать подстройку частоты кадров и попытался подобрать её, как в старом телевизоре, но всё сильно зависело от того, какой кусочек Лены был на экране. Впрочем, контрастность явно выросла. Пакман тоже стал виден лучше.
Под конец я решил разделить экран на четыре блока по восемь символов по горизонтали и отрисовывать их один за другим. Этот вариант мне понравился меньше остальных, хотя контрастность была самой высокой — блоки слишком сильно мигали.
На добивку я попробовал совместить два последних метода, но ситуацию это, пожалуй, не улучшило, просто экран стал мигать разнообразнее.
Не уверен что мне с этим всем делать, но пока оставил реализацию в экспериментальном режиме.
PHP: что ты такое?
Мне сегодня показали вот такой код и спросили, знал ли я, что так можно. Речь идёт о вызове $this::w00t(). То есть мы используем $this как бы в статическом контексте. Мне бы такое в голову не пришло.
Код ниже, понятное дело, чисто демонстрационный.
Нет, я не знал, но, как ни удивительно, эта конструкция работает! Причём работает уже очень давно — это не свежее веяние: она появилась ещё в версии 5.4!
(new class() {
public function w00t():void {
echo "WHAT THE HELL ARE YOU?\n";
}
public function test():void {
$this::w00t();
}
})->test();Дополнено: работает как эквивалент static, что ожидаемо, конечно.
Троеточие и многоточие
Многие люди путают троеточие и многоточие. Запомнить разницу легко.
Смотрите: это — точка «.». Добавляем ещё одну точку — получаем двоеточие «:», оно всем знакомо. Добавляем ещё одну — получаем троеточие «⋮». Ещё одну — получаем четвероточие «⁞». Ну и так далее.
А «…» — это многоточие.
«МК-61s»: виртуальный экран
Как можно было понять из моих прошлых текстов, у ретроконсоли «
Но когда у тебя в руках молоток, всё вокруг превращается в гвозди нейросеть, все такие проблемы превращаются в токены, которые надо забить в код.
У «
Через терминал такое делать неудобно, поэтому мы с нейросеткой написали клиентское приложение на «Флаттере» с виртуальным экраном и клавиатурой.
По пути пришлось решить множество проблем, самой серьёзной из которых было научить устройство нормально переключаться со своего
Как я уже упоминал выше, в этом режиме также можно передавать нажатия клавиш прямо с клавиатуры компьютера или ноутбука — набирать программы в «Фокале» и «TinyBASIC», которые я
Ну и «на сдачу» написал также аналог «Нортона Коммандера» на шелле. В принципе уже есть возможность примонтировать ретроконсоль как диск, но тут принцип другой — всё делается командами терминала. Вышло забавно, пусть будет.
Поддерживаются все горячие клавиши, видимые на скриншоте, удалённый запуск программ в терминале и просмотр изображений WBMP, который моими стараниями теперь понимает ретроконсоль. В консоль моего «Макбука» такие картинки выводятся через протокол iTerm2 или азбукой Брайля.
«МК-61s»: бинарные приложения
Сейчас прошивка ретроконсоли устроена таким образом, что часть блоков при компиляции можно отключить, если они не требуются, или в том случае, если используется более скромное оборудование, для которого она не помещается.
Уже сейчас такое оборудование существует — у тех, кто собирает эту ретроконсоль на контроллере STM32F401CC, полная прошивка не собирается: не хватает памяти. Мне давно хотелось сделать для этого случая подгружаемые модули, и вчера, просидев с нейросетью до двух ночи, удалось запустить первую версию, в которой заработали два тяжёлых модуля — языки программирования «Фокал» и «TinyBASIC».
Туда же я вынес просмотрщик картинок в формате WBMP, который прикрутил недавно. Не самая нужная в этой ретроконсоли штука, но у меня есть задумка, которая может сделать её полезной.
В итоге
Внутри уже есть реализации RLE для сжатия шрифтов (я хочу подобрать
Основные требования — хорошо сжимает бинарные файлы, а распаковщик быстрый и маленький.
Я покидал в нейросетку всё найденное, добавил то, что помнил сам, и мы провели эксперимент — сжали все три получившихся модуля и выбрали победителя. Победил алгоритм ZX0, разработанный для восьмибитных компьютеров (прежде всего — «Спектрума») программистом Эйнаром Саукасом.
Утром мы ещё поработали над большей универсальностью этого подхода — хотелось устранить шероховатости и сделать его более универсальным, чтобы писать такие программные модули было проще.
На целевом оборудовании я решение не испытывал — у меня его нет, но на своей ретроконсоли всё проверил: работает. Дальше займусь специализированными инструментами, чтобы упростить создание модулей, а потом перейду к другим пунктам своего уже довольно сильно поредевшего плана развития прошивки.
Ева и новая школа
В этом году, к сожалению, опять меняем дочке школу. Прекрасная по началу школа
Атмосфера кардинально изменилась, коллектив начал разбегаться, ушли все, вплоть до завуча, а учительница, которая дочке так понравилась, совершенно потускнела, растеряла весь свой оптимизм и ударилась в нервы.
Учитывая, что эта школа — весьма недешёвая, оплачивать разборки внутри преподавательского состава нам быстро надоело. Была надежда, что всё
В итоге решили поискать
Два варианта быстро превратились в один после звонка в каждую из школ. Просто на контрасте. В одной из школ мне столько всего рассказали, что я исписал конспектом весь лист, чтобы вечером пересказать жене, а в другой неохотно выдавили три предложения.
Дальше всё произошло очень быстро.
Позавчера я съездил в новую школу, пересказал жене увиденное, и, хотя у меня было ощущение, что мы соглашаемся на первый попавшийся вариант,
Вчера дочка, очень волнуясь, прошла тестирование по трём предметам, после чего директор на созвоне сказала мне, что они готовы её зачислить. Я сразу позвонил дочке и прямо почувствовал, как она искренне этому обрадовалась — ей понравились и директор, и мой рассказ об условиях в школе.
Вчера мы уже получили договор, сейчас соберём все бумаги и будем подписывать в ближайшие дни.
Очень хочется надеяться, что школу больше менять не придётся. Каждый раз мы делаем это со скрипом, понимая, что это стресс для дочки. Но годами надеяться на изменение ситуации, если видно, что школа для этого ничего не делает, — тоже глупо.
Дочка сейчас у дедушки и бабушки в другом городе, через неделю мы поедем её забирать — она уже очень соскучилась. После этого я планирую
Черёмуха
Тем не менее, иногда, проезжая мимо
Сегодня мы с другом ездили в поход и проехали мимо церкви Спаса Нерукотворного Образа в селе Салманы. Я сфотографировал её со всех сторон, а когда мы уже уходили, заметил черёмуху со спелыми костянками.
Честно сказать, я очень удивился. Мне кажется, я не слышал слово «черёмуха» как название дерева или его плодов с детства, да и самого дерева, наверное, не видел с тех же пор. У бабушки Тани, маминой мамы, в деревне на огороде росла черёмуха, но её пришлось спилить — она сохла и грозилась упасть на баню. Я запомнил это, потому что сам же её и спилил.
Я набрал нам с женой полпакета, подумал, что возможно она тоже её давно не ела, а оказалось, что она не ела её никогда. Вообще, закономерно — если подумать, оно у нас
Дочка, кстати, тоже черёмуху не ела, я вполне в этом уверен, надо будет
Поиск прадеда: как продвигается
В 2018 году я фактически забросил исследование своего родового дерева, потому что считал, что через пять—семь лет искусственный интеллект сможет проводить такие исследования эффективнее, чем человек. Как видите, не ошибся.
Сейчас я пытаюсь найти место захоронения своего прадеда, пропавшего без вести во время Великой Отечественной войны. Сложность в том, что военкомат, из которого он уходил на фронт, сгорел. Сгорел и дом прабабушки, где могли сохраниться его письма или другие полезные документы.
Мне в этом помогает, а точнее делает львиную часть работы, нейросетка
К решению задачи мы идём с двух сторон — пытаемся выяснить куда же он ушёл воевать и где мог погибнуть. В первом случае нейросеть анализирует куда направили его соседей по призыву, во втором — пытается связать могилы с конкретными людьми, чтобы исключить те, где прадеда точно быть не может.
Ниже — сводная инфографика, которую мне нарисовала нейросеть по текущим направлениям. Параллельно мы добиваем те источники в интернете, которые остались, плюс будем досылать бумажные и электронные обращения.
Подтверждена мобилизация Фёдора Николаевича Старостина 26—28 сентября 1941 года. Воинская часть и судьба не установлены. Проверяются районный и групповой маршруты, медицинская карточка, запись шталага 352 и три мемориальные версии. В инфографике перечислены уже отправленные архивные запросы и следующие действия.
Документальное расследование · состояние на 26.07.2026
Поиск Фёдора Старостина
Фёдор Николаевич Старостин
Доказано
26—28 сентября 1941 года — мобилизация
Призыв подтверждают несколько независимых документов.
Главный разрыв
После РВК воинская часть неизвестна
«Февраль 1942» — поздняя административная дата учёта, а не доказанный день гибели.
1
Гипотезы: где он мог служить и что с ним произошло
Цвет показывает только тип ветки; вывод всегда написан словами.
Гипотеза A · групповой маршрут
самая сильная
13 земляков →
Роты 6166—6167 прослеживаются дальше, но Фёдора в них нет. Главная открытая возможность — неопубликованные списки рот 6168—6170.
Решит: поимённые списки 6168—6170 и акт приёма/распределения эшелона № 41518.
Гипотеза B · районный маршрут
сильная
Такой канал доказан для других районных команд. Сам Фёдор в открытых списках не найден, но ключевое дело не оцифровано.
Решит: ЦАМО, фонд 8250, опись 96144, дело 4 — списки команд за 10—30 сентября 1941 года.
Гипотеза C · медицинская карточка
конфликт дат
Те же ФИО → сержант →
Дата раньше установленной мобилизации. Это может быть полный тёзка, ошибка индекса или неверно прочитанная часть.
Решит: оригинал карточки № 1159780 с годом и местом рождения, РВК, датой поступления и направлением выбытия.
Гипотеза D · шталаг 352
фамилия без личности
31.08.1942 · лабораторная строка «Старостин» · отделение
Нет имени, года рождения, лагерного номера и воинской части. Запись доказывает существование пациента Старостина, но не его связь с прадедом.
Решит: параллельная регистрационная запись, история болезни или документ об эвакуации лагерной картотеки.
2
Три «могилы»: что это на самом деле и что с ними делать
Ни одна из трёх записей пока не является доказанной могилой Фёдора Николаевича.
Мощённое · могила № 5
только мемориальная строка
Есть: на плите — только «рядовой Старостин». Имени, отчества, года рождения, РВК и части нет.
Проблема: дата 20.10.1943 есть в Книге памяти 1999 года и паспорте 2014 года, но отсутствует в паспорте 2002 года и на фотографиях плиты 2015/2021. Учёт расходится: 224 или 302 погребённых.
Проверяемые версии
- реальное районное перезахоронение, акт которого не опубликован;
- местное увековечение однофамильца без переноса останков;
- смешанный административный список с ошибочной датой.
Письмо ещё не отправлено. Следующий адресат: держатель паспортного дела могилы № 5 и архив Арсеньевского района; просить исходный акт, источник Книги памяти 1999 года и объяснение 224/302.
Решит: первичный акт захоронения/перезахоронения или документ, доказывающий, что фамилия была только увековечена.
Долина Славы
архивно открыто
Есть: в списке только фамилия «Старостин». Кладбище создано с 1985 года для останков, найденных поисковыми отрядами; это не исходная фронтовая могила.
Проблема: в базе ВИПЦ среди 71 связанной карточки Старостина нет. Две прежние версии личности уже отвергнуты.
Проверяемые версии
- останки были
когда-то идентифицированы, но карточка утрачена или не оцифрована; - фамилия перенесена из старого списка без сохранившейся доказательной цепочки.
Письмо ещё не отправлено. Нужен адресный запрос держателю паспорта кладбища и региональному поисковому архиву Мурманской области: отряд, год, место подъёма, способ идентификации, акт перезахоронения.
Решит: цепочка «полевой акт → лист идентификации → протокол перезахоронения → строка мемориала».
Громославка · могила № 2
маловероятно
Есть: физическая надпись «СТАРОСТИН» и строка № 251, но без имени, отчества и звания. Это отдельный список могилы № 2, не могилы № 1.
Проблема: паспорт даёт 286 имён, а примечание — 290 курсантов на 14 стелах 1994 года. Надпись не доказывает, что под ней лежат останки именно названного человека.
Проверяемые версии
- Старостин — курсант
1-го Орджоникидзевского курсантского полка; - фамилия увековечена на плите без отдельного физического погребения;
- ошибка или позднее дополнение списка 1994 года.
Два письма отправлены 19.07.2026: администрации Громославского сельского поселения — за исходным списком и актом; администрации Октябрьского района для архивного отдела — проверить дела 1993—1995 годов. Ждём регистрацию и ответы.
Решит: исходный список 14 стел, акт 1994 года и план физических могильных ям. Если документов нет — следующий адресат военкомат по Котельниковскому и Октябрьскому районам.
3
Куда уже написано и что именно запрошено
«Отправлено» не означает «доказано»: это журнал ожиданий, а не список результатов.
18.07
ЦАМО через приёмную МО РФ
отправленоПослевоенная переписка по строке № 138: откуда взялись даты 30.12.1941, февраль 1942 и 14.04.1942, не сохранилась ли воинская часть. Идентификатор 10272155; ждём регистрацию и ответ.
19.07
отправленоОригинал медицинской карточки № 1159780: обе стороны, анкетные данные, точная часть, госпитальный маршрут. Направлено через приёмную МО РФ; номер регистрации пока не зафиксирован.
19—26.07
Госкомархив → Государственный архив Татарстана
в работеМаршрут сентябрьской команды
19.07
Громославка: поселение + районный архив
2 письмаИсточник 14 стел 1994 года: исходный список, акт установки, происхождение строки «Старостин», разница 286/290, связь списка с физическим погребением. Ждём входящие номера и ответы.
20.07
ЦАМО · бумажное письмо
отправленоДело
24.07
Проект «МАРШИ»
отправленоРоты 6168—6170 и ВЭ № 41518: кто сформировал три роты, кто принял эшелон в Алексине, сохранились ли списки и акты. Ответа пока нет.
24.07
ЦАМО · роты 6168—6170
не отправленоАдресный бумажный пакет уже готов: фонды
18—20.07
Ветка шталага 352
несколько архивовНаписано: Bundesarchiv, Arolsen Archives, НАРБ, ГАМО, РГВА, ГАРФ, Минобороны Беларуси, Белорусскому музею ВОВ, Е. Н. Мох и А. А. Шведу. Arolsen и музей ответили отрицательно; Мох/Швед подтвердили, что открытый оцифрованный массив исчерпан; Bundesarchiv подтвердил приём, РГВА передал запрос в работу, остальные ответы ожидаются.
4
Ближайшие действия — без распыления
Порядок выбран по вероятности получить новый первичный документ.
Текущий вывод: могила Фёдора Николаевича пока не установлена.
Мощённое — нераскрытая мемориальная фамилия; Долина Славы — архивная цепочка поискового перезахоронения; Громославка — физическая надпись на могиле № 2, но личность и наличие именно его останков не доказаны.
Спасская церковь в Салманах
Вчера я писал про черёмуху — мы с другом встретили её у церкви Спаса Нерукотворного Образа в селе Салманы. Про саму церковь тогда почти ничего не написал, хотя она оказалась довольно любопытной.
С дороги церковь выглядит как обычное хозяйственное здание — длинная заброшенная кирпичная постройка. Колокольни, купола и крыши давно нет, стены заросли, и только ряд высоких окон выдаёт храм. В справочниках это деликатно называется «первоначальный облик утрачен».
По данным Татарской энциклопедии, церковь построили в 1795 году на средства помещика Сергея Фёдоровича Желтухина. В карточке храма перечислены три престола: главный — Спаса Нерукотворного Образа, приделы — Донской иконы Божией Матери и Николая Чудотворца.
История у неё с самого начала вышла странная. По краеведческой справке, Желтухин построил храм без разрешения епархии, поэтому его почти тридцать лет не соглашались освящать. На сайте сельского поселения указано, что освятили его только в 1824 году — почти через тридцать лет после постройки.
До 1939 года само село называлось Церковными Салманами, а в дореволюционных источниках — Новоспасским.
Церковь просто огромная, то ли строилось под большое село, то ли она задумывалась как приход для всех окрестных деревень. Посмотрите какой огромный проём, у церкви их два — по одному с противоположных сторон. Рама вся обита железом, по краям — скобы и кольца, сохранились массивные петли. Представляю какие там были ворота!
Я надеялся, что сохранились
Поиск прадеда: логика
На одном из форумов по военному поиску нейросеть нашла подтверждение, что поиск по соседям по призыву может сработать: одному из поисковиков удалось таким способом разыскать не вернувшихся с войны предков одного человека.
Самое забавное, что этого поисковика я знаю. Мы с ним переписывались много лет назад: тогда я пытался нанять его для поиска прадеда, которого сейчас ищу с помощью нейросети. И именно я тогда предложил ему этот способ. Но за заказ он не взялся.
Интересно, у него действительно получилось или он так творчески переосмыслил наш с ним разговор?
Так или иначе, поиск пока продвигается без особых прорывов. Кажется, мы уже упёрлись в ограниченность информации, которая есть в интернете. Скоро будем рассылать вторую волну писем, а пока нейросеть обнаружила интерфейс для платных запросов в наш местный архив. Одно дело мы уже заказали, изучили и после этого дозаказали ещё пять.
Нейросети, конечно, очень хороши в проработке архивной информации. Сам бы я давно уже устал рыться в таких объёмах, а им — только подноси новые источники.
Чего им не хватает — так это фантазии. Интерполируют они хорошо, а с экспрополяцией полный швах пока. Хотя уровень размышлений всё растёт и растёт с выходом новых моделей. Вот совершенно поразивший меня кусочек:
Нейросеть по названию района догадалась, что источник с расхождением дат послевоенный и поняла, что новая дата в нём — ошибка, а не новый факт.
«Флог»: блог в одном файле
«Флог» — это проект, который я давно вынашивал и даже
Его смысл в том, что вы можете вести персональный секретный блог прямо в файле. Поэтому он и называется «флог» — «файловый лог».
Выглядит флог как обычный сайт и работает в браузере, только лежит не в интернете,
Никакой регистрации, отдельного приложения и обязательного облака для этого не нужно. Чтобы перенести флог на другой компьютер, достаточно скопировать его файл. А если хочется синхронизации, его можно самостоятельно положить в удобное вам облако.
У флога есть пять скинов, возможность задать собственный фон и две темы — тёмная и светлая. Все эти настройки, разумеется, тоже сохраняются внутрь самого файла.
Ниже — два примера скинов:
Кроме редактора, который, кстати, позволяет вставлять картинки, нескольких скинов и поиска, тут есть ожидаемая для персонального дневника возможность зашифровать флог паролем.
Шифрование происходит прямо в браузере. Пароль никуда не отправляется и нигде не сохраняется, поэтому, если вы его забудете, восстановить доступ уже не получится. Никакой кнопки «я забыл пароль» тут принципиально нет.
Поскольку весь флог живёт в одном файле, резервные копии делаются очень просто: надо всего лишь иногда копировать этот файл в безопасное место. Но делать это действительно стоит — отдельной серверной копии, из которой можно восстановить удалённый или испорченный дневник, не существует.
Есть ещё один важный момент с обновлением. Поскольку файл флога и есть сам флог, просто заменить его более свежей версией нельзя: вместе со старым файлом вы потеряете все свои заметки. Поэтому для обновления внутренней программы надо скачать новую версию из моего репозитория и кинуть её в браузер на окно текущего флога. После этого он обновит себя сам, сохранив записи и настройки.
Наверное, больше всего мне здесь нравится сама конструкция: это сайт, который не нужно никуда выкладывать, и документ, для которого не нужно устанавливать отдельную программу. Всё необходимое — код, оформление, настройки, картинки и сами записи — находится внутри одного переносимого файла.
Проект вместе с инструкцией выложен в моём репозитории.
«МК-61s»: инструкция к играм
Игры для калькулятора
У меня давно была мысль сделать для ретроконсоли «
Я давно, шаг за шагом начал реализовывать этот проект и вчера вечером
Вышло, на мой взгляд, очень здорово и уместно. Я в качестве теста сделал инструкцию к одной из игр, мне понравилось как это всё смотрится, возможно только листание надо переделать по более плавное, чтобы можно было прочитать разрезанные фразы. Но это уже косметика, которая легко правится.
«МК-61s»: инструкция к играм (подробности)
Хочу чуть подробнее рассказать о том, как сделана инструкция к играм для «
Как я уже говорил, если при входе в папку Проводник ретроконсоль обнаруживает внутри файл autoexec.m61, она запускает его. Файл содержит инструкции для терминала. Это существовавший ещё до моего прихода в проект простой язык, который я довольно сильно расширил под свои нужды. Сейчас в нём есть даже условные конструкции и подпрограммы. То есть это аналог BAT-файла из мира «Виндоуса»
В данном случае autoexec.m61 первым делом командой open открывает для просмотра
На скриншоте видно оба файла. В маркдауне видно всю разметку, которая потом
После того как пользователь выйдет из инструкции, запустится сама игра — в данном случае она вводится в шестнадцатеричных кодах командой hin, потом выставляются регистры, а в конце подаются команды для старта.
В принципе, таким сценарием мы не ограничены, всё зависит от фантазии — можем выводить
«0W-Tube»: зеркалирование
Выпустил новую версию своего агрегатора видео, который я пишу для своего проектора (хотя он запускается на любом устройстве с «Андроидом»).
Добавил поддержку новых способов получения видео, которые подсмотрел в ещё не принятых коммитах утилиты yt-dlp, а также реализовал функцию, которую давно хотел сделать, — отзеркаливание видео.
Заметная часть роликов на видеохостингах загружается в зеркальном виде, и меня это всегда раздражало. Теперь их можно смотреть как задумано. Отзеркаливание реализовано с помощью небольшого шейдера, поэтому размер программы увеличился совсем незначительно.
Видеонаблюдение
Возможно, помните, как я приспособил купленный на «Авито» платёжный терминал под настольные часы. Поскольку сейчас я много времени провожу в кабинете, решил встроить туда ещё и систему видеонаблюдения, чтобы было удобно открывать домофоны со всех сторон дома.
Поскольку от часов отказываться я не планирую, домофонное приложение вызывается тройным стуком — задействуется встроенный акселерометр. У меня давно уже готово такое же приложение для ноутбука: мы зареверсили официальное приложение домофона. Но пользоваться им на ноутбуке оказалось не слишком удобно — открыть дверь пальцем гораздо проще, поэтому на платёжном терминале оно пришлось как нельзя кстати.
Кроме того, поскольку в платёжном терминале есть нейросетка для распознавания лиц, у меня родилась идея непрерывно мониторить все камеры и, если кадры существенно отличаются, запускать эту сеть, чтобы она распознавала всех членов нашей семьи и открывала нам дверь без ключа.
Разобраться, как вызывать эту сеть из приложения, оказалось несложно, но практического результата пока нет. Думаю, это связано с тем, что камера терминала, перед которой я крутил головой, чтобы модель научилась меня узнавать, и камеры домофона сильно различаются по характеристикам. Видимо, придётся
Видеонаблюдение: что вышло
Вчера писал, как пытался превратить бывший платёжный терминал, который стоит у меня на столе, в систему видеомониторинга с распознаванием лиц. Забегая вперёд — всё получилось: от момента, когда я начинаю смотреть в камеру, до открытия двери проходит около трёх секунд. Это вполне комфортно.
Вчера вечером, когда я вернулся домой, решил взять запись моей утренней попытки открыть дверь лицом и скормить её нейросети внутри терминала, чтобы посмотреть, насколько быстро она меня узнает. К моему удивлению, это произошло почти моментально.
Оказалось, что приложение уже работало, просто очень медленно — пришлось бы торчать у камеры примерно полминуты, прежде чем опрос камер дошёл бы до меня и распознал лицо.
То есть проблема была в том, что приложение очень медленно обходит камеры.
Причин оказалось две.
Первая проблема решилась легко: датчика освещения в терминале нет, поэтому я использовал в этом качестве камеру, чтобы переключать тему часов с тёмной на светлую в зависимости от уровня освещённости. Постоянное использование камеры создавало серьёзную нагрузку. Я просто сделал эту функцию отключаемой — не так уж она мне и нужна.
Заодно снизил расход памяти. Часы выводятся случайными шрифтами, чтобы было интереснее, и раньше все 1500 шрифтов регистрировались при запуске, занимая память. Теперь это место переделано: загружаются случайные сто шрифтов, которые перевыбираются каждые пять минут.
Со второй причиной было посложнее, но способ нашёлся. Вместо видеопотоков теперь забираются отдельные кадры несколько раз в секунду: интерфейс домофона предоставляет такую возможность. А вместо анализа разницы между кадрами теперь измеряется изменение освещённости.
При таких условиях даже довольно хиленькое оборудование терминала заработало как надо. Попробую ещё снизить время обработки, но три секунды на распознавание — уже хороший результат.