В пятницу в Лениногорск
В пятницу вечером опять едем в Лениногорск, забирать дочку, — она уже третью неделю гостит у моих родителей.
Предвкушала и планировала эту поездку всё лето. Мы немного переживали —
Можно было бы оставить и на подольше, но у нас оплаченный лагерь от кружка карате, туда она тоже очень хочет.
Каждый раз в поездке туда замечаю, как мало помалу меняется местность, когда подъезжаешь к родным местам. Самое заметное, конечно, — появляется много сооружений, относящихся к нефтедобыче, заметнее всего нефтекачалки, их видишь сразу, потому что они движутся. Кроме этого местность становится всё более холмистой, трава как будто бы меняет цвет и появляется больше ковыля, около Казани он мало где встречается.
Обратно, думаю, поедем вечером субботы, чтобы был один день перевести дух перед работой.
Тачскрин на Линуксе
Два последних дня ковырял по работе планшет фирмы «Дигма» — это китайское го… годное вполне за свои деньги изделие поставляется с ОС «Виндоуз». А наша задача была показать на нём один из отечественных дистрибутивов Линукса.
Линукс встал довольно легко, но вот проблема — прикосновения к экрану не давали никакого эффекта. Вот этим я героически два дня и боролся.
До конца не победил — тачскрин хоть и возвращает
Зато узнал немало интересного о том как устроен опрос датчика нажатия на экран в Линуксе. Всё я ещё не переварил, поэтому описывать не буду, но один интересный факт расскажу.
Представьте, что у вас есть готовый экран, на котором
Часть плёнки у нас оказалась под рамкой, так что ноль координат плёнки и экрана не совпадают, кроме того, разрешающая возможность тоже разная. Экран, например, 1366 пикселей шириной, а плёнка даёт 740. Как пересчитываются координаты нажатия на плёнку в экранные, чтобы операционная система поняла куда пользователь нажал?
Для этого в Линуксе задаётся трансформационная матрица («Coordinate Transformation Matrix»), на которую умножаются абсолютные координаты, в которых датчик экрана уловил нажатие. С её помощью можно сдвигать координаты, сжимать их и растягивать, а так же поворачивать на 90°, если датчик стоит так, что у него перепутаны оси — это вполне стандартная математика, которую многие могут помнить по школе.
Матрица эта, понятное дело, должна быть зашита внутри драйвера. Но когда у тебя Линукс, нельзя надеяться, что для всего оборудования найдётся драйвер.
Для той «Дигмы», которую мы получили, драйвера нет. В некоторых случаях есть способы, которые позволяют изготовить его на основе драйвера для «Виндоуза», но матрицу всё равно придётся вычислять самостоятельно.
Правда в нашем случае она не помогла — компенсировать «слепое пятно» она не в состоянии, для этого нужно чудо или более подходящий драйвер.
Стилобат
Недавно узнал новое слово — стилобат. В современном значении «стилобат» — это верхняя часть многоуровневого основания. В данном случае там, где я это сфотографировал, дом построен так, что из подъезда выходишь не на уровень земли, а как бы на крышу другого здания. Вот это «здание» и есть стилобат.
«Х» против «Л»
Тут в заметке про переставленные «АХ» и «АЛ» у одного из читателей возникла дельная идея — возможно перестановка этих букв отражает статистику. Не может ли быть «АХ» более частотной, чем «АЛ»?
Я взял базу татарстанского документооборота
«Л» оказалась частотней «Х», что совпадает с их позициями в частотном распределении по русскому языку и, как будто бы, отвергает читательскую теорию.
Но позже, когда пошёл на обед, я понял, что задачу решил неправильно. Зачем смотреть только на вторую букву? Вторая буква нам интересна только в контексте. В общем, пересчитал. Встречаемость «АЛ» в Татарстане — 11534, «АХ» — 14153, таким образом, версия имеет право на существование.
Посещал ли пользователь сайт?
Атака не работает — в браузерах давно реализована защита, у меня идея «сработала» в силу того, что я не выполнил все необходимые проверки.
В прошлом было достаточно много методов определить ходил ли пользовать
Это считалось проблемой, поэтому свойство изменили так, чтобы никакой утечки информации о посещении в ДжаваСкрипт не происходило. Все современные браузеры уже много лет от этого защищены.
Но недавно меня осенило, что есть способ обойти эту защиту!
Ведь если пользователь посещал целевой сайт, то скорее всего
Я попробовал сделать это с «Гитхабом». Самый большой файл, который загружается там с первой страницей — vendors-node_modules_github_mini-throttle_dist_index_js-node_modules_primer_octicons-react_di-b40d97-9b98c5140e22.js. Занимает он 136 килобайт, вполне подходящий размер.
Как же определить момент когда он загрузится? Если посмотреть внутрь, видно, что он после скачивания создаёт свойство webpackChunk в объекте globalThis. Если перехватить обращение к этому свойству, можно понять, что файл загружен:
const t = new Date();
Object.defineProperty(globalThis, 'webpackChunk', {
set: function() {
console.log(new Date() - t);
}
});Ниже этого кода подключаем загрузку указанного файла прямо с «Гитхаба» через тег <script> и дело в шляпе.
Я проверил, если очистить кеш браузера, то файл у меня загружается примерно за 100—400 миллисекунд, если берётся из кеша — это 0—12. Легко отличить одно от другого.
Фонтан Лениногорска
Помню о нём две вещи.
Добавлено: мне уже писали, что
«Простая песенка»
В прошлые выходные ходил на «блошку» — купить подарок хранителю музея в Куралове, куда мы
Пластинок купил две — одну решил оставить себе, для нашего патефона, вторую отдать на подарок. Сегодня послушали с дочкой, решили оставить
Розетка для тревожных людей
Одно из лучших решений, принятых при организации умного дома, было установка управляемой через интернет розетки для утюга. Теперь, уезжая, не надо беспокоиться — выключен ли утюг или нет, можно просто посмотреть.
«От слова совсем»
Я думал, что фраза «от слова совсем» — недавнее приобретение в русском языке. Сегодня смотрели с семьёй фильм 1994 года, — «Маска» с Джимом Керри, и там оно используется
Фильм переводной, конечно, но перевод, судя по звучанию, тоже из тех времён. Да и кто стал бы сейчас такой старый фильм переозвучивать?
Мистер Среда
Иногда смотришь на некоторых людей и думаешь, что их сознание напоминает сказку «Двенадцать месяцев» — в голове у них лес, зима и костёр. Перед костром сидят мистер Понедельник, Вторник, Среда, Четверг и Пятница.
Мистер Понедельник на правах старшего встречает вышедшую к костру Проблему и говорит ей, что она рано пришла за подснежниками, надо подождать когда в права вступит мистер Пятница.
Только в отличие от сказки, в реальности Понедельник с Пятницей местами не меняются и Проблеме приходится ждать до Пятницы, когда подснежники заказчику уже погоды не сделают.
Опять чинил PogodaStatusBar
Сегодня участвовал в довольно скучной видеоконференции. Моё участие там было хоть и необходимое, но небольшое. А чтобы не одуреть от безделья, пока я слушал всю эту скуку, решил
Плагин в строке статуса показывает текущую погоду и пробки в вашем городе. Много лет данные для этого я брал с неофициального урла «Яндекса», но компания решила коммерциализировать погоду и, сколько я не искал новый способ получить её бесплатно, так и не нашёл.
Пробки, кстати, тоже перестали нормально работать.
Я перебрал несколько малоизвестных сервисов, пока, наконец, не увидел, что страница yandex.ru/tune/geo/ содержит в себе необходимый номер. Этого хватило, чтобы починить показ пробок.
С «Гисметео» пришлось повозиться. Не нашёл официальную информацию
Определить номер города в формате «Гисметео» помогает сервис www.gismeteo.ru/rmq/search/{название}/1/, куда я подставляю название, полученное от «Яндекс.Пробок» — там он возвращается вместе с остальными данными.
Оставалось только расшифровать иконку погоды. В документации есть часть описания (остаток можно понять, скачав с «Гисметео» значки погоды), выглядит всё несложно. Например, d.r3 означает «день» (day) и «дождь максимальной интенсивности» (rain 3).
Поскольку у меня Юникод, в нём есть не все необходимые значки, я сделал вот такой объект, содержащий признаки, которые позволяют мне выбрать какую иконку показать:
_icons = {
"🌞": {"d"}, # day
"🌙": {"n"}, # nite
"☁️": {"n", "c"}, # night, cloud
"🌧": {"rs", "c", "r"}, # rain+snow, cloud, rain
"🌤": {"d", "c"}, # day, cloud
"🌦": {"d", "r"}, # day, rain
"🌩️": {"c", "st"}, # #day, storm
"⛈️": {"c", "st", "r"}, # cloud, storm, rain
"🌨": {"c", "s"}, # cloud, storm
"💨": {"mist"}, # mist
"⚡️": {"st"}, # storm
}И вот такой простой алгоритм для выбора иконки:
def _getStatus(self, coded_weather):
codes = {x.strip("0123456789") for x in coded_weather.split(".")}
max_icon = None
max_score = 0
for icon, code in self._icons.items():
result = codes & code
score = sum(len(x) for x in result)
if score > max_score:
max_icon, max_score = icon, score
return max_iconИдея простая — чем больше значков совпало, тем лучше; если совпал значок с более длинным названием (st, mist), считаем его более конкретным и важным.
Штурвал Бауэра
Продолжаю потихоньку описывать то, что удалось подержать в руках в музее села Куралово. На этот раз это штурвал. Он совсем небольшой, диаметр точно оценить не берусь,
Штурвал совсем хлипкий, держать его в руках было страшновато — вдруг развалится. Я это обнаружил уже после того, как взял, иначе бы оставил его в покое. На штурвале неплохо видно табличку, хотя некоторые слова едва угадываются. Погадав на буквах, я выяснил, что там написано — «Fr. W. Bauer, Steuerradsfabrik, Vegesack (Bremen)».
В 1906 году Фридрих Вильгельм Бауэр основал в районе Фегезак города Бремен столярную мастерскую. Находилась она по адресу Везерштрассе, № 8/9.
Со временем мастерская разрослась и стала единственной в Германии фабрикой по производству штурвалов и приборов управления. Со времени своего существования фабрика выпустила более ста тысяч штурвалов, в том числе для легендарных быстроходных лайнеров «Бремен» и «Европа» компании «Северогерманский Ллойд».
В 1966 году завод был заброшен.
Малефисента
Странно, что некоторые очевидные связи не улавливаешь буквально годами, если не десятилетиями.
Сегодня в такси по дороге на работу, вспомнил о «Молоте ведьм» — средневековом трактате по демонологии. Наверняка о нём многие слышали. Не то, чтобы я часто о таком размышляю, навеяло григорианским хоралом, который мне подсунула «Яндекс.Музыка».
Полное его название «Malleus Maleficarum, Maleficas, & earum hæresim, ut phramea potentissima conterens», переводящееся как «Молот Ведьм, уничтожающий Ведьм и их ереси, подобно сильнейшему мечу». Сейчас я его из «Википедии» переписал, а в такси вспомнил примерно.
Когда я про него вспомнил, только в этот момент понял, что латинское слово «maleficārum» в названии, которое означает зловредную колдунью, родственно имени «Малифисента» из диснеевской сказки «Спящая красавица».
Ещё дочкино
Стал мало записывать за дочкой, тем не менее иногда
Наконец недавно понял, что стараюсь выхватывать
Своей маме:
— Я тут подумала, что мне больше нужна ты, чем артефакт
15.03.2023
⁂
— Мне приходится скрываться от мира…
— В каком смысле, малыш?
— Ну, я хорошо пою, но мне не хочется показывать свой талант, мне не нужна слава, я хочу быть просто девочкой, которая поёт…
15.03.2023
⁂
Спрашивает у мамы:
— А ты
06.08.2023
⁂
Дочка выпила полкружки кофе у подружки на ночь и борогозит. Кричу ей в другую комнату:
— Дооочь, ты собираешься спать?
— Да!
— А когда?
— Через пять часиков, может быть попозже!
12.04.2024
⁂
Дочь после просмотра фильма «Мэри Поппинс» 1968 года:
— А я догадалась, перемены какого ветра ждала Мэри Поппинс!
— Какого, малыш?
— Ветра атмосферы в доме! Плохие отношения сменились на добрые и Мэри Поппинс стала не нужна!
—
— Нигде, сама так подумала.
08.05.2024
⁂
Прислала мне аудиосообщение с картинкой:
— Папочка, а можешь мне вот этот мультфильм найти? Бабушка и дедушка не могут…
— Дочь, это «Отель Хазбин», он только для взрослых — «18+» или около того.
— Там сцены насилия и другие вещи, которые в твоём возрасте смотреть запрещено, это закон!
— Я тебя люблю очень… Ну в этой ситуации мне кажется я очень много наговорила, я не хочу с тобой ссориться, в общем…
— Да мы не ссоримся совсем, но этот мультфильм тебе не по возрасту.
— Хорошо, я поняла, пока!
02.06.2024
⁂
— Мне со своими троюродными больше нравится играть!
— Надо же, почему?
— Потому что у них телефонов нет!.. Если телефоны есть, это вообще беда! Уткнутся в свои аппараты и не оторвёшь их!
19.06.2024
На что вы до сих пор держите обиду…
На «Пикабу» читатели вспоминают на что они до сих пор держат обиду. Куча комментариев про школу. В основном, — про учителей. У меня тоже есть две истории.
Вторую расскажу позже, а первая тоже про школу.
В своём классе я был одним из лучших по химии. На первое место претендовал ещё и мой друг Д. М., но мы так и не смогли понять, кто из нас лучше. Скорее всего мы были на одном уровне.
В общем, предмет этот я горячо любил, понимал от и до, много читал за пределами школьной программы — благо дома было несколько книг, доставшихся от родителей.
Химичка же от моей любви была не в восторге. Я не скрывал, что хочу стать химиком, она же меня уговаривала передумать, пугала своим угробленным на химии здоровье. С её точки зрения, думаю, это было проявлением заботы. Меня же её аргумент не пугал —
Видя, что я её аргументация не работает, на выпускном экзамене она меня «срезала»
Позже мои увлечения сменились, но химический горький привкус от той четвёрки до сих пор со мной.
Когда зародилась жизнь
Тут новое исследование вышло — учёные попробовали подсчитать когда примерно жил последний общий предок для всех живущих ныне организмов. Скорость накопления мутаций известна, посмотрев на то, какие гены отличаются, можно прикинуть время, которое потребовалось, чтобы эти мутации появились:
«Our study showed that LUCA was a complex organism, not too different from modern prokaryotes, but what is really interesting is that it’s clear it possessed an early immune system, showing that even by 4,2 billion years ago, our ancestor was engaging in an arms race with viruses,» said University of Bristol’s Professor Davide Pisani.
4,2 миллиарда лет! Как по мне, жизнь зародилась удивительно быстро, —
Можно ли, интересно, сделать из этого вывод, что развитие жизни на планете с похожими на Землю условиями, — это вопрос довольно короткого (по геологическим меркам) периода времени?
Нам известно около 3×10²² звёзд, среди них должно быть необозримое количество планет, похожих на нашу родную. Что если на каждой такой, — своя уникальная жизнь?
На что вы до сих пор держите обиду—2
Продолжу тему про обиды.
После девятого класса я поступил в техникум. Школа мне была ненавистна, поэтому я поторопился из неё сбежать, а вуз с моими оценками казался недостижимым. Техникум в этом случае казался вполне логичным шагом
Надо сказать, что ближе к концу школы у меня хорошо пошла математика. Причём
Однажды учительница задала нам, в качестве дополнительного задания, прорешать целую тетрадку с дифференциалами. Срок на это задание был очень маленький — одна или две недели, не помню точно. Помню очень долго сидел над тремя примерами, они никак не решались,
В понедельник я был очень горд собой — оказалось, что я единственный в классе решил вообще всё. Части ребят, которые не смогли взять те самые три дифференциала, я дал списать, от остальных защищал свои решения, как лев.
На уроке математики я гордо положил свою тетрадку на учительский стол, но учительница едва взглянула в мою сторону.
— А, Степанищев, — сказала она, — я и так верю, что ты всё решил.
Думаю, она это сделала из лучших побуждений, чтобы показать, что знает, как я хорошо знаю математику. Но для меня это был сильный удар по самолюбию и мотивации. Мне бы хотелось, чтобы она хоть немного посмотрела на мою работу и оценила как я решил хотя бы некоторые, сложные примеры.
Тетрадки других ребят она посмотрела. В том числе те три примеры, которые ребята у меня списали. За это решение похвалили других учеников, что ещё больше меня уязвило.
Амурский землекоп
На что похож зверь на фото? Как по мне, — это голый землекоп, просто вылитый. Та же морда, коротенькие ножки и хвост…
Сфотографировал в музее Лобачевского, куда мы в субботу ходили с дочкой. В музее проводится детская выставка по сказкам, вот мы и решили зайти. Насколько я понял, это ритуальная статуэтка с Дальнего востока, но изображает она не голого землекопа, а волшебного тигра.
И опять чинил PogodaStatusBar
Прям заметно, что эпоха открытого веба закончилась. Было время вокруг были открытые сервисы, используй сколько влезет. Потом всё
В общем, прошла неделя и мне снова прикрыли лавочку — урл «Гисметео», который я использовал, чтобы определять айди населённого пункта по названию вдруг меня забанил. На любой запрос выдаётся «доступ запрещён». Да что ж такое!
Полез я снова смотреть погодный плагин, смотреть как сделано там. Он же
Координаты у меня уже есть, я их могу забрать у «Яндекса», надо только распарсить:
@functools.cache
def _getRegionData(self):
try:
url = "https://yandex.ru/tune/geo/"
content = urllib.request.urlopen(url).read().decode('utf-8')
region_data = re.search(r'data-bem="([^"]+coords[^"]+)"', content).group(1)
parsed_region_data = json.loads(html.unescape(region_data))
# {'id': xx, 'region': 'XXXXX', 'coords': ['XX.XXXXX', 'XX.XXXXX'], 'accuracy': 'XXXXXX'}
return parsed_region_data['checkbox']['auto']
except (IOError, AttributeError):
return NoneВ итоге, получилась такая схема: в «Яндексе» получаем координаты и айди населённого пункта у «Яндекса», по этому айди получаем информацию по пробкам. Далее по координатам получаем айди населённого пункта у «Гисметео», по которому получаем погоду.
Пригласили выступить по кирпичам
Пригласили выступить на конференции в Свияжске на выставке «Русский кирпич: клейма, метки, знаки». Вот уж совершенно неожиданное предложение.
Дело в том, что я своими заметками о кирпичных клеймах Казани и попыткой описать найденное в справочнике, стал широко известен в узких кругах как специалист по казанским клеймам. Но всё равно неожиданно.
В начале своего увлечения я, возможно, мог так называться, то потом энтузиазм поугас. Всё, что сейчас мне интересно — это фотофиксация. Возможно
Так что, пожалуй, я откажусь. Сделать на таком материале полезный доклад можно, только потратив очень много времени, а мне этого не хочется.
WASM в шрифтах
Ну вот мы и дожили до момента, когда в шрифтах появился язык программирования. В harfbuzz, лидирующей библиотеке для отрисовки шрифтов появилась встроенная поддержка WASM.
В принципе, ожидаемо — даже мне, далёкому от проблем шрифтовиков человеку, было очевидно, что сложности соединения символов, используемых на письме, не решить только декларативным образом.
В общем, в шрифтах появился свой язык программирования.
Естественно, все побежали делать на нём всякую весёлую дичь. Внутрь шрифтов уже засунули «Тетрис» и даже
Я узнал об этом развлечении поздновато, но вчера вечером тоже немного развлёкся — сделал шрифт, который из букв «на лету» делает символы азбуки Морзе.
В принципе,
Немного о WASM'е в шрифтах
Когда я вчера в небольшом кругу рассказал о том как работает WASM в шрифтах, оказалось, что никто не понял некоторые базовые вещи, которые мне казались очевидными. Поэтому я хочу их расписать и тут тоже.
Давайте опять немного о том, почему язык программирования в шрифте — это удобно.
Шрифты сейчас устроены довольно сложно. Если не приглядываться, то ничего и не заметишь, но если разглядывать как взаимодействуют буквы между собой, окажется, что даже в отображении привычных нам кириллических и латинских букв есть особенности — в хороших шрифтах расстояния между различными парами букв тщательно выверено и записано внутрь шрифта.
Это делается для красоты, чтобы шрифт казался однородным. Буквы не квадратные, одни шире, другие у́же, «о» круглая, а «ж» похожа на причёску Альберта Эйнштейна. Если писать буквы как есть, то будет выглядеть неаккуратно, поэтому в местах их прилегания расстояния подбирают так, чтобы смотрелось хорошо.
Но вот нам хочется добавить в Юникод египетские иероглифы, а там имя фараона пишется в продолговатом овале — картуше. Как это решить в шрифте? Да никак. Мы можем ввести символы начала картуша и конца, а линии, которыми они должны соединяться, запрограммируем в движке, который рисует нам символы. Причём дизайнер шрифта никак не будет влиять на то, как эти линии рисуются.
Может показаться, что это не так уж и важно, наверное правда в этом есть, но это всего лишь пример. Есть и более актуальные проблемы, например, в арабском письме, но там их объяснить сложнее. По крайней мере, сложнее для меня.
Вместо того чтобы писать каждый раз новую логику в библиотеке, есть другое решение — внедрить этот кусок кода в сам шрифт, тогда с каждым шрифтом будет идти «инструкция» как его рисовать. Это удобно, потому что не нужно ждать, пока библиотека обновится во всех программах, где нам хочется, чтобы картуши рисовались правильно.
Как это работает?
Библиотека, если сильно упрощать, получает на вход от приложения место на экране (координаты) и строку, которую надо написать в этом месте. Строка, перед тем как начнётся отрисовка, засовывается в программу, которая хранится внутри шрифта. Эта программа производит с символами
Внутри программы можно менять символы, сдвигать их на другие позиции и так далее. Самое главное — программе доступен контекст в виде целой строки. Таким образом можно обнаружить (в случае египетских иероглифов), что слово начинается с символа начала картуша и нарисовать линии до признака его конца.
Дочка на каникулах
До этого лета дочка нигде не была без нас дольше пары дней. Максимум — уезжала к дедушке за город на одну ночёвку. Эти летние каникулы у нас прямо время экспериментов.
Сначала мы отвезли её к моим родителям на три недели в Лениногорск, а теперь она проводит время в летнем лагере под Казанью. Если в первом случае мы особо не переживали, —
Вначале этой недели она уехала и теперь появилось
Вчера я не выдержал, попросил организаторов о «сеансе связи». Созвонились. Дочка бодрым голосом поблагодарила за беспокойство, на мои вопросы сказала, что её никто не обижает, ей всё нравится и что лагерь активный и у них забрали гаджеты, чтобы дать отдых глазам. Другими словами, всё хорошо, папочка, чего ты переживаешь?
Ну что же, я рад. У дочки отличное лето, а у нас с женой — дополнительно время, чтобы привести
Кирпич «Сызр.-Вяз. Ж. Д.»
Недавно ездили с другом в поход — походили по островам вдалеке от дома, посмотрели всякое интересное, переночевали в палатке и обгоревшие и искусанные поехали домой разбирать находки и фотографии.
Конечно, я пофографировал и свои любимые кирпичи, их там валялось великое множество. Кроме вездесущего Костина, заметил новый для себя кирпич.
Разломалин Д.В. в своей книге «Железные дороги Калужской губернии», изданной в 1925 году, указывает, что в ведении
Дополнительно свидетельством о существовании этих заводов служат данные из «Указателя Всероссийской промышленной и художественной выставки 1896 года в Нижнем Новгороде», где в разделе «Строительное и инженерное дело» были представлены чертежи кирпичного завода, расположенного на станции Калуга.
Сведения об этом кирпичном заводе я почерпнул у Валерия Леонова, известного исследователя кирпичных клейм.
Добавлено позднее: оказалось, что это кирпич Топорнина.
Совершенно серые клеточки
Очень странно осознавать насколько мелочным, ненужным мусором забита значительная часть мозга. Что делает его таким ценным, что он годами сидит там, свежий, во всех подробностях, как будто это произошло минуту назад, тогда как более нужные, с моей точки зрения, вещи никак не запоминаешь?
В далёкие уже времена, когда «Али» ещё был
Инженеръ Шрадеръ
В те же выходные, когда ездили с другом кормить собой комаров и слепней, наступил в воде у береговой линии на замечательную детальку. Там иногда встречается различные артефакты, но как правило это малоинтересные ржавые штуки — гвозди, подковы,
Был босиком и наступил неудачно, на пальце до сих пор синяк, но иначе наверное и внимания на неё не обратил. Поднял, хотел в сердцах зашвырнуть подальше в реку, но увидел надписи и тут же забыл про боль в пальце.
Сначала я предположил, что это деталь
Найденная деталь оказалась частью запорной арматуры для радиаторов отопления. Думаю, неплохо различимая буква «ℜ» вверху является указанием на регулировку температуры. Только тут вместо привычного нам Цельсия стоит буква шкалы Реомюра.
Интересно было бы попробовать
Разве что интересный факт — рядом упоминаются ещё два Шрадера с инициалами «А.» (Август) и «Р. А» (Роберт Августович). Товарищество «Август Шрадер», занимавшееся текстилем, некогда организовал уроженец Бремена Август Андреевич,
Но что интересно, помимо указанных детей, у Августа был как минимум ещё один сын — Адольф. С высокой вероятностью, инженер Шрадер, это он. Видимо один из сыновей продолжил дело отца, а второй решил заняться инженерным делом.
Упоминание конторы Адольфа Августовича я нашёл в трёх справочниках — 1913, 1914 и 1915 годов. А вот в справочнике «Вся Москва: Адресная и справочная книга на 1917 год» телефон
Добавлено: позже оказалось, что это
А ещё некий инженер Шрадер А. А. неожиданно всплывает в газете «Вятский край» № 32 за 1895 год. Тот же этот инженер или нет, я не знаю, но вряд ли это такая распространённая фамилия, чтобы в России было два человека с теми же инициалами и родом занятий.
Интересно, что в Вятку (сейчас это город Киров) Шрадер прибыл из Казани. Что же он тут делал? У меня есть гипотеза, что он поступил в Казанский Императорский Университет на инженера, а потом остался работать.
Думаю тот же Шрадер упоминается в проекте, связанном с обводнением Булака при помощи артезианских скважин — есть в Казани такой канал, соединявший
Вероятно
Паёк в поход
Уже несколько лет мы с ребятами в походы берём готовые пайки, которые позиционируются как питание для разных силовых структур.
Плюсы таких пайков для меня очевидны: герметичная упаковка, компактность и калорийность. Нам с моим другом на сутки хватает одного такого набора, а стоит он чуть больше 700 рублей в «Озоне».
Год назад я показывал как выглядит китайский паёк, но до сих пор не рассказывал, что есть в российских.
Отечественных производителей на этом поприще много, но кардинальных различий между пайками я не увидел. Качество на уровне «есть можно».
Состав тоже примерно один и тот же — галеты, сухие напитки (чай, кофе, тонизирующие составы), еда, которую нужно подогревать (тушёнка, каша, плов в банках и так далее), разнообразные паштеты и прочее, что можно намазать, и сладкое.
Вода, естественно, в набор не входит. Иногда в комплекте идут таблетки для обеззараживания воды, но мы ими не пользуемся — берём воду с собой отдельно, по 2,5 литра на человека в день. Обычно нам этого хватает, чтобы попить и экономно помыть руки пару раз, тем более, что в наборах почти всегда есть влажные салфетки.
Горячее подогревается на специальной
Как по мне, для привалов это идеальное решение. В формате же пешего похода без привалов (у нас такие тоже бывают), я обычно беру энергетические батончики и простые углеводы в шоколадках. Их я использую для быстрого буста, если надо
Интернет-время «Своч»
Интересно насколько
Последняя форма записи подтолкнула мои размышления к тому, какой у нас, в сущности, странный способ измерения времени.
«8.35» похоже на десятичную дробь, но на самом деле основание дробной части тут — 60, а у целой — 12 или 24, в зависимости от обстоятельств. Наверняка все об этом думают время от времени.
Я знаю, что было несколько попыток предложить
Швейцарская компания «Своч» (Swatch) занимается наручными часами. Не знаю как у неё сейчас с известностью, а конце
Видимо на волне этой популярности,
Идея была в том, чтобы разделить сутки на тысячу «битов» — от нуля до 999, каждый «бит» (beat) равнялся 86,4 секунды, при этом отсчёт начинался с часового пояса UTC+01:00.
Время записывалось, начиная с символа «@» (он тогда прочно ассоциировался с интернетом) и добивалось нулями до трёх разрядов. Например: «@007», «@013» и так далее.
Вот небольшая программа на «Расте» для вывода текущего времени в этом формате:
use chrono::{Utc, Timelike, Duration as D};
use std::thread;
use std::time::Duration;
fn main() {
const SECS_IN_BEAT: f64 = 86.4;
loop {
let seconds = (Utc::now() + D::hours(1)).num_seconds_from_midnight() as f64;
let beat = (seconds / SECS_IN_BEAT).floor();
print!("🕰️ @{}\n\x1b[A\x1b[G", format!("{:03}", beat));
let duration = (1. + beat) * SECS_IN_BEAT - seconds;
thread::sleep(Duration::from_secs_f64(duration));
}
}Идея свою минуту славы получила, — я помню, компания «Эрикссон» выпустила телефон, который умел отображать время в этом формате, в языке ПХП добавили поддержку этого формата в функции работы со временем, а «Своч» выпустила часы, где в первой строке было традиционное время, а ниже — время
Не дожив даже до середины
Сейчас для видеосозвонов
К настоящему моменту, я считаю, поезд
Шрадер и Казань
Коль скоро след Шрадера, деталь которого я нашёл недавно, обнаружился в Казани, один из читателей предложил мне посмотреть информацию о нём в казанских справочниках. Мне такая мысль в голову приходила, но заниматься этим не хотелось — казанские справочники не распознаны, а поиск вручную занимает много времени.
Можно бы, конечно, распознать текст бесплатным «Тессерактом», но у него сильно хромает качество — в нужных мне справочниках не распознаётся почти ничего. Но вчера мне пришло в голову научиться использовать для этого движок распознавания текста, встроенный с недавнего времени в «МаОС». Он даёт куда более качественный текст.
Выяснилось следующее. Несмотря на то, что мне казалось маловероятным, чтобы в стране жило два инженера Шрадера с одинаковыми инициалами, это оказалось вполне возможным. В Москве жил Адольф Августович, а в справочнике «Адресная книжка г. Казани» два раза (в 1893 и 1896 гг.) записан Александр Александрович.
В принципе, это можно было бы списать на неточность источника — когда я изучал те же справочники в рамках своего интереса к кирпичным клеймам, подобные неточности встречались постоянно. Но в справочнике «Вся Казань» за 1899 год находится ещё один Шрадер с тем же отчеством.
По всей видимости, в Казани жила другая семья Шрадеров, и моя версия про учёбу в Казани и возвращение в Москву к семье полностью несостоятельна.
Ещё и ещё «Костин»
Когда писал про кирпичные клейма в прошлый раз, упомянул, что рядом видел и кирпичи нижегородского крестьянина Ивана Афанасьевича Костина. Я их с закрытыми глазами узна́ю — у нас в Казани они встречаются постоянно, а на одной из улочек буквально под ногами валялись.
Я сначала не планировал их выкладывать, но, думаю, лишним не будет, откуда знать что пригодится для истории.
Интересно сколько же их из Нижнего Новгорода везли, что у нас так много их обнаруживается? Причём не только в Казани, но и по берегам реки в нескольких часах езды.
Самарские коллеги, к слову, задаются тем же вопросом. Видимо дела у Ивана Афанасьевича шли необыкновенно хорошо.
Добавлено позднее. В справочниках есть множество упоминаний лавки торгового дома Ивана Афанасьевича в Казани, один из примеров:
Похудел
Недавно мне сказали, что я похудел. Вчера перед сном подумалось какое
С «пополнел» похоже, но там это менее явно ощущается, чувствуется едва заметно. Полнота — плохо, но если не связано с весом, то хорошо. Например, полное понимание — это отличная штука.
Упоминание насечек на монетах
Я
Я склоняюсь к версии, что такие монеты использовались
Мой друг Олег Петрович случайно набрёл в газете «Волжский вестник» на заметку, где, как кажется, есть упоминание таких монет:
Забрали дочку из лагеря
На прошлой неделе забрали дочку из лагеря — запросилась домой. Позже призналась, что в лагере было интересно только первые два дня, а потом плакала каждые утро и вечер — очень не понравилось, что всё такое обшарпанное, кровати скрипучие и туалет на улице.
Спросил почему не попросилась раньше. Сказала, что пыталась привыкнуть, было жалко, что мы заплатили деньги, да и вообще пытались ей организовать хороший отдых; хотела, чтобы это было не напрасно.
Жалко, конечно, что тот лагерь оказался настолько «пионерским», я думал такое уже в наше время не встречается. На фотографиях всё выглядело очень
Но есть и плюс — от скуки в тихий час начала читать книжку и вышла прям на следующий уровень. Конечно, сказались и недели у дедушки и бабушки — они тоже не мытьём, так катаньем приобщали к чтению.
В лагере методы пожёстче, — запрещены любые гаджеты. Оказалось, что в таких условиях 81 страница за 1,5 недели — вполне достижимый результат. Раньше дочь уставала после нескольких предложений, а теперь читает книжку страницами за раз. Надо бы донести этот результат до школы.
Это другое!
Сегодня в Казани сорвало все небесные краны, цены на такси скакнули, поэтому утром я ехал на переднем сиденье, чего я обычно не делаю — на заднем располагался мой попутчик по тарифу «Вместе».
Проезд от дома у нас постоянно занят запаркованными машинами, поэтому там свободна одна полоса и, чтобы выехать, нужно дожидаться своей очереди, пропуская всех въезжающих. Причём, как правило, все они поворачивают направо во дворы и никто, разумеется, не показывает это поворотником. Мне с переднего сиденья было это отлично видно. Мы пропустили три машины и все три раза не было понятно куда поедет водитель — на нас или направо.
Конечно это неприятно, ведь неясно — надо ли отъехать, чтобы пропустить машину или нет. Таксист весь извёлся — на третьей машине он уже матерился, махал руками и, в возмущении, жестом пытался показать, что около руля есть такой рычажок, который надо нажимать, чтобы обозначить свои намерения…
В общем, включил ли он поворотник, когда мы, дождавшись своей очереди, вырулили на основную дорогу? Конечно нет! Включал ли он его при манёврах на этой дороге? Ну разумеется нет.
Видимо это другое.
99 бутылок: mkdir + find
77. mkdir + find — тут некий японец придумал как писать программы, используя только утилиты mkdir и find. Мне такое очень нравится, поэтому и я решил
Программу вы можете видеть на экране, а как она работает расскажу чуть ниже.
# Written by Evgeny Stepanischev https://bolknote.ru
rm -rf bottles; mkdir bottles
find bottles -maxdepth 98 -execdir mkdir bottles/bottles \;
find bottles -empty -name bottles -execdir mkdir bottles/bottle \;
find bottles \
-empty -printf "1 bottle of beer on the wall, 1 bottle of beer.
Take one down and pass it around, no bottles of beer on the wall.
No more bottles of beer on the wall, no more bottles of beer.
Go to the store and buy some more, 99 bottles of beer on the wall.\n" -o \
-regex '.*/bottles/bottles' \
-execdir find . \
-empty -printf "%d bottles of beer on the wall, %d bottles of beer.\n" \; \
-execdir find bottles \
-empty -printf "Take one down and pass it around, %d %f of beer on the wall.\n\n" \;
# Clean up
rm -rf bottlesПрежде всего — что за две команды тут используются? rm не в счёт, она для очистки мусора, можно без неё.
Команда mkdir, наверное, многим знакома — это создание директория, а find — утилита для поиска файлов и директориев по различным критериям. Причём с найденным она может делать некоторые простые действия.
Чтобы писать программы, автор оригинальной статьи использует несколько находок.
Параметр запускает указанную команду в директории, который сейчас просматривает find. Эти вложенные директории в дальнейшем используются как конечный цикл для следующей команды find. Вложенность при этом можно регулировать параметром -maxdepth.
Мне пришлось дополнительно решить ещё две проблемы.
На самом деле на каждой внешней итерации я пускаю не один, а два внутренних цикла, поскольку мне нужны два числа — текущее значение считаемого «пива» и это же значение, уменьшенное на единицу. Сделать это было просто — ещё один find надо запускать во вложенном директории.
Но в строке перед этим текстом у меня сделано более честно. Как видно, структура директориев у меня такая: 98 раз созданы вложенные bottles, а конечная директория называется bottle.
Это мне позволяет в одном из «циклов», огранизованных через find, использовать аргумент %f параметра -printf, который выводит имя текущего директория. Таким образом в самом конце я получаю bottle вместо bottles.
Добавлено: мне подсказали, что обратный цикл можно огранизовать проще, через ключ -depth, переделал программу под него:
# Written by Evgeny Stepanischev https://bolknote.ru
find start -delete 2>&-
mkdir -p start/bottle/bottles
find start/bottle -maxdepth 97 -name bottles -execdir mkdir bottles/bottles \;
find start -mindepth 1 -depth \
-empty -printf "%d %f of beer on the wall, %d %f of beer.\n" -o \
! -empty -printf "Take one down and pass it around, %d %f of beer on the wall.\n\n" \
-printf "%d %f of beer on the wall, %d %f of beer.\n" \
-name bottle -printf "Take one down and pass it around, no bottles of beer on the wall.
No more bottles of beer on the wall, no more bottles of beer.
Go to the store and buy some more, 99 bottles of beer on the wall.\n"
rm -rf start