Левши и ручки
Мои прописи из первого класса. Я учился в 1 «Д» средней школы №7 города Лениногорска
В первом классе я был левшой, как и папа. Не помню в точности, когда меня начали переучивать, помню только, что переучивали в школе, в начальных классах. Кажется именно тогда у меня испортился почерк. Я начал снова красиво писать к концу школы, потом позже в техникуме перешёл на чертёжный шрифт — очень любил черчение, но позже снова вернулся к своему более врачебному варианту.
Никогда не понимал почему меня переучили, думаю и родителям особо не объясняли — надо и всё, время было такое. Сегодня утром наткнулся на одно место в книге, которую сейчас читаю:
Возможно когда-то это было один из двух аргументов, почему нужно переучивать левшей. Второй я тоже знаю, он ещё древнее — ученики в школах всегда сидят справа от окон, левая рука заслоняет свет от окна. Почему этот аргумент так долго был в ходу, бог его знает. Электрическое освещение с нами уже около века.
Я начинал учиться в 1984 году, перьевые ручки пропали в школах примерно к середине 70-х, но возможно методику обновить забыли и она диктовала переучивать левшей по старой памяти — из-за освещения и перьевых ручек, которые ломались.
Мои прописи из первого класса. Я учился в 1 «Д» средней школы №7 города Лениногорска ↓↓
Мои прописи из первого класса. Я учился в 1 «Д» средней школы №7 города Лениногорска
В первом классе я был левшой, как и папа. Не помню в точности, когда меня начали переучивать, помню только, что переучивали в школе, в начальных классах. Кажется именно тогда у меня испортился почерк. Я начал снова красиво писать к концу школы, потом позже в техникуме перешёл на чертёжный шрифт — очень любил черчение, но позже снова вернулся к своему более врачебному варианту.
Никогда не понимал почему меня переучили, думаю и родителям особо не объясняли — надо и всё, время было такое. Сегодня утром наткнулся на одно место в книге, которую сейчас читаю:
Когда пишешь ручкой задом наперед, это погибель для перьев — у левшей та же проблема, все время перья ломаются.— из книги «Среди других» Джо Уолтон.
Возможно когда-то это было один из двух аргументов, почему нужно переучивать левшей. Второй я тоже знаю, он ещё древнее — ученики в школах всегда сидят справа от окон, левая рука заслоняет свет от окна. Почему этот аргумент так долго был в ходу, бог его знает. Электрическое освещение с нами уже около века.
Я начинал учиться в 1984 году, перьевые ручки пропали в школах примерно к середине 70-х, но возможно методику обновить забыли и она диктовала переучивать левшей по старой памяти — из-за освещения и перьевых ручек, которые ломались.
Мои прописи из первого класса. Я учился в 1 «Д» средней школы №7 города Лениногорска ↓↓
«Космонавт — мотоциклетный мастер»
Я много раз писал о том, что есть ряд фильмов и книг, застрявших в моей памяти, которые я едва помню, и почему-то мне плохо от того, что я не могу вспомнить, что это за фильмы или книги. Слава нейросетям — многое из этого списка удалось разыскать, но самые крепкие орешки до сих пор зудят в моей голове: нейросети тут помочь не смогли.
Сегодня благодаря одному из читателей почти закрылся ещё один мой гештальт. «Почти» — потому что книгу я ещё не заказал, но зато теперь знаю её название и даже смог прочесть из неё несколько рассказов в интернете.
Это детская книжка Витаутаса Казевича Петкявичюса «Космонавт — мотоциклетный мастер», которая была издана в 1983 году в переводе с литовского.
Несмотря на то, что я помнил из неё несколько дословных фраз, никак не мог её найти, видимо нигде в интернете нет её текста. Я давно планировал обратиться к читателям в отдельном посте, вдруг кто-то сможет вспомнить, а тут так повезло.
Я много раз писал о том, что есть ряд фильмов и книг, застрявших в моей памяти, которые я едва помню, и почему-то мне плохо от того, что я не могу вспомнить, что это за фильмы или книги. Слава нейросетям — многое из этого списка удалось разыскать, но самые крепкие орешки до сих пор зудят в моей голове: нейросети тут помочь не смогли.
Сегодня благодаря одному из читателей почти закрылся ещё один мой гештальт. «Почти» — потому что книгу я ещё не заказал, но зато теперь знаю её название и даже смог прочесть из неё несколько рассказов в интернете.
Это детская книжка Витаутаса Казевича Петкявичюса «Космонавт — мотоциклетный мастер», которая была издана в 1983 году в переводе с литовского.
Несмотря на то, что я помнил из неё несколько дословных фраз, никак не мог её найти, видимо нигде в интернете нет её текста. Я давно планировал обратиться к читателям в отдельном посте, вдруг кто-то сможет вспомнить, а тут так повезло.
Эффект Шерлока Холмса
Есть такой поразительный эффект; думаю, у него наверняка есть какое-то название, но не вижу смысла им интересоваться. Если ты умеешь находить неточности в деталях какого-то явления, у тебя возникает ложное ощущение, будто ты глубоко понимаешь всю тему в целом.
Все мы, наверное, читали тот рассказ Конана Дойла про Шерлока Холмса, где великий сыщик попытался совершить преступление, но оказалось, что он в этом плох. Думаю, тот рассказ, как и меня, ничему не научил никого из читающих эти строки.
Например, я довольно давно понял, что у меня неплохо получается вставать на место неподготовленного пользователя и находить огрехи в интерфейсах. Это умение помогало мне на прошлой работе в «Яндексе», помогает и сейчас: я вхожу в группу развития нашего продукта и чувствую себя там полезным.
Я несколько раз в жизни настолько преисполнялся уверенности, что, раз я вижу, чем дизайн плох, значит, смогу создать хороший. Все мои три — или около того — попытки довольно жёстко ставили меня на место: критикую я хорошо, а самостоятельно делаю дизайн плохо.
Есть такой поразительный эффект; думаю, у него наверняка есть какое-то название, но не вижу смысла им интересоваться. Если ты умеешь находить неточности в деталях какого-то явления, у тебя возникает ложное ощущение, будто ты глубоко понимаешь всю тему в целом.
Все мы, наверное, читали тот рассказ Конана Дойла про Шерлока Холмса, где великий сыщик попытался совершить преступление, но оказалось, что он в этом плох. Думаю, тот рассказ, как и меня, ничему не научил никого из читающих эти строки.
Например, я довольно давно понял, что у меня неплохо получается вставать на место неподготовленного пользователя и находить огрехи в интерфейсах. Это умение помогало мне на прошлой работе в «Яндексе», помогает и сейчас: я вхожу в группу развития нашего продукта и чувствую себя там полезным.
Я несколько раз в жизни настолько преисполнялся уверенности, что, раз я вижу, чем дизайн плох, значит, смогу создать хороший. Все мои три — или около того — попытки довольно жёстко ставили меня на место: критикую я хорошо, а самостоятельно делаю дизайн плохо.
👍1
Мокко
Я тут на днях читал архивы журнала «Огонёк», пытался понять, когда названия месяцев стали писать с маленькой буквы. Я был убеждён, что до революции названия месяцев всегда писались с большой, на манер английского языка. Оказалось, это не так: во всём архиве месяцы написаны с маленькой, начиная с XIX века.
Но речь не об этом. В выпуске № 6 за 1941 год в одной из заметок попалось слово «мокко», которое выглядит чистым анахронизмом.
Мокко сейчас — синоним моккачино, то есть смеси эспрессо, горячего молока и шоколада, сложно представить, что о его существовании знали в СССР в 40-е. Оказалось, что тогда это был просто сорт арабики из Йемена, названный в честь порта Моха.
Я тут на днях читал архивы журнала «Огонёк», пытался понять, когда названия месяцев стали писать с маленькой буквы. Я был убеждён, что до революции названия месяцев всегда писались с большой, на манер английского языка. Оказалось, это не так: во всём архиве месяцы написаны с маленькой, начиная с XIX века.
Но речь не об этом. В выпуске № 6 за 1941 год в одной из заметок попалось слово «мокко», которое выглядит чистым анахронизмом.
Мокко сейчас — синоним моккачино, то есть смеси эспрессо, горячего молока и шоколада, сложно представить, что о его существовании знали в СССР в 40-е. Оказалось, что тогда это был просто сорт арабики из Йемена, названный в честь порта Моха.
❤2👍1
Забавные часы
Купил себе на «Авито» бывший платёжный терминал — на борту «Андроид», так что мысль была запрограммировать себе (при помощи нейросетей, разумеется) какую-нибудь несложную развлекуху, типа «Мира в бутылке», чтобы на моём столе что-нибудь постоянно двигалось.
Пока у меня что-то руки до этого не дошли, а если уж быть совсем точным, то когда терминал приехал, проект, ради которого я его купил, что-то перестал меня вдохновлять, так что терминал просто одиноко светился по ночам, бесполезно расходуя электричество.
В итоге, когда я в очередной раз засиделся за каким-то проектом, мне пришло в голову, что было бы неплохо, если бы он напоминал бы мне сколько сейчас времени. Признаться, я не особо за ним слежу, часы в углу экрана как-то не бросаются в глаза, а из терминала получится отличное напоминание тому, что пора бы и честь знать.
Скачал с «Гуглфонтса» 1500 случайных шрифтов, выдрал из них цифры и сварганил приложение на «Флаттере», которое выводит цифры случайным шрифтом и в случайном контрастном цвете. В приложении два фона — светлый и тёмный, выбираются автоматически в зависимости от освещённости, которая измеряется камерой.
Проект выложен у меня на «Гитхабе».
Купил себе на «Авито» бывший платёжный терминал — на борту «Андроид», так что мысль была запрограммировать себе (при помощи нейросетей, разумеется) какую-нибудь несложную развлекуху, типа «Мира в бутылке», чтобы на моём столе что-нибудь постоянно двигалось.
Пока у меня что-то руки до этого не дошли, а если уж быть совсем точным, то когда терминал приехал, проект, ради которого я его купил, что-то перестал меня вдохновлять, так что терминал просто одиноко светился по ночам, бесполезно расходуя электричество.
В итоге, когда я в очередной раз засиделся за каким-то проектом, мне пришло в голову, что было бы неплохо, если бы он напоминал бы мне сколько сейчас времени. Признаться, я не особо за ним слежу, часы в углу экрана как-то не бросаются в глаза, а из терминала получится отличное напоминание тому, что пора бы и честь знать.
Скачал с «Гуглфонтса» 1500 случайных шрифтов, выдрал из них цифры и сварганил приложение на «Флаттере», которое выводит цифры случайным шрифтом и в случайном контрастном цвете. В приложении два фона — светлый и тёмный, выбираются автоматически в зависимости от освещённости, которая измеряется камерой.
Проект выложен у меня на «Гитхабе».
👍10
Brainfuck: оптимизирующий интепретатор
Удивительно, как некоторые бесполезные идеи иногда накрепко захватывают наш ум. Я тут в качестве примера хотел привести игру «Жизнь» Конвея, но при всей своей кажущейся бесполезности она в своё время сильно продвинула математику.
Меня в своё время захватила идея языка программирования «Брейнфак». Оглядываясь назад, думаю, её тоже нельзя объявить полностью бесполезной: в своё время я немало поломал голову над созданием оптимизирующего интерпретатора для этого языка.
Для начала — про сам язык. Я узнал о нём примерно в 2000 году, когда была мода на так называемые «эзотерические языки» — языки, разработанные в качестве шутки или для исследования какой-нибудь абсурдной идеи. «Брейнфак» как раз из таких: в нём всего восемь инструкций, но при этом это полноценный язык. Нейросеть мне на нём даже написала «Тетрис».
«Брейнфак» оперирует ячейкой в массиве, индекс которой можно сдвигать при помощи конструкций
Кроме того, в «Брейнфаке» можно организовывать циклы при помощи парных инструкций
Так как это единственная управляющая конструкция, циклов в обычной программе на «Брейнфаке» — огромное количество. Например, вот так выглядит минимальный «квайн», программа, которая при запуске выведет саму себя:
Я задумался об оптимизации программ на «Брейнфаке» ещё в начале 2000-х, запрограммировав свои идеи на ДжаваСкрипте.
Первые мысли были вполне очевидными — объединять одинаковые конструкции. Вместо того чтобы последовательно инкрементировать ячейку десять раз, на этапе предпроцессинга можно сразу подсчитать количество «плюсов» и прибавить сколько требуется.
Потом я начал транслировать идиомы Brainfuck напрямую в ДжаваСкрипт, что тоже заметно повысило производительность. Например, конструкцию
Настоящий прорыв случился, когда я понял: так можно оптимизировать не только отдельные идиомы, а вообще все циклы без ввода-вывода, если после выполнения цикла указатель возвращается в ту же ячейку, с которой начал. Например,
В дальнейшем я сильно развил эту идею. И если простейшие оптимизации встречаются и в реализациях других авторов, то настолько глубоко, насколько мне известно, не копал никто.
В середине 2000-х я переписал свой интерпретатор на ПХП, сохранив основной принцип, и время от времени ненадолго загорался желанием что-нибудь в нём улучшить. Недавно я полностью переписал его с помощью нейросетей, перевёл на свежую версию ПХП, покрыл тестами и так далее. Но сами принципы оптимизации остались теми же — придуманные мной ещё в 2000-е.
Проект лежит у меня на «ГитХабе».
Удивительно, как некоторые бесполезные идеи иногда накрепко захватывают наш ум. Я тут в качестве примера хотел привести игру «Жизнь» Конвея, но при всей своей кажущейся бесполезности она в своё время сильно продвинула математику.
Меня в своё время захватила идея языка программирования «Брейнфак». Оглядываясь назад, думаю, её тоже нельзя объявить полностью бесполезной: в своё время я немало поломал голову над созданием оптимизирующего интерпретатора для этого языка.
Для начала — про сам язык. Я узнал о нём примерно в 2000 году, когда была мода на так называемые «эзотерические языки» — языки, разработанные в качестве шутки или для исследования какой-нибудь абсурдной идеи. «Брейнфак» как раз из таких: в нём всего восемь инструкций, но при этом это полноценный язык. Нейросеть мне на нём даже написала «Тетрис».
«Брейнфак» оперирует ячейкой в массиве, индекс которой можно сдвигать при помощи конструкций
< и >. Кроме того, ячейку можно декрементировать (-), инкрементировать (+), вывести на экран символ, код которой записан в ячейке (.), либо записать код введённого с клавиатуры символа (,).Кроме того, в «Брейнфаке» можно организовывать циклы при помощи парных инструкций
[ и ] неограниченной вложенности. [ проверяет значение текущей ячейки, если там не ноль, выполняет тело цикла. Например, [-] записывает в текущую ячейку ноль, декрементируя значение в цикле.Так как это единственная управляющая конструкция, циклов в обычной программе на «Брейнфаке» — огромное количество. Например, вот так выглядит минимальный «квайн», программа, которая при запуске выведет саму себя:
->++>+++>+>+>++>>+>+>+++>>+>+>++>+++>+++>+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+>+>+
+>>>+++>>>>>+++>+>>>>>>>>>>>>>>>>>>>>>>+++>>>>>>>++>+++>+++>+>>+++>>>+++>+>+++>+
>++>+++>>>+>+>+>+>++>+++>+>+>>+++>>>>>>>+>+>>>+>+>++>+++>+++>+>>+++>+++>+>+++>+>
++>+++>++>>+>+>++>+++>+>+>>+++>>>+++>+>>>++>+++>+++>+>>+++>>>+++>+>+++>+>>+++>>+
++>>+[[>>+[>]+>+[<]<-]>>[>]<+<+++[<]<<+]>>+[>]+++[++++++++++>++[-<++++++++++++++
++>]<.<-<]
Я задумался об оптимизации программ на «Брейнфаке» ещё в начале 2000-х, запрограммировав свои идеи на ДжаваСкрипте.
Первые мысли были вполне очевидными — объединять одинаковые конструкции. Вместо того чтобы последовательно инкрементировать ячейку десять раз, на этапе предпроцессинга можно сразу подсчитать количество «плюсов» и прибавить сколько требуется.
Потом я начал транслировать идиомы Brainfuck напрямую в ДжаваСкрипт, что тоже заметно повысило производительность. Например, конструкцию
[-] можно заменить простой записью нуля в текущую ячейку — без выполнения цикла.Настоящий прорыв случился, когда я понял: так можно оптимизировать не только отдельные идиомы, а вообще все циклы без ввода-вывода, если после выполнения цикла указатель возвращается в ту же ячейку, с которой начал. Например,
[->+++++<] превращается во что-то вроде d[i+1] = d[i] * 5; d[i] = 0.В дальнейшем я сильно развил эту идею. И если простейшие оптимизации встречаются и в реализациях других авторов, то настолько глубоко, насколько мне известно, не копал никто.
В середине 2000-х я переписал свой интерпретатор на ПХП, сохранив основной принцип, и время от времени ненадолго загорался желанием что-нибудь в нём улучшить. Недавно я полностью переписал его с помощью нейросетей, перевёл на свежую версию ПХП, покрыл тестами и так далее. Но сами принципы оптимизации остались теми же — придуманные мной ещё в 2000-е.
Проект лежит у меня на «ГитХабе».
🔥2
Мурчащий котик: результат
Кто-то в комментариях просил показать, каким получился Мурчащий котик — дочкин школьный проект кота. Как по мне, вышло великолепно. Спасибо бабушке, моей маме: в 90-е она много шила и теперь вспомнила прежние навыки. Нашить на такую небольшую игрушку шерсть очень непросто.
Одно меня расстраивает — в проекте дочки мало участвовала сама дочка. Выбрала модель для печати, глаза и нос, по сути — всё. По-прежнему считаю, что это вина школы — преподаватель должен помогать ребёнку выбирать проект по силам.
Кто-то в комментариях просил показать, каким получился Мурчащий котик — дочкин школьный проект кота. Как по мне, вышло великолепно. Спасибо бабушке, моей маме: в 90-е она много шила и теперь вспомнила прежние навыки. Нашить на такую небольшую игрушку шерсть очень непросто.
Одно меня расстраивает — в проекте дочки мало участвовала сама дочка. Выбрала модель для печати, глаза и нос, по сути — всё. По-прежнему считаю, что это вина школы — преподаватель должен помогать ребёнку выбирать проект по силам.
❤2
Ева говорит
Обсуждаем нового тьютора в школе, которую взяли на место уволившейся прежней:
— Дочка, как тебе новый тьютор?
— Мне она не очень нравится…
— А что такое?..
— Ну понимаешь, она не очень-то вовлечённая. Если Э. И. (это учитель) или Г. И. (прежний тьютор) кидаешь мячик своих эмоций, они кидают его в ответ, а этот тьютор как будто шагает в сторону и мячик падает на пол…
февраль 2026
⁂
В школе заболела учительница, её заменяет другая, спрашиваю Еву нравится ли ей новая учительница:
— Нет, папочка, не очень!..
— Почему?
— Ну знаешь, она слишком строгая, всё контролирует, как будто каждый наш шаг — решающий шаг в будущее!
21.02.2026
⁂
Мы в тот день летали в Стамбул, прилетели очень поздно, пока ехали в отель, Ева уснула. Стараемся её растормошить, так как через несколько минут нам выходить:
— Ева, ну смотри какая красота! Какое красивое здание!
— Угу, — нехотя открывая один глаз и щурясь, — тут самое время появиться кроватке, но что-то я её не вижу!
21.02.2026
⁂
Выходит из детской с целой кучей лошадок, вырезанных из бумаги и раскрашенных:
— Уф, папочка, я так устала их вырезать!
Я, знаю, что она опять это скорее всего делала не за столом, а на полу, поэтому и чувствует себя уставшей:
— Может тебе это надо было не на полу делать, давай, может, я тебе стул отрегулирую, если неудобно?
— Нет, я сейчас ничего этого не хочу, хочу чтобы ты посмотрел и восхитился!
28.03.2026
⁂
Выходные, я у себя в кабинете, наблюдаю за экспериментом на дашборде, дочка выходит из комнаты, видит меня:
— Пап, а есть что-нибудь вкусненькое?
— Да, там яблоки есть и мандарины…
Поворачивается в сторону кухонного стола, видит её любимые булочки с маком:
— Не-е-т, пожалуй, я возьму булочки. Будут и́х уминать и причитать как я с них толстею…
12.04.2026
⁂
У Евы выскочил очередной прыщ на носу, жена:
— Опять в тебя кто-то влюбился!
Дочка смеётся:
— В меня уже столько мальчиков втюрилось, сколько у нас в классе нет!
29.04.2026
⁂
Ева сегодня плохо себя чувствует, легла в моём кабинете и пробует уснуть:
— Пап, включи какую-нибудь свою лекцию, может я усну?
Через несколько минут:
— Надо было записать голос моего учителя по философии, у него очень спокойный голос, даже чрезмерно, я всегда на его уроках отлично спала!
11.05.2026
Обсуждаем нового тьютора в школе, которую взяли на место уволившейся прежней:
— Дочка, как тебе новый тьютор?
— Мне она не очень нравится…
— А что такое?..
— Ну понимаешь, она не очень-то вовлечённая. Если Э. И. (это учитель) или Г. И. (прежний тьютор) кидаешь мячик своих эмоций, они кидают его в ответ, а этот тьютор как будто шагает в сторону и мячик падает на пол…
февраль 2026
⁂
В школе заболела учительница, её заменяет другая, спрашиваю Еву нравится ли ей новая учительница:
— Нет, папочка, не очень!..
— Почему?
— Ну знаешь, она слишком строгая, всё контролирует, как будто каждый наш шаг — решающий шаг в будущее!
21.02.2026
⁂
Мы в тот день летали в Стамбул, прилетели очень поздно, пока ехали в отель, Ева уснула. Стараемся её растормошить, так как через несколько минут нам выходить:
— Ева, ну смотри какая красота! Какое красивое здание!
— Угу, — нехотя открывая один глаз и щурясь, — тут самое время появиться кроватке, но что-то я её не вижу!
21.02.2026
⁂
Выходит из детской с целой кучей лошадок, вырезанных из бумаги и раскрашенных:
— Уф, папочка, я так устала их вырезать!
Я, знаю, что она опять это скорее всего делала не за столом, а на полу, поэтому и чувствует себя уставшей:
— Может тебе это надо было не на полу делать, давай, может, я тебе стул отрегулирую, если неудобно?
— Нет, я сейчас ничего этого не хочу, хочу чтобы ты посмотрел и восхитился!
28.03.2026
⁂
Выходные, я у себя в кабинете, наблюдаю за экспериментом на дашборде, дочка выходит из комнаты, видит меня:
— Пап, а есть что-нибудь вкусненькое?
— Да, там яблоки есть и мандарины…
Поворачивается в сторону кухонного стола, видит её любимые булочки с маком:
— Не-е-т, пожалуй, я возьму булочки. Будут и́х уминать и причитать как я с них толстею…
12.04.2026
⁂
У Евы выскочил очередной прыщ на носу, жена:
— Опять в тебя кто-то влюбился!
Дочка смеётся:
— В меня уже столько мальчиков втюрилось, сколько у нас в классе нет!
29.04.2026
⁂
Ева сегодня плохо себя чувствует, легла в моём кабинете и пробует уснуть:
— Пап, включи какую-нибудь свою лекцию, может я усну?
Через несколько минут:
— Надо было записать голос моего учителя по философии, у него очень спокойный голос, даже чрезмерно, я всегда на его уроках отлично спала!
11.05.2026
❤🔥5
Забавные часы: утечка памяти
Обратил внимание, что мои «Забавные часы» иногда как будто вылетают: дважды по утрам я приходил, а на терминале — «Андроид», без часов. Я сразу заподозрил, что моё приложение «течёт»: накапливает ресурсы и не освобождает их, пока система его не прибивает из-за нехватки памяти.
Нейросеть мне на слово не поверила — я использовал ГПТ-5.5. Видимо, она уже начала подозревать, что человека не всегда стоит слушать. Упёрлась — и всё: «Нет, — говорит, — у тебя не утечки, это всё кеши приложения». Никаких моих приказов не слушалась. Пришлось запустить замеры на четыре часа и построить график потребления памяти.
Только после этого она начала разбираться в проблеме. Неожиданно оказалось, что причина — в компоненте работы с камерой фреймворка «Флаттер», на котором построено это приложение. Камера используется для мониторинга освещённости: в моём устройстве нет соответствующего датчика, поэтому приложение переключает фон, определяя уровень света с помощью камеры.
Как мы ни крутили этот модуль, за два дня работы с камерой ресурсы всё равно выедались подчистую. Пришлось заменить компонент на нативный для «Андроида».
Обратил внимание, что мои «Забавные часы» иногда как будто вылетают: дважды по утрам я приходил, а на терминале — «Андроид», без часов. Я сразу заподозрил, что моё приложение «течёт»: накапливает ресурсы и не освобождает их, пока система его не прибивает из-за нехватки памяти.
Нейросеть мне на слово не поверила — я использовал ГПТ-5.5. Видимо, она уже начала подозревать, что человека не всегда стоит слушать. Упёрлась — и всё: «Нет, — говорит, — у тебя не утечки, это всё кеши приложения». Никаких моих приказов не слушалась. Пришлось запустить замеры на четыре часа и построить график потребления памяти.
Только после этого она начала разбираться в проблеме. Неожиданно оказалось, что причина — в компоненте работы с камерой фреймворка «Флаттер», на котором построено это приложение. Камера используется для мониторинга освещённости: в моём устройстве нет соответствующего датчика, поэтому приложение переключает фон, определяя уровень света с помощью камеры.
Как мы ни крутили этот модуль, за два дня работы с камерой ресурсы всё равно выедались подчистую. Пришлось заменить компонент на нативный для «Андроида».
👍2❤1🤔1
Браузер «Арахна»
Вряд ли на свете много людей, которые в 2026 году добровольно пытаются выйти в интернет из ДОСа. Но меня эта идея почему-то всегда цепляла. Есть в этом что-то очень уютное: современный интернет, гигабитные сети, беспроводной доступ, — и рядом с этим чёрный экран,
Не то чтобы меня прямо сильно тянуло «пользоваться интернетом из ДОСа». Понятно, что практического смысла в этом почти никакого нет. Но как эксперимент — очень интересно. Я давно знал, что для ДОСа существуют браузеры. Наверное, даже не один. Значит, теоретически это всё можно собрать: поставить ДОС, настроить сеть, добыть TCP/IP-стек, запустить какой-нибудь браузер и посмотреть, как это вообще выглядит.
Сложностей, в общем-то, не так уж много. Главная — аккуратно собрать по всему интернету кучу старого софта, разложить его по каталогам и не перепутать, что должно грузиться в
Я наскоро состряпал виртуалку в 86Box, накатил туда MS-DOS 6.22, добавил драйвер сидирома, мышь, Volkov Commander и начал оживлять сеть. В качестве сетевой карты выбрал эмулируемую NE2000 — это такой классический вариант для подобных экспериментов. В 86Box удобно включить SLiRP, и тогда не надо отдельно городить мосты на хостовой машине: виртуальная ДОС-машина получает сеть как будто через маленький виртуальный роутер.
Дальше понадобились две вещи: пакетный драйвер для NE2000 и mTCP. Пакетный драйвер — это такая прослойка, которая даёт ДОС-программам доступ к сетевой карте. А mTCP уже даёт нормальные утилиты поверх TCP/IP: DHCP,
Софт пришлось собирать из разных мест. Почти всё нашлось на old-dos.ru, туда же сходил за Volkov Commander. Без него в ДОСе быстро становится тоскливо: можно, конечно, всё делать командами, но двухпанельный файловый менеджер сразу возвращает ощущение нормальной жизни. Для мыши поставил CuteMouse v2.1b4 — в первую очередь потому, что он маленький. В ДОСе это всё ещё имеет значение: каждый драйвер отъедает кусок базовой памяти, а её всего 640 КБ, и браузеру потом тоже где-то надо жить.
Отдельный маленький квест — освободить побольше базовой памяти. Может показаться, что 640 КБ — это просто анекдот про Билла Гейтса, но в мире ДОСа это очень важная штука. Поэтому HIMEM.SYS, EMM386 и прочее снова становятся не музейными словами, тут придётся всё настроить как надо.
Я вынес наверх всё, что получилось: драйвер сидирома,
После всех этих манипуляций mem стал показывать уже вполне приличную картину: около 609 КБ свободной базовой памяти и ДОС, живущий в HMA. Раньше с этим так много возились не потому что это было интересно, а потому что иначе программы могли просто не запуститься.
Сеть завелась неожиданно буднично. NE2000 загрузился почти сразу (в первой попытке я указал не совсем верные параметры), mTCP через DHCP получил настройки, после чего стало понятно, что ДОС-машина действительно видит внешний мир.
Самый странный момент — набирать
После этого я поставил браузер «Арахна». И вот тут эксперимент стал совсем прекрасным. Потому что это уже не просто «я настроил сеть». Это настоящий интернет.
Конечно, пользоваться этим всерьёз невозможно — браузер по современным меркам совсем примитивный, поддержки HTTPS нет, но посмотреть было интересно.
Вряд ли на свете много людей, которые в 2026 году добровольно пытаются выйти в интернет из ДОСа. Но меня эта идея почему-то всегда цепляла. Есть в этом что-то очень уютное: современный интернет, гигабитные сети, беспроводной доступ, — и рядом с этим чёрный экран,
AUTOEXEC.BAT, CONFIG.SYS и ощущение, что если где-то ошибёшься в одной цифре IRQ, то ничего не взлетит.Не то чтобы меня прямо сильно тянуло «пользоваться интернетом из ДОСа». Понятно, что практического смысла в этом почти никакого нет. Но как эксперимент — очень интересно. Я давно знал, что для ДОСа существуют браузеры. Наверное, даже не один. Значит, теоретически это всё можно собрать: поставить ДОС, настроить сеть, добыть TCP/IP-стек, запустить какой-нибудь браузер и посмотреть, как это вообще выглядит.
Сложностей, в общем-то, не так уж много. Главная — аккуратно собрать по всему интернету кучу старого софта, разложить его по каталогам и не перепутать, что должно грузиться в
CONFIG.SYS, что — в AUTOEXEC.BAT, а что надо запускать руками. Для усидчивого человека это не проблема, но процесс очень характерный: вроде бы ты просто хочешь открыть сайт, а в итоге сидишь и думаешь, какой драйвер мыши занимает меньше базовой памяти.Я наскоро состряпал виртуалку в 86Box, накатил туда MS-DOS 6.22, добавил драйвер сидирома, мышь, Volkov Commander и начал оживлять сеть. В качестве сетевой карты выбрал эмулируемую NE2000 — это такой классический вариант для подобных экспериментов. В 86Box удобно включить SLiRP, и тогда не надо отдельно городить мосты на хостовой машине: виртуальная ДОС-машина получает сеть как будто через маленький виртуальный роутер.
Дальше понадобились две вещи: пакетный драйвер для NE2000 и mTCP. Пакетный драйвер — это такая прослойка, которая даёт ДОС-программам доступ к сетевой карте. А mTCP уже даёт нормальные утилиты поверх TCP/IP: DHCP,
ping и прочие радости цивилизации. Я делал по одной из инструкций, только с поправками под свою конфигурацию.Софт пришлось собирать из разных мест. Почти всё нашлось на old-dos.ru, туда же сходил за Volkov Commander. Без него в ДОСе быстро становится тоскливо: можно, конечно, всё делать командами, но двухпанельный файловый менеджер сразу возвращает ощущение нормальной жизни. Для мыши поставил CuteMouse v2.1b4 — в первую очередь потому, что он маленький. В ДОСе это всё ещё имеет значение: каждый драйвер отъедает кусок базовой памяти, а её всего 640 КБ, и браузеру потом тоже где-то надо жить.
Отдельный маленький квест — освободить побольше базовой памяти. Может показаться, что 640 КБ — это просто анекдот про Билла Гейтса, но в мире ДОСа это очень важная штука. Поэтому HIMEM.SYS, EMM386 и прочее снова становятся не музейными словами, тут придётся всё настроить как надо.
Я вынес наверх всё, что получилось: драйвер сидирома,
MSCDEX, клавиатуру, мышь, сетевой драйвер. В CONFIG.SYS у меня в итоге появились HIMEM.SYS, EMM386, DOS=HIGH,UMB и DEVICEHIGH для части драйверов. В AUTOEXEC.BAT — загрузка SMARTDRV, путь к mTCP, русская кодовая страница, драйвер NE2000, DHCP и CuteMouse. Всё что можно загружается командой LH.После всех этих манипуляций mem стал показывать уже вполне приличную картину: около 609 КБ свободной базовой памяти и ДОС, живущий в HMA. Раньше с этим так много возились не потому что это было интересно, а потому что иначе программы могли просто не запуститься.
Сеть завелась неожиданно буднично. NE2000 загрузился почти сразу (в первой попытке я указал не совсем верные параметры), mTCP через DHCP получил настройки, после чего стало понятно, что ДОС-машина действительно видит внешний мир.
Самый странный момент — набирать
ping в чистом ДОСе. Оно не просто запускается, а реально пингует. Мозг немного сопротивляется.После этого я поставил браузер «Арахна». И вот тут эксперимент стал совсем прекрасным. Потому что это уже не просто «я настроил сеть». Это настоящий интернет.
Конечно, пользоваться этим всерьёз невозможно — браузер по современным меркам совсем примитивный, поддержки HTTPS нет, но посмотреть было интересно.
👍7
Программирование на одной GPU
Интересная штука встречается очень часто. Мне сложно её принять, хотя я понимаю, почему так произошло. Для людей нейросети слились в одно большое атомарное явление. Ну, знаете, как «учёные»: «Учёные заявили…». Какие учёные? Может, там биолог про математику говорит? Многим неважно, есть ли консенсус среди учёных по этому вопросу и насколько проверены данные, на основании которых «учёные заявили».
Так же и тут. Как будто бы многие считают, что нейросети одинаковые: видел одну — видел все. Разумеется, это не так. Они разные по размеру, а значит, и по способностям. У большинства есть специализация, они обучались на разных данных и обладают разным «опытом». И то, что вы можете развернуть у себя на ноутбуке, в подмётки не годится большинству из того, что есть в «облаках».
Мы недавно провели эксперимент среди нейросетей для программирования, которые можно развернуть на одной Nvidia H100. У неё 96 ГБ видеопамяти, и это сейчас один из самых главных критериев — размер памяти, а не мощность самой карты.
Даже в этом сегменте результаты сильно различаются. Мы попробовали следующие сети:
1. openai/gpt-oss-120b — четыре бита на параметр
2. Qwen/Qwen3-Coder-Next-FP8
3. zai-org/GLM-4.7-Flash
4. Qwen/Qwen3-Coder-30B-A3B-Instruct
5. gemma-4-31B-it
Среди этих почти одинаковых по параметрам сетей — выбивается только OSS со своими 120 миллиардами параметров, но в сильно урезанном виде — есть явный и безусловный лидер: Qwen3-Coder-Next-FP8. Про более крупные сети и говорить не приходится: их архитектура и данные для обучения уносят их куда дальше по способностям и аналогам знаний о предмете.
Я веду к тому, что если вы попробовали что-то делать с какой-то нейросеткой и у вас плохой опыт, то дело в вас — вы неправильно подобрали себе исполнителя.
Интересная штука встречается очень часто. Мне сложно её принять, хотя я понимаю, почему так произошло. Для людей нейросети слились в одно большое атомарное явление. Ну, знаете, как «учёные»: «Учёные заявили…». Какие учёные? Может, там биолог про математику говорит? Многим неважно, есть ли консенсус среди учёных по этому вопросу и насколько проверены данные, на основании которых «учёные заявили».
Так же и тут. Как будто бы многие считают, что нейросети одинаковые: видел одну — видел все. Разумеется, это не так. Они разные по размеру, а значит, и по способностям. У большинства есть специализация, они обучались на разных данных и обладают разным «опытом». И то, что вы можете развернуть у себя на ноутбуке, в подмётки не годится большинству из того, что есть в «облаках».
Мы недавно провели эксперимент среди нейросетей для программирования, которые можно развернуть на одной Nvidia H100. У неё 96 ГБ видеопамяти, и это сейчас один из самых главных критериев — размер памяти, а не мощность самой карты.
Даже в этом сегменте результаты сильно различаются. Мы попробовали следующие сети:
1. openai/gpt-oss-120b — четыре бита на параметр
2. Qwen/Qwen3-Coder-Next-FP8
3. zai-org/GLM-4.7-Flash
4. Qwen/Qwen3-Coder-30B-A3B-Instruct
5. gemma-4-31B-it
Среди этих почти одинаковых по параметрам сетей — выбивается только OSS со своими 120 миллиардами параметров, но в сильно урезанном виде — есть явный и безусловный лидер: Qwen3-Coder-Next-FP8. Про более крупные сети и говорить не приходится: их архитектура и данные для обучения уносят их куда дальше по способностям и аналогам знаний о предмете.
Я веду к тому, что если вы попробовали что-то делать с какой-то нейросеткой и у вас плохой опыт, то дело в вас — вы неправильно подобрали себе исполнителя.
Компьютерная шея
Что-то мне в последнее время часто попадаются статьи с фотографиями и рисунками так называемой «компьютерной шеи» — это когда человек, подолгу работая за компьютером, якобы со временем вырабатывает привычку постоянно наклонять голову чуть вперёд.
Преподносится это как «вред от этих ваших компьютеров». В 90-е все сидели за экранами от излучения монитора — до сих пор не знаю, помогали они чему-то или только портили зрение, потому что затемняли экран. Вот любопытно, какую защиту теперь придумают, чтобы помочь нашим шеям.
Я тут случайно наткнулся на фильм «Бравый солдат Швейк» 1957 года, так там у кучи народу такое положение шеи. Где же они в пятидесятых годах компьютеры взяли?
Что-то мне в последнее время часто попадаются статьи с фотографиями и рисунками так называемой «компьютерной шеи» — это когда человек, подолгу работая за компьютером, якобы со временем вырабатывает привычку постоянно наклонять голову чуть вперёд.
Преподносится это как «вред от этих ваших компьютеров». В 90-е все сидели за экранами от излучения монитора — до сих пор не знаю, помогали они чему-то или только портили зрение, потому что затемняли экран. Вот любопытно, какую защиту теперь придумают, чтобы помочь нашим шеям.
Я тут случайно наткнулся на фильм «Бравый солдат Швейк» 1957 года, так там у кучи народу такое положение шеи. Где же они в пятидесятых годах компьютеры взяли?
Память во сне
Интересная штука — серийные сны, если задуматься. Не знаю, как они официально называются, это я их так называю, но мне, как, наверное, и многим, иногда снятся сны с продолжением. Причём продолжение может присниться через несколько лет после первых серий.
Сегодня мне снился сон-продолжение, где моя карьера пошла совершенно по другому пути. Например, в нём я после переезда из Москвы ещё раз пришёл поработать в «Яндекс».
После пробуждения я мало что помню: сон выветрился за какие-то минуты. При этом я успел запомнить, что многие события были прямым продолжением сна, который снился мне в последний раз около десятилетия назад.
Вот у меня и возник вопрос — а где, собственно, хранится память о всех этих событиях между моими снами? Для моей «дневной личности» она недостижима — просыпаясь, я почти сразу забываю о том, что произошло. Получается, что во все я действую от лица личности с каким-то другим опытом, память которой хранится отдельно от моей, да ещё и сохраняется длительное время. Попахивает шизофренией.
Интересная штука — серийные сны, если задуматься. Не знаю, как они официально называются, это я их так называю, но мне, как, наверное, и многим, иногда снятся сны с продолжением. Причём продолжение может присниться через несколько лет после первых серий.
Сегодня мне снился сон-продолжение, где моя карьера пошла совершенно по другому пути. Например, в нём я после переезда из Москвы ещё раз пришёл поработать в «Яндекс».
После пробуждения я мало что помню: сон выветрился за какие-то минуты. При этом я успел запомнить, что многие события были прямым продолжением сна, который снился мне в последний раз около десятилетия назад.
Вот у меня и возник вопрос — а где, собственно, хранится память о всех этих событиях между моими снами? Для моей «дневной личности» она недостижима — просыпаясь, я почти сразу забываю о том, что произошло. Получается, что во все я действую от лица личности с каким-то другим опытом, память которой хранится отдельно от моей, да ещё и сохраняется длительное время. Попахивает шизофренией.
Клим С.
Иногда я жалею, что время ЖЖ прошло. Когда-то это была очень популярная площадка для блогов — настолько популярная, что я знал немало людей, которые ставили знак равенства между ЖЖ и блогами вообще.
Жалею не из-за какой-то абстрактной ностальгии, а потому что там часто можно было встретить по-настоящему интересных людей. Они, конечно, тоже тонули в общей массе авторов, но, к счастью, ЖЖ почему-то манил оригинальных пишущих людей, и найти их там было куда проще, чем в нынешнем интернете.
Именно там я познакомился со многими, с кем потом годами приятельствовал. Позже жизнь нас пораскидала, но с кем-то я вижусь до сих пор. Правда, за их творческой жизнью теперь, к сожалению, почти негде наблюдать.
ЖЖ, умерев, не породил себе наследников — разве что зеркальные лабиринты площадок для микроформатов, бесконечно переотражающие одни и те же тренды в разных лицах.
Одного из таких приятелей, назовём его Клим С., я вижу почти каждый день. Иногда встречаю на улице, иногда вижу из окна кабинета — он работает со мной в одном здании. Когда-то мне нравилось читать его небольшие тексты, пропитанные здоровым хармсовским безумием. Теперь читать негде, ЖЖ окуклился, но с Климом я всякий раз здороваюсь, когда вижу его на улице — он вечно куда-то спешит, передвигаясь размашистым шагом.
А недавно он отпустил длинные волосы и стал мне очень сильно кого-то напоминать. Сегодня, когда я его в очередной раз увидел из окна, понял кого — персонажа игры «Тир На Ног» для «Спектрума», в которую очень любил играть один из моих друзей.
Меня игра особо не цепляла, но мой друг, приходя в гости, частенько за неё садился. Походка того персонажа и его развивающиеся волосы, как мне кажется, здорово напоминают моего приятеля Клима С.
Пользуясь доступностью нейросетей, я, пока ехал домой, накидал небольшой виджет, в котором вы можете наблюдать персонажа этой игры, так похожего на моего приятеля Клима С., большого оригинала в душе, который теперь отлично маскируется под обычного офисного работника.
Иногда я жалею, что время ЖЖ прошло. Когда-то это была очень популярная площадка для блогов — настолько популярная, что я знал немало людей, которые ставили знак равенства между ЖЖ и блогами вообще.
Жалею не из-за какой-то абстрактной ностальгии, а потому что там часто можно было встретить по-настоящему интересных людей. Они, конечно, тоже тонули в общей массе авторов, но, к счастью, ЖЖ почему-то манил оригинальных пишущих людей, и найти их там было куда проще, чем в нынешнем интернете.
Именно там я познакомился со многими, с кем потом годами приятельствовал. Позже жизнь нас пораскидала, но с кем-то я вижусь до сих пор. Правда, за их творческой жизнью теперь, к сожалению, почти негде наблюдать.
ЖЖ, умерев, не породил себе наследников — разве что зеркальные лабиринты площадок для микроформатов, бесконечно переотражающие одни и те же тренды в разных лицах.
Одного из таких приятелей, назовём его Клим С., я вижу почти каждый день. Иногда встречаю на улице, иногда вижу из окна кабинета — он работает со мной в одном здании. Когда-то мне нравилось читать его небольшие тексты, пропитанные здоровым хармсовским безумием. Теперь читать негде, ЖЖ окуклился, но с Климом я всякий раз здороваюсь, когда вижу его на улице — он вечно куда-то спешит, передвигаясь размашистым шагом.
А недавно он отпустил длинные волосы и стал мне очень сильно кого-то напоминать. Сегодня, когда я его в очередной раз увидел из окна, понял кого — персонажа игры «Тир На Ног» для «Спектрума», в которую очень любил играть один из моих друзей.
Меня игра особо не цепляла, но мой друг, приходя в гости, частенько за неё садился. Походка того персонажа и его развивающиеся волосы, как мне кажется, здорово напоминают моего приятеля Клима С.
Пользуясь доступностью нейросетей, я, пока ехал домой, накидал небольшой виджет, в котором вы можете наблюдать персонажа этой игры, так похожего на моего приятеля Клима С., большого оригинала в душе, который теперь отлично маскируется под обычного офисного работника.
👀1🫡1
Manchester Baby
Мне кажется, нейросети потенциально могут породить такое явление: зачем искать и скачивать программу, если проще её написать? Когда-то мы копили всё скачанное, потому что качать было долго. Сейчас я не храню ничего, что можно скачать повторно. Вполне возможно, скоро так же будет и с программами.
Я уже начал лениться. Я тут недавно писал про «компьютерную шею» в фильме про Швейка 1957 года, а сегодня прочитал про эмулятор компьютера 1948 года — Манчестерской малой экспериментальной машины. Я о ней никогда не слышал и не то, чтобы это что-то меняло в моём восприятии фильма про Швейка, но стало интересно — что там вообще можно было на ней запрограммировать в 1948 году.
Я знаю только о компьютерах Конрада Цузе того же времени, на этом мои познания заканчиваются, но о его работе никто и не знал — война помешала, а тут что-то более мейнстримовое.
Эмулятор из прочитанной мной статьи идёт в наборе с целой кучей других и обещает качаться больше недели, поэтому я нашёл другой. Я сильно не утруждался, первым мне попался экземпляр для ДОСа, но поскольку я недавно как раз запускал у себя ДОС, то решил, что он меня вполне устроит.
Оказалось, что устройство ввода компьютера того времени не вполне совместимо с моим терпением, тыкаться в эмуляторе ДОСа быстро наскучило. И вот тут проявилась та лень, о которой я пишу: вместо того, чтобы поискать новый эмулятор, я просто попросил нейросеть адаптировать мне то что есть для моей операционной системы.
Нейросетка справилась одной левой — я сел позаниматься своими вещами, а когда переключился обратно, у меня уже запускался готовый эмулятор.
Мне кажется, нейросети потенциально могут породить такое явление: зачем искать и скачивать программу, если проще её написать? Когда-то мы копили всё скачанное, потому что качать было долго. Сейчас я не храню ничего, что можно скачать повторно. Вполне возможно, скоро так же будет и с программами.
Я уже начал лениться. Я тут недавно писал про «компьютерную шею» в фильме про Швейка 1957 года, а сегодня прочитал про эмулятор компьютера 1948 года — Манчестерской малой экспериментальной машины. Я о ней никогда не слышал и не то, чтобы это что-то меняло в моём восприятии фильма про Швейка, но стало интересно — что там вообще можно было на ней запрограммировать в 1948 году.
Я знаю только о компьютерах Конрада Цузе того же времени, на этом мои познания заканчиваются, но о его работе никто и не знал — война помешала, а тут что-то более мейнстримовое.
Эмулятор из прочитанной мной статьи идёт в наборе с целой кучей других и обещает качаться больше недели, поэтому я нашёл другой. Я сильно не утруждался, первым мне попался экземпляр для ДОСа, но поскольку я недавно как раз запускал у себя ДОС, то решил, что он меня вполне устроит.
Оказалось, что устройство ввода компьютера того времени не вполне совместимо с моим терпением, тыкаться в эмуляторе ДОСа быстро наскучило. И вот тут проявилась та лень, о которой я пишу: вместо того, чтобы поискать новый эмулятор, я просто попросил нейросеть адаптировать мне то что есть для моей операционной системы.
Нейросетка справилась одной левой — я сел позаниматься своими вещами, а когда переключился обратно, у меня уже запускался готовый эмулятор.
This media is not supported in your browser
VIEW IN TELEGRAM
👍1
Manchester Baby: что за компьютер
Вчера я писал про Манчестерскую малую экспериментальную машину по прозвищу «Малышка», но не написал, что этот компьютер из себя представлял.
Если бы вы встретили его в какой-то из комнат какого-нибудь заброшенного НИИ, вряд ли поняли бы, что это компьютер: несмотря на свои не впечатляющие сейчас характеристики (память — 32 32-битных слова, производительность — 830 инструкций в секунду), он занимал несколько шкафов и весил одну тонну.
Машина была разработана в качестве исследовательского прототипа для проверки концепции цифровой памяти с использованием электронно-лучевой трубки, вероятно, поэтому в рабочем состоянии не сохранилась, но в Музее науки и промышленности в Манчестере есть работающая копия.
Машина запустила первую в мире сохранённую программу примерно в 11:00 утра в понедельник, 21 июня 1948 года. Программа вычисляла наибольший собственный делитель числа 2¹⁸, перебирая все числа от 2¹⁸ в обратном порядке.
Программа состояла из семнадцати инструкций и выполнялась около 52 минут, пока не выдала правильный ответ — 131 072. За это время компьютер выполнил около 3,5 миллиона операций.
Машина использовала четыре электронно-лучевые трубки — три в качестве памяти и одну для отображения. Трубка отображения могла показать содержимое одной из трёх областей памяти — основную, аккумулятор «А» и трубку управления, где хранились адрес текущей команды и сама выполняемая инструкция.
Назначение почти всех трубок самоочевидно, а «аккумулятор» должен быть знаком каждому, кто знает слово «ассемблер».
Ввод был устроен тоже просто: 32 кнопки, позволяющие выставить 32 бита в текущем слове, кнопки прохода по памяти, «запуск», переключение режима дисплея и так далее.
Таким образом оператор последовательно передвигался по всем необходимым ячейкам памяти, вводя переключателями 32 бита в нужную ячейку, — так осуществлялся ввод программы.
Вчера я писал про Манчестерскую малую экспериментальную машину по прозвищу «Малышка», но не написал, что этот компьютер из себя представлял.
Если бы вы встретили его в какой-то из комнат какого-нибудь заброшенного НИИ, вряд ли поняли бы, что это компьютер: несмотря на свои не впечатляющие сейчас характеристики (память — 32 32-битных слова, производительность — 830 инструкций в секунду), он занимал несколько шкафов и весил одну тонну.
Машина была разработана в качестве исследовательского прототипа для проверки концепции цифровой памяти с использованием электронно-лучевой трубки, вероятно, поэтому в рабочем состоянии не сохранилась, но в Музее науки и промышленности в Манчестере есть работающая копия.
Машина запустила первую в мире сохранённую программу примерно в 11:00 утра в понедельник, 21 июня 1948 года. Программа вычисляла наибольший собственный делитель числа 2¹⁸, перебирая все числа от 2¹⁸ в обратном порядке.
Программа состояла из семнадцати инструкций и выполнялась около 52 минут, пока не выдала правильный ответ — 131 072. За это время компьютер выполнил около 3,5 миллиона операций.
Машина использовала четыре электронно-лучевые трубки — три в качестве памяти и одну для отображения. Трубка отображения могла показать содержимое одной из трёх областей памяти — основную, аккумулятор «А» и трубку управления, где хранились адрес текущей команды и сама выполняемая инструкция.
Назначение почти всех трубок самоочевидно, а «аккумулятор» должен быть знаком каждому, кто знает слово «ассемблер».
Ввод был устроен тоже просто: 32 кнопки, позволяющие выставить 32 бита в текущем слове, кнопки прохода по памяти, «запуск», переключение режима дисплея и так далее.
Таким образом оператор последовательно передвигался по всем необходимым ячейкам памяти, вводя переключателями 32 бита в нужную ячейку, — так осуществлялся ввод программы.
❤2
Программирование на двух GPU
На этой неделе мы наконец получили NVLink, чтобы связать наши два видеоускорителя собственной шиной. Это нужно, чтобы запускать модели большего размера, занимающие обе карты: на шине общего назначения скорости не те, и модели еле ворочаются.
Развернуть и потрогать пока успели только две модели:
1) deepseek-ai/DeepSeek-V4-Flash
2) QuantTrio/MiniMax-M2.7-AWQ
Обе модели урезанные, разумеется, но даже так они еле умещаются на картах, параллельность никакая. Эти модели должны быть мощнее, чем те, которые удалось запустить на одной карте; по крайней мере, синтетика даёт ожидаемые результаты, но на практике не всё так однозначно.
Ребятам больше всех пока понравился «Квен-Кодер» из предыдущего эксперимента, хотя я уверен, что они ещё просто не распробовали новые модели.
Надо понимать, что серьёзным облачным моделям эти модели в подмётки не годятся: они мощнее примерно на порядок, и оборудование, которое позволяет их запустить, стоит совершенно других денег.
Для серьёзного программирования такие локальные модели непригодны, но в каких-то вещах их приспособить всё же удаётся. Сейчас мы заняты тем, что пытаемся очертить для себя круг задач, где они облегчают, а не усложняют жизнь. Поделиться мне пока ещё нечем, так как эксперименты в самом разгаре.
Две карты Nvidia H100, вынутые из нашего сервера ↓↓
На этой неделе мы наконец получили NVLink, чтобы связать наши два видеоускорителя собственной шиной. Это нужно, чтобы запускать модели большего размера, занимающие обе карты: на шине общего назначения скорости не те, и модели еле ворочаются.
Развернуть и потрогать пока успели только две модели:
1) deepseek-ai/DeepSeek-V4-Flash
2) QuantTrio/MiniMax-M2.7-AWQ
Обе модели урезанные, разумеется, но даже так они еле умещаются на картах, параллельность никакая. Эти модели должны быть мощнее, чем те, которые удалось запустить на одной карте; по крайней мере, синтетика даёт ожидаемые результаты, но на практике не всё так однозначно.
Ребятам больше всех пока понравился «Квен-Кодер» из предыдущего эксперимента, хотя я уверен, что они ещё просто не распробовали новые модели.
Надо понимать, что серьёзным облачным моделям эти модели в подмётки не годятся: они мощнее примерно на порядок, и оборудование, которое позволяет их запустить, стоит совершенно других денег.
Для серьёзного программирования такие локальные модели непригодны, но в каких-то вещах их приспособить всё же удаётся. Сейчас мы заняты тем, что пытаемся очертить для себя круг задач, где они облегчают, а не усложняют жизнь. Поделиться мне пока ещё нечем, так как эксперименты в самом разгаре.
Две карты Nvidia H100, вынутые из нашего сервера ↓↓
👍1🕊1
Дочка и соревнования
У дочки на этой неделе расстройство — в первый раз пришла на соревнованиях по плаванию первой, но медаль не дали. Плыла два раза, двумя стилями — на спине и кролем. На спине заняла второе место, а кролем пришла первой, но оказалось, что заплыв был разбит на два, и она в тройку не вошла.
Зато проплыла на разряд, но и тут фиаско — в этот раз не было каких-то нужных судей, которые имеют право присваивать разряд, и разряд тоже не дали.
Горько поплакала, даже поход в любимый ресторан не до конца скрасил день. На следующий день обиды уже забылись, но я что-то эту ситуацию отпустить пока не могу: мне было плохо от её слёз и я до сих пор переживаю. Понимаю, что это тоже важный жизненный урок, но как-то от этого не легче.
Но были на этой неделе и радостные события.
Во-первых, дочка сдала экзамен на десятый кю по айкидо. Она только недавно начала заниматься, это её первый пояс. Во-вторых, фактически закончила третий класс. Нам уже неофициально дали её табель — вышла ударницей. Очень переживала, что не перейдёт в следующий класс. Где её так напугали — непонятно.
Учёба кончится, улетим в отпуск. Я уже живу только этой идеей. Голова нескончаемо болит каждый день уже которую неделю. Надеюсь, от стресса, а не от чего-то более серьёзного. Болит не очень сильно, но зато постоянно.
Дочкина медаль и художественный беспорядок на её столе ↓↓
У дочки на этой неделе расстройство — в первый раз пришла на соревнованиях по плаванию первой, но медаль не дали. Плыла два раза, двумя стилями — на спине и кролем. На спине заняла второе место, а кролем пришла первой, но оказалось, что заплыв был разбит на два, и она в тройку не вошла.
Зато проплыла на разряд, но и тут фиаско — в этот раз не было каких-то нужных судей, которые имеют право присваивать разряд, и разряд тоже не дали.
Горько поплакала, даже поход в любимый ресторан не до конца скрасил день. На следующий день обиды уже забылись, но я что-то эту ситуацию отпустить пока не могу: мне было плохо от её слёз и я до сих пор переживаю. Понимаю, что это тоже важный жизненный урок, но как-то от этого не легче.
Но были на этой неделе и радостные события.
Во-первых, дочка сдала экзамен на десятый кю по айкидо. Она только недавно начала заниматься, это её первый пояс. Во-вторых, фактически закончила третий класс. Нам уже неофициально дали её табель — вышла ударницей. Очень переживала, что не перейдёт в следующий класс. Где её так напугали — непонятно.
Учёба кончится, улетим в отпуск. Я уже живу только этой идеей. Голова нескончаемо болит каждый день уже которую неделю. Надеюсь, от стресса, а не от чего-то более серьёзного. Болит не очень сильно, но зато постоянно.
Дочкина медаль и художественный беспорядок на её столе ↓↓
❤7
Книги: «Космонавт — мотоциклетный мастер»
У меня есть немного странная особенность: есть ряд книг и фильмов, которые я смотрел в детстве и которые мне страсть как хочется разыскать. Как правило, я помню там одну-две сцены или какой-то момент, что благодаря нейросетям позволило мне со временем пройти почти весь список фильмов.
А вот книги поддаются нейросетям хуже: кажется, я так и не смог найти ни одной книжки с их помощью. Но тут спасибо читателям: один из них помог расколоть один из самых крепких орешков — книгу «Космонавт — мотоциклетный мастер».
Книжку я купил, получил и с удовольствием прочитал дочке. Я почему-то не ожидал, что ей понравится, но она осталась в полном восторге.
Удивительно, что я помню куда больше, чем ожидал: вспомнились почти все иллюстрации и довольно большая часть рассказов. Надо же, столько времени прошло, а это всё ещё в какой-то степени хранится в моей памяти.
После полного прочтения выяснилась немного печальная штука: я думал, что один из рассказов, которые я помню, должен оказаться в этой книге, но, как оказалось, я искал не одну книгу, а две.
Книжка детская, а рассказ был о том, что не всегда нужно говорить правду. Я помню, что папа объясняет это ребёнку на следующем примере. Когда мама была беременная, она не всегда была красивая. Но когда она спрашивала папу красивая ли она, папа иногда говорил ей неправду.
В общем, теперь ищу эту книгу. Может быть кто-то из читателей её читал и вспомнит, либо какая-нибудь нейросеть мне со временем поможет.
У меня есть немного странная особенность: есть ряд книг и фильмов, которые я смотрел в детстве и которые мне страсть как хочется разыскать. Как правило, я помню там одну-две сцены или какой-то момент, что благодаря нейросетям позволило мне со временем пройти почти весь список фильмов.
А вот книги поддаются нейросетям хуже: кажется, я так и не смог найти ни одной книжки с их помощью. Но тут спасибо читателям: один из них помог расколоть один из самых крепких орешков — книгу «Космонавт — мотоциклетный мастер».
Книжку я купил, получил и с удовольствием прочитал дочке. Я почему-то не ожидал, что ей понравится, но она осталась в полном восторге.
Удивительно, что я помню куда больше, чем ожидал: вспомнились почти все иллюстрации и довольно большая часть рассказов. Надо же, столько времени прошло, а это всё ещё в какой-то степени хранится в моей памяти.
После полного прочтения выяснилась немного печальная штука: я думал, что один из рассказов, которые я помню, должен оказаться в этой книге, но, как оказалось, я искал не одну книгу, а две.
Книжка детская, а рассказ был о том, что не всегда нужно говорить правду. Я помню, что папа объясняет это ребёнку на следующем примере. Когда мама была беременная, она не всегда была красивая. Но когда она спрашивала папу красивая ли она, папа иногда говорил ей неправду.
В общем, теперь ищу эту книгу. Может быть кто-то из читателей её читал и вспомнит, либо какая-нибудь нейросеть мне со временем поможет.
ИИ и системное администрирование
Вокруг программирования с помощью нейросетей так много шума, что кажется, будто остальные айтишные профессии остаются в стороне: будто в их жизни ничего не меняется и не поменяется.
Разумеется, это не так. Я уже как-то описывал случай, когда полторы-две недели занимался решением одной практической задачи: нужно было устанавливать и запускать на нескольких серверах мой пучок скриптов на Пайтоне для проверки различных гипотез.
Тогда я обошёлся без автоматизации — просто потому, что нейросеть выполняла мои хотелки с такой скоростью, что автоматизация оказалась мне не нужна. Тем более что в нестандартных ситуациях я не ограничен интерфейсом выбранного решения: в моём распоряжении голая командная строка, пиши что хочешь.
Выглядит это не очень промышленно, но не надо думать, что никто не исследует тему того, каким образом можно было бы хотя бы частично заменить системного администратора искусственным интеллектом.
На скриншоте — одна из первых ласточек: Линукс от «Селектела» со встроенным «системным администратором»; в его качестве выступает нейросеть «Квен 3.5» с весьма скромными по нынешним временам характеристиками. Она превращает задачу пользователя в команды в консоли сервера.
Интерфейс пока аскетичный, но и задачи полностью заменить администратора пока нет: каждая команда требует анализа специалистом и подтверждения. В таком режиме от администратора не требуется знать хитрые ключи командной строки или нетривиальную последовательность действий — всё это за него уже может делать машина.
У нас один из сотрудников, занимающихся системным администрированием, в настоящий момент гоняет это решение на изолированной виртуалке. Не для рабочих задач, разумеется, а чтобы понять, куда ветер дует.
Вокруг программирования с помощью нейросетей так много шума, что кажется, будто остальные айтишные профессии остаются в стороне: будто в их жизни ничего не меняется и не поменяется.
Разумеется, это не так. Я уже как-то описывал случай, когда полторы-две недели занимался решением одной практической задачи: нужно было устанавливать и запускать на нескольких серверах мой пучок скриптов на Пайтоне для проверки различных гипотез.
Тогда я обошёлся без автоматизации — просто потому, что нейросеть выполняла мои хотелки с такой скоростью, что автоматизация оказалась мне не нужна. Тем более что в нестандартных ситуациях я не ограничен интерфейсом выбранного решения: в моём распоряжении голая командная строка, пиши что хочешь.
Выглядит это не очень промышленно, но не надо думать, что никто не исследует тему того, каким образом можно было бы хотя бы частично заменить системного администратора искусственным интеллектом.
На скриншоте — одна из первых ласточек: Линукс от «Селектела» со встроенным «системным администратором»; в его качестве выступает нейросеть «Квен 3.5» с весьма скромными по нынешним временам характеристиками. Она превращает задачу пользователя в команды в консоли сервера.
Интерфейс пока аскетичный, но и задачи полностью заменить администратора пока нет: каждая команда требует анализа специалистом и подтверждения. В таком режиме от администратора не требуется знать хитрые ключи командной строки или нетривиальную последовательность действий — всё это за него уже может делать машина.
У нас один из сотрудников, занимающихся системным администрированием, в настоящий момент гоняет это решение на изолированной виртуалке. Не для рабочих задач, разумеется, а чтобы понять, куда ветер дует.
👍2🔥2❤1