Забыл рассказать одну подробность про больницу. Она находится несколько в стороне от медицины вообще.
В больнице, как и в других государственных учреждениях, на стенах висят информационные стенды. Что мы ожидаем от такого стенда? Юридическую информацию. Памятки. Тематические плакаты. Всё как обычно.
Чего мы не ожидаем, так этого того, что под каждым заголовком будет ТОЛЬКО QR-код.
Например:
Советы по здоровому образу жизни: код Лицензия на осуществление медицинской деятельности: код Льготные лекарственные средства: код
Всего на стенде более десяти куэр-кодов. Это логично, но смотрится очень странно, когда весь стенд залеплен куэр-кодами, а человекочитаемой информации никакой нет. Может, тогда и заголовки за кодами спрячем? Или вывесим один большой код, ведущий на сайт больницы, где будет вся информация?
Я за то, чтобы под куэр-кодом всегда было текстом продублировано его содержание. Например, URL. Тогда код будет нести в себе только ускорение перехода по ссылке, а при текущем подходе он несёт ещё и сюрприз.
Мне нужно было поковырять данные, которые лежали в файле формата rda. Это двоичный контейнер языка R.
Что такое язык эр? Это какой-то язык для статистической обработки. Я с ним никогда не работал. Но данные мне были нужны.
Окей, гуглю, ставлю интерпретатор, открываю файл. Начинаю что-то с этими данными делать. Поскольку я ничего не знаю, гугл забивается запросами типа "r language how to view column names". И, сука, на каждый такой тупой вопрос есть ответы на стек оверфлоу.
Ковырялся я с этим часа два. В языке эр всё не как у людей. Есть небольшие отличия от си++, от матлаба, от питона. От всего, что я знаю. Поэтому ни одну манипуляцию я не могу произвести без гугла. Например, как вам нравится такое? Для доступа к определённой колонке через имя надо использовать не точку, не квадратную и не круглую скобку. А знак доллара. Например, table$field1. Индексация работает своеобразно. table[,4] -- покажи четвёртую колонку. table [,-4] -- удали (!) четвёртую колонку.
Ну и я просто устал. А ещё столкнулся с непреодолимой проблемой. Я не мог сложить значения двух колонок таблицы потому что где-то в колонке затесалось не-число. Но как его найти? Интерпретатор не указывает номер строки, просто говорит, что у вас формат не тот. А стек оверфлоу? Даже стек оверфолу считает, что такой поиск -- непростая задача.
И тогда меня осенила одна идея. Данные-то я смотреть давно могу. Зачем мне вообще этот эр?
"r language how to export to csv"
CSV-файл я с удовольствием открыл экселем. А уж про эксель я знаю побольше, чем про эр!
Что делать, если ты клёвая девчонка и хочешь делать косплей, но с навыками шитья плоховато? Надо отдать это дело на аутсорс.
Да, подрядчик раньше шил костюмы только для маленьких куколок, но и я тоже некрупная, да и куколка хоть куда!
Что думаю
Сериал очень похож на Нагаторо. Нагаторо активная и Китагава активная. ГГ стесняша и ГГ стесняша. Там ГГ художник и клёво рисует. А тут ГГ... "портной" и клёво шьёт. В обоих случаях творчество направлено на девочку. Какое же различие? Китагава не издевается.
Это делает Китагаву более приятным персонажем, но менее интересным. В Нагаторо была психология. Поведение девочки не совпадало с её мыслями, а потом у девочки возникала рефлексия, к которой она готова не была. Тут ситуация проще. Это романтическая комедия с фансервисом.
И тут интереснее ГГ, а не Китагава. Он замкнутый человек с очень странным хобби: делает традиционные японские куклы. Но оказавшись в необычной ситуации, он быстро адаптирует и свой профессиональный, и свой социальный навык. Если это будет продолжаться во втором сезоне (анонсирован на 2025 год), то ГГ рискует стать известной фигурой в сообществе, начать рубить бабки, а статус Китагавы как главной девочки может пошатнуться. Берегись, Китагава!
Что касается самого процесса шитья -- не верю. Я с машинкой проводил только несколько простых манипуляций, так что непосредственно на примере шитья я сказать не могу. Но я видел аналогичные примеры, как черпепашки-ниндзя за час собирают сложное устройство или хакер пишет программу за 10 минут.
И вот о программировании я знаю многое. И я распространяю свои наблюдения на "похожую" деятельность. А наблюдения такие.
Создавать что-либо -- это очень долгий процесс. Особенно если создавать в одно рыло. Можно быстро сделать тяп-ляп, но сделать "нормально" -- это в пять раз дольше. Недостаток опыта увеличивает время создания ещё в несколько раз. ГГ же шьёт костюм в кратчайшие сроки и его результат имеет высочайшее качество.
Я надеюсь, что он просто гений.
Рекомендации
Романтическая комедия более мягкая, чем Нагаторо.
Скриншоты
Я снял более 90 скриншотов, но выбрать пришлось 10. (скриншоты)
Помните синенькую (Ами) из Торы-Доры?
Сериал начинается крипово.
Его руки должны выглядеть так / чтобы её руки могли выглядеть так...
Снятие мерок.
Где мы уже видели такое хитрое лицо?
Вот первый костюм, что он сделал.
Все помнят, что иероглиф 正 используется для счёта, потому что в нём ровно пять черт?
Вот ещё один костюм.
Неудавшийся омлет с надписью "гомэн". Автор -- Китагава.
Как там кто-то из психологии рассказывал? Смотрите, куда наклонился каждый из участников пары. Это вам всё скажет.
Почему же я недавно писал про кассовые чеки и гарантию?
У одного из смартфонов отказала вибрация. За неделю до окончания гарантии. Я его принёс в сервисный центр.
Чека у меня не спросили, а гарантийный талон только посмотрели. Их интересовало другое: время включения телефона по базе данных. После парочки вопросов стало ясно: при первом подключении к сети телефон стучит изготовителю о том, что его включили. Хотя это неприятно само по себе, меня волнует и другой вопрос: а о чём ещё телефон стучит изготовителю?
Телефон обещали сделать СЕГОДНЯ. Но не позвонили ни сегодня, ни завтра, ни послезавтра. А в выходные они не работают.
Я сам им звонил, мне в один день сказали, что телефоном занимаются "прямо сейчас", через пару дней сказали, что телефон готов.
Пришёл, спрашиваю, что с телефоном сделали. А сделали они замену главной платы. Это меня удивило. Отказ вибрации это или отказ мотора, или отвалившийся контакт. Мотор стоит копейки, а пропайка контакта вообще бесплатна. Зачем они заменили основную деталь телефона?
На это мне ответили, что они занимаются блочным ремонтом и ничего не паяют. Штош. Телефон, в целом, состоит из четырёх блоков (не считая прочей мелочёвки): плата, экран, корпус и аккумулятор. Довольно расточительно они подходят к ремонту. Но может так и проще, чем обучать инженеров, что паять.
И ещё и IMEI изменился.
***
Захожу, сидит мужик на клиентском диване.
Мужик: На улице дождь идёт? Я: Нет. А вы так давно сидите? Мужик: С утра.
Ну, то есть, мужик ждёт, чтобы починили телефон при нём.
Я: Ничего себе. Ну, мне только получить. Мужик: Тогда часа за два управитесь. Я: Я во вторник сдавал. Только вчера сказали, что готово. Так что вам тут ещё и ночевать придётся. Мужик: А вам прям позвонили? Я: Нет. Я сам позвонил. Мужик: Понятно.
После этого мужик ушёл в служебное помещение. Лол.
На даче сломалось электричество. Персонально у нас. Надо починить. Вызвали электрика. Электрик назначил время 8 утра.
Окей, встаём в 6, ноги в руки, к 8 часам на даче. Звоню электрику. Он говорит, что к нему неожиданно приехал грузовик разгружаться, и в общем он будет в 08-30.
Что делать? Ложимся досыпать -- папа в одну комнату, я в другую. Блин, я точно знаю, что электрик разбудит. Но тут дело серьёзное, ложусь в обнимку с телефоном.
Поспал, просыпаюсь с удовольствием. Время 9. Думаю -- вот это да, электрик так и не позвонил. В это время я слышу в доме чьи-то шаги. Кто это? Папа бы не стал вставать просто так.
"Хозяева! Есть кто живой?"
Выхожу.
"Здрасьте, а вы кто?" "Я электрик! Я вам полчаса уже звоню!"
Открываю телефон. 11 пропущенных. Выключенный звук. Вот это называется удачно поспал!
***
В общем, на столбе отгорел контакт в месте разветвления. Электрик его заменил.
Выходишь из квартиры, начинаешь запирать дверь -- и тут слышишь, что кто-то на соседнем этаже тоже запирает дверь. Что надо делать?
Запирать как можно быстрее! Потому что если проиграешь, то невидимый сосед вызовет лифт первым.
У нас лифт простой, не подбирает пассажиров с соседних этажей. Поэтому если не превзойдёшь соседа в запирании двери, то будешь ждать следующего лифта. Или пойдёшь пешком, что, конечно, полезно, но не всегда желательно...
И только сейчас, когда пишу этот пост, я подумал, что можно схитрить. Вызвать лифт сразу, а дверь запирать, пока лифт едет.
Смарт-часы у меня вовсе не смарт. Для уведомлений я их не использую. Больше меня интересует запись показателей. И в первую очередь -- сна, а не физических активностей.
Тем не менее, ношу я какой-то там ми бэнд (шестой). И ношу я его в ванну тоже.
Ну и короче после очередного выхода из ванной я обнаружил, что у ми банда отказал тачскрин. Рад я этому не был. Это типа что, один сломал, другой потерял? (потому что предыдущий я потерял) Браслеты -- расходный материал и работают год?
Показатели часы продолжали записывать, а время -- показывать. Но посмотреть длительность сна с часов стало невозможно. Что же делать, покупать новые? Какие?
Стал смотреть, что на рынке. С воодушевлением узнал, что в Gadgetbridge недавно добавили поддержку часов хуавей/хонор, а у них нет блокировки сторонних приложений, в отличие от ми бэнда. С печалью узнал, что ми бэнд 8 про имеет тенденцию тонуть. Подивился ценам на смарт-часы круглой формы (в 2-3 раза больше квадратных).
Пока я читал интернет, я продолжал ходить с текущим ми бэндом в ванну. Длилось это недели две.
И вот выхожу я из ванной в очередной раз, и обнаруживаю, что тачскрин заработал. Это как? Залившаяся вода восстановила контакт? Не может быть.
Штош. Как заработал, так и снова откажет. Но пока ещё попользуюсь.
Доктор разрешил уже водить машину, и я поехал на работу.
Идёт ливень. Меня обгоняет кабриолет. У кабриолетов обычно есть закрывающаяся крыша. У этого либо крыши не было, либо водитель не стал её закрывать. Трудно представить, в каком состоянии у него был салон.
Водитель же был не в капюшоне. Не в шляпе. Он был в огромных наушниках -- на лысую голову.
Это такая классика, что у меня олдскулы свело. Программа, отображающая ход измерений и программа, непосредственно проводящая измерения -- разные вещи. Они обмениваются пакетами. Формат пакетов задаю я сам.
И вот почему-то для общего числа итераций я использовал тип int32_t (4 байта), а для номера текущей итерации -- int8_t (1 байт). При этом в микроконтроллере номер итерации хранится 32-битный. Это он только наружу выходит в урезанном виде.
Конечно же, восьмибитное знаковое число будет "оборачиваться" в минус после 127...
Магазин в ТЦ открыт, но двери закрыты. Двери стеклянные. Подхожу, вижу надпись, "от себя".
Обычно такие двери открываются на себя, хотя это и не строгое правило. Я порадовался, что я такой внимательный. Не хотелось бы сломать дверь! Открываю, захожу.
Перед выходом спрашиваю у продавца, почему дверь открывается не в ту сторону. А продавец отвечает:
"Да вы не переживайте. На самом деле она в обе стороны открывается".
В Питоне я предпочитаю файл сразу считывать в память, а уже потом с ним работать. То же и при записи: сначала готовлю содержимое, потом его сразу пишу.
Но файл может быть большим, по нему надо ползать, что-то считывать и что-то записывать не по порядку. В Си для этого есть fseek. В Си++ есть seekp/seekg. В Питоне тоже есть seek.
В детстве я плохо понимал смысл файлового указателя. Вот же он:
FILE *f;
Но это не тот указатель.
Файловый указатель, управляемый функциями типа fseek, обозначает позицию для следующих записи/считывания. Как же это об'яснить студентам, с учётом того, что я сам этого долго не понимал?
Сейчас я полагаю, что лучшая аналогия -- это курсор. Любой современный человек, пользующийся хотя бы смартфоном, понимает, что такое курсор. И интуитивно понятно, что запись в файл происходит в положение курсора. Чтение тоже происходит из положения курсора.
Несколько сложнее понять, что при чтении и записи курсор автоматически сдвигается.
Ещё сложнее понять, что при записи в середину фалйа, а не в конец, происходит перезаписывание содержимого. Это то же самое, что режим курсора overwrite, хотя о нём знают не все.
Но изначально я писал не просто про файловый указатель, а про функции типа fseek. И вот каково об'яснение их назначения:
Функции fseek занимаются ничем иным, как установкой положения курсора -- от начала, от конца файла, или относительно текущего положения. Вот и всё.
Явление достаточно редкое, но от этого не более понятное. В Телеграме.
Публичный канал с запретом копирования и пересылки сообщений.
Я понимаю, когда канал приватный. Мало ли что вы там публикуете -- это дело ваше. Вы можете не хотеть распространения. Но если канал публичный, то что? Человек не властен над тем, что он уже опубликовал.
Существуют разные способы получить текст поста. Например, у таких телефонов на анрдроиде нельзя снять сркиншот. Но на компьютере можно. Тот, кто захочет получить текст -- это сделает.
А потом... отправит текст тому, кому собирался. Если бы пересылка была разрешена, то при пересылке было бы видно, откуда это . И человек бы зашёл и подписался. А нет форварда -- нет подписки.
Из-за руки (и не только) в последнее время мне часто приходится общаться с незнакомыми людьми. Или не так: незнакомым людям приходится общаться со мной.
Я часто слышу претензию насчёт того, что я слишком громко говорю. А говорю я действительно громко, особенно когда волнуюсь.
"Не кричите на меня!" "Можно потише?" "Да он просто плохо слышит"
Увы, потише нельзя. Слышу я хорошо. Проблема в другом.
Родители всю жизнь вели занятия по бальным танцам. У детей. Это значило, что им надо было перекричать не только музыку, но и, собственно, детей.
Дальнейшее я только предполагаю. Придя домой, они продолжали орать уже дома. Что же оставалось делать мне и сестре? Или просто молчать, потому что нас не услышат, или начинать орать точно так же. (К сестре тоже бывают претензии по поводу голоса)
Результат понятен. Но что с ним делать? Как можно научить себя не кричать? И нужно ли это делать?
Этот эпизод произошёл в тот момент, когда у меня на фоне сломанной руки образовалась простуда, о чём я писал тут.
Лежу я себе, засыпаю, и вдруг понимаю, что на каждом вдохе я слышу... хрип. Это меня несколько встревожило. Я поэкспериментировал с дыханием -- хрип повторялся. Очень плохо. Я решил перевернуться на бок, чтобы посмотреть, что будет. И когда я переворачивался, я услышал хрип, хотя в это время не вдыхал...
ОКАЗАЛОСЬ, что это скрипели липучки у косынки, на которую была подвязана рука...
Был удивительный период в моей жизни, когда мой папа шестым чувством знал о моём нахождении в туалете. Стоило мне туда зайти -- он звонил на телефон, чтобы что-то узнать и т.п. Я решил эту проблему: стал всегда брать телефон с собой.
Через какое-то время такие случаи прекратились.
Потом оказалось, что такое бывает не только у меня и не только с туалетом. Например, лёг вздремнуть на полчаса -- начинают одновременно звонить спаммеры и коллеги с работы. И у самого папы на днях было то же самое: лёг поспать, начали писать и звонить.
Раньше я думал, что причина таких совпадений мистическая. Типа вселенная предупреждает -- сейчас не спи, проспишь что-то важное. Но сбор статистики показывает: никто ничего важного не проспал.
Тем не менее, что причина мистическая, я по-прежнему не сомневаюсь. А вот в чём смысл -- не знаю.
Раньше, когда кто-нибудь на работе начинал разговор с фразы "а я вот видел видео на ютьюбе...", я кривился. Ну что это такое. Видео он видел! Я тоже видел, но можно же как-то поумнее начать рассказывать.
А потом ничего, привык. Сам тоже теперь так делаю.
И уже сейчас я не понимаю, чего это я кривился. Это мало отличается от "по телевизору рассказали". А разговоры про то, что рассказали по телевизору, существуют очень давно.
Кассовый чек является документом. А важность этого документа определяется важностью товара.
Я беру чеки почти всегда, а потом складываю их в кучу. Сейчас я начинаю склоняться к идее о том, что малозначимые чеки можно не брать. Тем не менее, у меня бывали случаи, когда на выходе из магазина останавливают и просят чек.
Конечно, при оплате банковской картой чек может быть в банковском приложении, но там будет отображаться только сумма, а не список товаров. Если же ваше банковское приложение получает ещё и список товаров, то откажитесь от приложения и от самого банка. Список покупок банку знать совершенно незачем. Пусть его знает только платформа ОФД. К сожалению, я пока не понял правил, когда формируется электронный чек ОФД, а когда нет.
Есть более важные чеки, связанные не с хлебушком, а с гарантией на различные девайсы. И вот, устройство сломалось, я начинаю искать чек.
Многие магазины электроники печатают кроме чека ещё и накладную. Это крупногабаритная, осязаемая вещь, которую проебать непросто. Но, например, DNS печатает только чек. А в последнее время даже отказывается ставить печать на гарантийный талон. У вас есть чек!
Чек был, да сплыл. Я перерыл все кучи и осязаемых документов, и продуктовых чеков. Нашёл все чеки кроме нужного.
Тогда-то я и понял, что для маленьких, но ценных чеков надо сделать отдельную папочку, и регулярно сортировать свежие чеки, чтобы путаницы никогда не возникало.