«Новый Завѣтъ» почти как новый
Я показывал уже «Новый Завет», который достался нашей семье от прадедушки жены. Он тогда был в ужасном состоянии — от переплёта мало что осталось, книга была скреплена изолентой и сшита поверх суровой ниткой.
Я отправил его в мастерскую «Ваш реставратор», где его за три месяца привели в порядок — полностью перебрали и перемыли, нарастили где надо листы, восстановили корешок, собрали всё назад и сегодня книга, наконец, снова попала мне в руки.
Добавлено позднее: в комментариях попросили показать как выглядит нарощенный лист. Прикладываю фотку, но даже в жизни при хорошем освещении рассмотреть очень сложно. У правой страницы едва видно участок, который нарастили — по правому нижнему краю, там бумага
Китайская Nvidia A100
У одного из клиентов в качестве оборудования для запуска нейросетевых моделей обнаружилось
Я только вчера
Оказывается под «улучшать» понимается наращивание памяти и разблокировка дополнительных ядер. При этом, чтобы всё это можно было использовать, на видеокарту заливается взломанная прошивка.
Вот, кстати, непонятно — ядра заблокированы потому что они неисправны или это маркетинговый ход. Если первое, значит они могут работать с ошибками, а как их диагностировать и на чём это скажется — ума не приложу.
Добавлено позднее: в комментариях в канале справедливо заметили, что может быть и то и другое. Раньше так тоже делали — в процессоре делали дополнительные ядра, тестировали и, даже если все ядра были исправными, всё равно выключали часть, чтобы выпускать процессоры в рамках одной линейки.
«Снежинки»
Много раз встречал мнение о том, что люди сейчас стали слишком чувствительными — якобы любое неудачно выбранное слово вызывает чрезмерную реакцию. А раньше, мол, в интернете могли и на три буквы послать, и это считалось нормой.
Явление, по всей видимости, достаточно заметное, раз уж для обозначения таких людей придумали специальные названия — «снежинки» или «обиженки».
А я вот не уверен, что сами люди принципиально изменились.
В классической дореволюционной литературе хватает дам, падающих в обморок от любой мелочи, и кавалеров, недалеко ушедших от них в этом умении. Для контраста можно взглянуть на суровую крестьянскую прозу тех же времён — там бабы рожают в стогах, потом тут же впрягаются в соху и пашут поле. Я, конечно, утрирую, но суть, думаю, ясна.
Может, после революции всё изменилось? Тоже нет. В советские годы у нас были очень разные по ментальности «интеллигенты» и «пролетарии». Эти группы настолько расходились во взглядах на жизнь — включая то, что мужчина должен или не должен чувствовать, — что со временем сами слова «интеллигент» и «пролетарий» стали почти ругательствами.
«Интеллигентишка» — это мямля и размазня, потому что, с точки зрения «пролетария», он чересчур остро реагирует на любые проблемы. А «пролетарий», наоборот, ничего не чувствует, даже запахов, потому и «пьян, вонюч и волосат».
Эту тему можно было бы долго развивать, но мысль, думаю, уже ясна: люди, по большому счёту, не особо меняются.
Изменилось, скорее всего, другое —
Были даже целые сайты, напоминавшие токсичную клоаку, где участники соревновались в искусстве оскорблений и закаляли в этих поединках свои нервы. Я туда иногда заглядывал — там, несмотря на всё, попадался дельный контент. Но в самих битвах не участвовал: мне хватало PvP в менее шумных местах, вроде ЖЖ.
Но интернет рос, и рос стремительно.
С ним росло и абсолютное число более чувствительных людей. Появилось больше мест и тем, в которых можно пораниться, оскорбиться, почувствовать себя задетым.
Кроме того, изменились и методы «бокса по переписке»: если раньше это было грубое психологическое давление, и выигрывал тот, кто последним сдался, то теперь появились специальные слова, которые позволяют быстро переломить ситуацию в свою пользу — буллинг, газлайтинг, токсик, абьюз, манипуляция и прочие. Этот словарь сегодня часто приписывают как раз тем самым «обиженкам».
И всё же в относительных величинах само человечество вряд ли стало более «снежинистым».
Социальные сети
Недавно в чате с бывшими коллегами запостили
Тут я понял, что, кроме «Хабра», ничего похожего на социальные сети я не смотрю и не читаю, а на «Хабре» про Трампа не пишут.
Все соцсети, которые требуют обхода блокировок, я постепенно забросил — лень их обходить, если даже редкий раз
Конечно, есть ещё каналы в «Телеграме», но у меня там сплошное айти, нейросети, парочка интересных гиков и Бирман — моё окошко в мир дизайна.
В общем, я сижу в тщательно выстроенном информационным пузыре.
Откуда Степанищевы в Омске
Три года назад я выкупил на одном аукционе старинную табличку с надписью «Александръ Александровичъ Степанищевъ». У меня была задумка повесить её
Судя по тому что рассказал продавец, она висела
А несколько дней назад мне написала девушка, потомок тех самых омских Степанищевых, которых я пытался изучать. Долго переписывались, она немало рассказала и спросила какими источниками я пользовался в своём исследовании. Я посмотрел свои заметки и удивился, что не попробовал поискать омских Степанищевых через «Поиск по архивам» «Яндекса».
Нашлось неожиданно много — около полусотни записей. В прошлые два дня мне не спалось и за время бессоницы я составил довольно подробное дерево. В нём сейчас 142 человека.
Всё, что я смог выписать, даёт интересную картину: почти все найденные Степанищевы являются потомками некого Варфоломея. Лишь один человек выбивается из общей картины — умерший
Я думаю, это отец Варфоломея,
Я думаю, что семью Степанищевых отправили в Омск в ссылку. Но чью именно?
Если бы сослали Дмитрия, а Варфоломей был ещё слишком мал, поэтому поехал с семьёй отца, то где остальные дети Дмитрия? Варфоломей, конечно, мог быть, в силу
Либо есть ещё версия — сослали всё же Дмитрия, а Варфоломей и его жена к тому времени уже умерли. Дмитрий был опекуном детей Варфоломея, поэтому те поехали с ним. В этом случае, он мог быть как отцом, так и братом Варфоломея.
Питание для Nvidia Tesla H100 NVL
Хочу записать себе новые знания.
Видеокарта Nvidia Tesla H100, про которую я вчера писал, вставляется в шину PCIe пятого поколения. Оттуда она может получить максимум 75 Ватт, тогда как карте надо больше. Она может работать, согласно спецификации, в одном из двух режимов — с потреблением 310 или 400 Ватт в пике.
Для этого используется вот такой кабель. Ток, который он может подвести от разъёма материнской платы, ограничен сечением проводов внутри кабеля. Оно может различаться в зависимости от производителя. Но как карта узнаёт сколько мощности ей можно получить, чтобы не пережечь кабель?
Оказывается, для этого используется специальный интерфейс, четыре контакта которого видно слева.
Два провода из четырёх кодируют ток, который может отдавать кабель, остальные два сейчас не используются. Сигналы 0 и 1 на этих проводах означают мощность от 151 до 300 Ватт, 1 и 0 — от 301 до 450.
Бывают токи и выше, кодировка для них тоже предусмотрена, для этого используются провода с большим количеством «хвостов» — три или четыре.
Nvidia Tesla H100 NVL
Вот так выглядит видеокарта Nvidia Tesla H100 NVL — одна из трёх карт, на которых мы гоняем различные модели искусственного интеллекта. Сбоку видно, что она большая, но и толщина у неё огого — в два пальца. Извините, что не достал, страшно доставать карту стоимостью в несколько миллионов из антистатического пакетика — вдруг статикой убъёшь.
На этой карте мы гоняем небольшие пока модели — примерно 30—32 миллиарда параметров (Qwen3, Magistral, Mistral,
К слову, взаимодействие с хвалёной моделью
Очеловечивание ИИ
Мне кажется, одна из проблем во взаимодействии с большими языковыми моделями, проистекает из того, что мы, для описания работы с ними, пытаемся подобрать слова точные только в литературном смысле — «модель считает», «модель посоветовала» и так далее.
Потом люди несут это дальше, думая, что эти глаголы адекватно описывают процессы, тогда как модель ничего не считает и не советует, она текст генерирует.
Отсюда возникает непонимание почему модель не может посчитать количество букв в слове, решить переформулированную задачу на логику или ответить на мой вопрос с задержкой в тридцать секунд, если я это попросил.
Свет и экономия
Сегодня забирали дочку из Лениногорска — она там гостила у моих родителей. Пока поднимались к ним в квартиру, я обратил внимание на дырки в подъездном щитке. Интересно, многие ли из тех, кто живут в этом доме, помнят почему они есть только на чётных этажах?
Это следствие
Поэтому
Я это хорошо запомнил, так как в то время панически боялся темноты. Мне было так страшно, что когда я возвращался из школы во вторую смену, залетал в подъезд и, за время, пока была открыта подъездная дверь, через которую с улицы проникал свет, бежал на второй этаж, нажимать эту кнопку.
Дальше было уже проще — быстро поднимаешься через этаж до следующей кнопки, давишь на неё, проблемы нет. Так как я жил на чётном этаже, кнопка была близко. Жми её, сколько влезет. Можно, не торопясь, достать ключи и спокойно открыть дверь.
Через
«Телеграм Макс»
Хотите поменять иконку стремительно становящегося нам чужим «Телеграма» на иконку доморощенного «Макса»? Под «МакОСью» это сделать проще простого.
Всего несколько шагов:
- если у вас в настройках «Телеграма» выбрана нестандартная иконка, идём в настройки («⌘+,»), меняем на стандартную;
- заходим в папку, где у нас лежит «Телеграм» («⌘+клик» на иконке приложения);
- открываем «Свойства» («⌘+I») этого приложения;
- скачиваем мессенджер «Макс», запускаем инсталлятор;
- прямо из инсталлятора иконку «Макса» тянем в левый верхний угол свойств приложения «Телеграм», туда, где иконка;
- в программе Finder нажимаем кнопку «извлечь» («⏏») около надписи «MAX» в левом меню, сам файл удаляем, он нам больше не понадобится.
Всё, у «Телеграма» теперь максовская иконка.
«Мышастик»: приделал антенну
Приделал своему устройству для общения через сеть «мышастик», внешнюю антенну. Дело,
Заказал антенну на требуемую частоту, подходящий «пигтейл» (провод от антенны к плате) , разобрал, выломал заглушку, отключил встроенную антенну, вкрутил и подключил внешнюю, собрал всё обратно.
Честно сказать, в плане приёма никаких особых улучшений не вижу. Возможно передача лучше стала, но это мои субъективные ощущения. По уму надо было бы, конечно, подготовить эксперимент — продумать что можно было бы замерить до и после, но я решил не упарываться.
В качестве антенны взял двадцатисантиметровую китайскую «GIZONT» на частоту 868 МГц — это частота казанской сети, а «пигтейл» — «SMA female — U.FL (IPX)». Китайцы обещают усиление 10 dBi, но врут, небось, как обычно.
В сети, как видно на фотографии, я за всё время видел 45 разных устройств. Это значит, что людей и того меньше — у некоторых не по одному устройству. Сеть не особо быстро прирастает, временами даже наоборот —
У меня
Склеп
Этим летом начался
Больше теряемых старинных зданий мне жаль старинные могилы. Видимо меня так воспитали — в глубоком уважении к мёртвым и всему, что с ними связано. Я считаю это положительной своей чертой, так что большой спасибо моим родителям, что в меня это вложили.
В своих разъездах я иногда вижу совершенно другое отношение, к которому я не хочу привыкать, и для меня это дико. Старые могильные камни ломают и используют как стройматериал, в склепах работники кладбищ хранят свой инвентарь, а поверх прежних могил делают новые — так вообще на всех кладбищах делают.
В эти походные выходные мы с другом ездили, в частности, на одно из заброшенных старых кладбищ. Мой друг раньше жил неподалёку и был на нём ещё в детстве, поэтому давно предлагал его посетить — говорил, что там есть на что посмотреть.
Посмотреть и правда есть на что. Мне нравится любые старые объекты, могилы не исключение, а там их сохранилось немало, но что удручает — кладбище явно было сильно больше. Могилы совершенно точно разоряли — раскапывали, вскрывали склепы, разбивали и уволакивали памятники — на тропиках есть обломки могильных камней.
Всего на кладбище около десятка сохранившихся плит и несколько разорённых склепов. Склепы полузавалены, но руку просунуть можно. Спасибо ночному видению в моём походном смартфоне — я сфотографировал что смог, самому лезть не пришлось. Смотреть в склепах, конечно, не на что, всё давно вытащили.
Интересен склеп под могилой купца Василия Михайловича Калсанова. По свидетельству моего друга там
Хочу ещё вернуться на это кладбище с железной щёткой, почистить надгробные камни и всё сфотографировать ещё раз, а то в большинстве случаев вообще не получается разобрать кто там похоронен.
Парадокс Степанищева-Вихлянского
Учёным ещё только предстоит подробно изучить парадокс Степанищева—Вихлянского. Он назван в честь двух друзей, которые всю неделю предвкушают поход на выходных, затем накануне начинают сомневаться, а в день похода, встав в 4—5 утра, проклинают всё на свете, грозя плюнуть на планы и лечь спать.
И лишь доехав до места и расположившись, радуются, что не смалодушничали ни на одном из этапов.
Ковыряю bc
Ковырял сегодня bc на досуге, ту версию, которая помощнее.
На скриншоте — количество мест, в которые пришлось её прописать. И только в одном из этих мест хранится её реализация. Взял за образец другие объявленные функции, поэтому не имею не малейшего понятия почему так много где пришлось её прописывать, не успел разобраться.
Лучше расскажу что именно я придумал добавить в язык. В bc есть несколько глобальных переменных, которые очень много на что влияют. Две, наверное, самые важные — это ibase и scale. Очень часто их приходится сохранять в начале и восстанавливать в конце своих функций, особенно библиотечных.
У более продвинутого bc есть специальный ключ, который, если его указать, меняет это поведение — при входе в каждую функцию значения этих и других глобальных переменных будут записываться в специальный стек, а на выходе — восстанавливаться оттуда.
Но библиотечные функции, всё одно, пишут, для универсальности, не рассчитывая на то, что этот флаг установлен. Вот, например, библиотечная функция косинуса:
define c(x){
auto b,s
b=ibase
ibase=A
s=scale
scale*=1.2
x=s(2*a(1)+x)
scale=s
ibase=b
return(x/1)
}Вот я и подумал, чтобы бы неплохо придумать директиву, при указании которой такой стек, для помеченной ею функции, всегда включался бы; а кроме того, была бы полезна функция, которая восстановила бы значения глобальных переменных ещё до выхода из функции. Иногда это необходимо, чтобы вернуть число в соответствии с установленными в них параметрами.
Функция косинуса с этими новыми возможностями выглядела бы так:
define stack c(x){
ibase=A
scale*=1.2
x=s(2*a(1)+x)
pop_stack()
return(x/1)
}Завтра ещё потестирую и попробую закинуть код автору bc, вдруг понравится изменение.
Добавлено позднее: Автор bc написал, что идея у меня интересная, но его жизнь серьёзно изменилась и теперь он не будет заниматься проектом бесплатно. Видимо крепко его прижало. Учитывая низкую популярность bc, можно сказать, что этот проект умер, если у него не найдётся новый мантейнер, что маловероятно.
Brew: x86 → ARM
На «Маке» есть такая штука как «брю» (brew), позволяющая без усилий ставить различные утилиты командной строки. Я ей давно и часто пользуюсь, потому что командная строка меня не пугает, а в некоторых сценариях это самый простой и быстрый способ
Несколько лет назад «Эпл» сменила процессоры Интела в своих устройствах на чипы собственной разработки, основанные на архитектуре ARM. Эта архитектура бинарна не совместима с процессами Интела и, чтобы все программы программы остались работоспособными, в состав операционной системы включили специальный транслятор. Он на лету преобразовывает машинный код. О чего, конечно, страдает производительность.
Мой набор утилит, поставленный через «брю», несмотря на то, что у меня новый процессор, остался ещё с интелловских времён. Некоторым утилитам там, думаю, больше десятка лет. Я
А тут краем глаза
Начал с очень известной утилиты ffmpeg, которую я использую, чтобы конвертировать видео. В последнее время чаще всего — чтобы сконвертировать скаченное с «Ютуба» для дочки. Стараюсь ей подкидывать
Разница между утилитой, выполняющейся через транслятор, и нативным вариантом на скриншоте. Сконвертировал одно и то же видео два раза. Скорость конвертации — 23 кадра в секунду против 48. Очень серьёзная разница, как мне кажется.
Анекдоты
Говорят, анекдоты давно уже не рассказывают, новым поколениям они
Дочка, ей скоро девять лет,
В общем, очень ей это всё понравилось. В школе она рассказала, что вспомнила, произведя фурор.
Недавно, чтобы подтолкнуть её побольше читать, я ей заказал сборник школьных анекдотов. Заказал через «Озон» сразу в Лениногорск, где она гостит у дедушки и бабушки. Сегодня вечером бабушка написала: «читает анекдоты и хохочет. Нам с дедом тоже читала».
Похоже сработало, надо будет ещё заказать.
«Мышастик» и широковещательные пакеты
Разбираюсь с тем, как работает
Я заметил, что такие пакеты распространяются будто бы хуже всего — в казанской сети много прорех, но хотелось разобраться почему связность как будто бы есть, а чаты рассинхронизированы — на каждом устройстве своя собственная картина чата.
Я себе представлял работу сети так, что если через
Конечно, пакет с сообщением может не дойти
В общем, внимание на картинку.
Представьте, что я пишу
Раньше начинает вещать красное, жёлтое же, поймав мой пакет от красного, видит, что его уже
Моё устройство, получив свой собственный пакет, тоже понимает, что его
Если бы моё устройство не получило это подтверждение, то оно бы сделало ещё две попытки его передать, и, если и они успехом не увенчались бы, нарисовало вокруг сообщения красную рамку, что означает, что меня никто не услышал.
А дальше грустная часть — жёлтое устройство вполне могло бы передать моё сообщение на синее, там прямая видимость, но оно ничего передавать не будет, так как передачей пакета занялось красное устройство. А красное устройство от синего закрывает дом и синее моё сообщение не получит.
Зато если сообщение отошлют с жёлтого устройства, то его получит вся сеть — все находтся в прямой видимости. Поэтому у синего в чате не будет части моих сообщений, зато у остальных будет полная картина.
Адресные пакеты работают иначе, но я ещё не разобрался детально, расскажу в другой раз.
Жюри
Многие легко произносят мягкую «ж» — как старомосковском произношении слов «дождь» и «вожжи». С той же буквой некоторые люди произносят «жюри» и «жюльен». Что логичнее более распространённого произношения через «у» — там же «жю» написано, а не «жу».
Я в детстве по тому же принципу изобрёл мягкую «ш» — учился произносить на словах «брошюра» и «парашют». Чтобы была мягче «ш», но не скатывалась в «щ». Сегодня вспомнил, решил попробовать,
Выручай-комната
Дело в том, что когда я пришёл работать в это здание
Ларчик, конечно, просто открывается — дверь ведёт в шахту вентиляции, которая была замурована в стене. Проход пробили, вероятно, для обслуживания шахты, а заодно решили
99 бутылок: HolyC
История появления языка, на котором написана сегодняшняя «песня о пиве», довольно занятна.
Его автор, Терри Дэвис — гениальный одиночка и бывший инженер компании Ticketmaster, который посвятил более десяти лет созданию собственной операционной системы TempleOS. Страдая от шизофрении, он считал, что действует по воле Бога, который лично поручил ему создать «божественную ОС». Несмотря на тяжёлое психическое состояние, Дэвис самостоятельно написал компилятор, ядро, графическую оболочку и язык программирования — в полном одиночестве и с поразительной продуктивностью.
83. HolyC — тот самый язык, разработанный Терри. Выглядит он довольно интересно. Сильно напоминает Си, но имеет много интересных особенностей, некоторые из которых сразу бросаются в глаза, даже в моей небольшой программе.
Чуть менее заметная деталь — оператор case может не иметь аргумента, в таком случае используется автоикрементное значение, начинающееся с нуля. В HolyC вообще довольно много интересного синтаксического сахара.
Поражает, как много может создать в одиночку человек, заражённый
// "99 Bottles of Beer," written in HolyC on July 9, 2025
// by Evgeny Stepanishchev (https://bolknote.ru)
auto Bottle(U8 b)
{
U8 *bottles, *ret;
switch (b) {
case:
bottles = StrNew("No bottles");
break;
case:
bottles = StrNew("1 bottle");
break;
default:
bottles = StrPrint(NULL, "%d bottles", b);
break;
}
ret = StrMerge(bottles, " of beer");
Free(bottles);
return ret;
}
U0 Main()
{
U8 *bottles, b = 99;
while (b) {
bottles = Bottle(b);
"%s on the wall, %1$s!\n", bottles;
Free(bottles);
bottles = Bottle(--b);
"Take one down, pass it around,\n";
"%s on the wall!\n\n", bottles;
Free(bottles);
}
"No more bottles of beer on the wall,\n";
"No more bottles of beer!\n";
"Go to the store and buy some more,\n";
"99 bottles of beer on the wall!\n";
}