zHz00 Untitled

вторник, 18 июня 2024
04:35 Выгорели свечи? Меняем двигатель!
Почему же я недавно писал про кассовые чеки и гарантию?

У одного из смартфонов отказала вибрация. За неделю до окончания гарантии. Я его принёс в сервисный центр.

Чека у меня не спросили, а гарантийный талон только посмотрели. Их интересовало другое: время включения телефона по базе данных. После парочки вопросов стало ясно: при первом подключении к сети телефон стучит изготовителю о том, что его включили. Хотя это неприятно само по себе, меня волнует и другой вопрос: а о чём ещё телефон стучит изготовителю?

Телефон обещали сделать СЕГОДНЯ. Но не позвонили ни сегодня, ни завтра, ни послезавтра. А в выходные они не работают.

Я сам им звонил, мне в один день сказали, что телефоном занимаются "прямо сейчас", через пару дней сказали, что телефон готов.

Пришёл, спрашиваю, что с телефоном сделали. А сделали они замену главной платы. Это меня удивило. Отказ вибрации это или отказ мотора, или отвалившийся контакт. Мотор стоит копейки, а пропайка контакта вообще бесплатна. Зачем они заменили основную деталь телефона?

На это мне ответили, что они занимаются блочным ремонтом и ничего не паяют. Штош. Телефон, в целом, состоит из четырёх блоков (не считая прочей мелочёвки): плата, экран, корпус и аккумулятор. Довольно расточительно они подходят к ремонту. Но может так и проще, чем обучать инженеров, что паять.

И ещё и IMEI изменился.

***

Захожу, сидит мужик на клиентском диване.

Мужик: На улице дождь идёт?
Я: Нет. А вы так давно сидите?
Мужик: С утра.

Ну, то есть, мужик ждёт, чтобы починили телефон при нём.

Я: Ничего себе. Ну, мне только получить.
Мужик: Тогда часа за два управитесь.
Я: Я во вторник сдавал. Только вчера сказали, что готово. Так что вам тут ещё и ночевать придётся.
Мужик: А вам прям позвонили?
Я: Нет. Я сам позвонил.
Мужик: Понятно.

После этого мужик ушёл в служебное помещение. Лол.

@темы: Случай из жизни, Борьба с техникой

URL
понедельник, 17 июня 2024
03:40 Мария Селеста. Взгляд изнутри
На даче сломалось электричество. Персонально у нас. Надо починить. Вызвали электрика. Электрик назначил время 8 утра.

Окей, встаём в 6, ноги в руки, к 8 часам на даче. Звоню электрику. Он говорит, что к нему неожиданно приехал грузовик разгружаться, и в общем он будет в 08-30.

Что делать? Ложимся досыпать -- папа в одну комнату, я в другую. Блин, я точно знаю, что электрик разбудит. Но тут дело серьёзное, ложусь в обнимку с телефоном.

Поспал, просыпаюсь с удовольствием. Время 9. Думаю -- вот это да, электрик так и не позвонил. В это время я слышу в доме чьи-то шаги. Кто это? Папа бы не стал вставать просто так.

"Хозяева! Есть кто живой?"

Выхожу.

"Здрасьте, а вы кто?"
"Я электрик! Я вам полчаса уже звоню!"

Открываю телефон. 11 пропущенных. Выключенный звук. Вот это называется удачно поспал!

***

В общем, на столбе отгорел контакт в месте разветвления. Электрик его заменил.

А я ему доплатил за косяк с телефоном.

@темы: Случай из жизни, Фейлы

URL
воскресенье, 16 июня 2024
03:17 Незримое соревнование
Выходишь из квартиры, начинаешь запирать дверь -- и тут слышишь, что кто-то на соседнем этаже тоже запирает дверь. Что надо делать?

Запирать как можно быстрее! Потому что если проиграешь, то невидимый сосед вызовет лифт первым.

У нас лифт простой, не подбирает пассажиров с соседних этажей. Поэтому если не превзойдёшь соседа в запирании двери, то будешь ждать следующего лифта. Или пойдёшь пешком, что, конечно, полезно, но не всегда желательно...

И только сейчас, когда пишу этот пост, я подумал, что можно схитрить. Вызвать лифт сразу, а дверь запирать, пока лифт едет.

@темы: Восприятие, Наблюдения

URL
суббота, 15 июня 2024
03:02 Что нас не убивает, то делает сильнее
Смарт-часы у меня вовсе не смарт. Для уведомлений я их не использую. Больше меня интересует запись показателей. И в первую очередь -- сна, а не физических активностей.

Тем не менее, ношу я какой-то там ми бэнд (шестой). И ношу я его в ванну тоже.

Ну и короче после очередного выхода из ванной я обнаружил, что у ми банда отказал тачскрин. Рад я этому не был. Это типа что, один сломал, другой потерял? (потому что предыдущий я потерял) Браслеты -- расходный материал и работают год?

Показатели часы продолжали записывать, а время -- показывать. Но посмотреть длительность сна с часов стало невозможно. Что же делать, покупать новые? Какие?

Стал смотреть, что на рынке. С воодушевлением узнал, что в Gadgetbridge недавно добавили поддержку часов хуавей/хонор, а у них нет блокировки сторонних приложений, в отличие от ми бэнда. С печалью узнал, что ми бэнд 8 про имеет тенденцию тонуть. Подивился ценам на смарт-часы круглой формы (в 2-3 раза больше квадратных).

Пока я читал интернет, я продолжал ходить с текущим ми бэндом в ванну. Длилось это недели две.

И вот выхожу я из ванной в очередной раз, и обнаруживаю, что тачскрин заработал. Это как? Залившаяся вода восстановила контакт? Не может быть.

Штош. Как заработал, так и снова откажет. Но пока ещё попользуюсь.

@темы: Борьба с техникой, Электроника

URL
пятница, 14 июня 2024
00:46 Солнечное, пляж Ласковый
Доктор разрешил уже водить машину, и я поехал на работу.

Идёт ливень. Меня обгоняет кабриолет. У кабриолетов обычно есть закрывающаяся крыша. У этого либо крыши не было, либо водитель не стал её закрывать. Трудно представить, в каком состоянии у него был салон.

Водитель же был не в капюшоне. Не в шляпе. Он был в огромных наушниках -- на лысую голову.

@темы: Автомобили, Наблюдения

URL
четверг, 13 июня 2024
04:51 ТЗ нечёткое, но виноват сам
Надо было сделать многократное измерение. Сколько максимум раз может пользователь захотеть его сделать? Неизвестно. Сотня точно. Может и больше.

Но как это тестировать? Это пользователь может мерить по своему желанию. Мне запустить замер на много часов или даже несколько дней -- сложнее.

10 итераций проверил. 50 итераций проверил. 100... не помню, проверил или нет.

Пользователь запустил 200. А потом пишет -- а почему у меня количество измерений отрицательным отображается?

Читаю логи. 126 измерений... 127 измерений... -128 измерений...

Это такая классика, что у меня олдскулы свело. Программа, отображающая ход измерений и программа, непосредственно проводящая измерения -- разные вещи. Они обмениваются пакетами. Формат пакетов задаю я сам.

И вот почему-то для общего числа итераций я использовал тип int32_t (4 байта), а для номера текущей итерации -- int8_t (1 байт). При этом в микроконтроллере номер итерации хранится 32-битный. Это он только наружу выходит в урезанном виде.

Конечно же, восьмибитное знаковое число будет "оборачиваться" в минус после 127...

@темы: Программирование, Фейлы, Говнокод, Борьба с техникой

URL
среда, 12 июня 2024
07:09 Слишком умный
Магазин в ТЦ открыт, но двери закрыты. Двери стеклянные. Подхожу, вижу надпись, "от себя".

Обычно такие двери открываются на себя, хотя это и не строгое правило. Я порадовался, что я такой внимательный. Не хотелось бы сломать дверь! Открываю, захожу.

Перед выходом спрашиваю у продавца, почему дверь открывается не в ту сторону. А продавец отвечает:

"Да вы не переживайте. На самом деле она в обе стороны открывается".

@темы: Случай из жизни

URL
вторник, 11 июня 2024
03:23 Файловый указатель: какую я придумал аналогию
В Питоне я предпочитаю файл сразу считывать в память, а уже потом с ним работать. То же и при записи: сначала готовлю содержимое, потом его сразу пишу.

Но файл может быть большим, по нему надо ползать, что-то считывать и что-то записывать не по порядку. В Си для этого есть fseek. В Си++ есть seekp/seekg. В Питоне тоже есть seek.

В детстве я плохо понимал смысл файлового указателя. Вот же он:

FILE *f;

Но это не тот указатель.

Файловый указатель, управляемый функциями типа fseek, обозначает позицию для следующих записи/считывания. Как же это об'яснить студентам, с учётом того, что я сам этого долго не понимал?

Сейчас я полагаю, что лучшая аналогия -- это курсор. Любой современный человек, пользующийся хотя бы смартфоном, понимает, что такое курсор. И интуитивно понятно, что запись в файл происходит в положение курсора. Чтение тоже происходит из положения курсора.

Несколько сложнее понять, что при чтении и записи курсор автоматически сдвигается.

Ещё сложнее понять, что при записи в середину фалйа, а не в конец, происходит перезаписывание содержимого. Это то же самое, что режим курсора overwrite, хотя о нём знают не все.

Но изначально я писал не просто про файловый указатель, а про функции типа fseek. И вот каково об'яснение их назначения:

Функции fseek занимаются ничем иным, как установкой положения курсора -- от начала, от конца файла, или относительно текущего положения. Вот и всё.

@темы: Программирование, Студенты

URL
понедельник, 10 июня 2024
06:23 Горячие пирожки наоборот
Это очень просто, но понимание ко мне пришло не сразу:

Лёд в кубиках надо из формы в чашку перекладывать как можно быстрее, чтобы рука замёрзнуть не успела.

@темы: Лайфхак, Еда

URL
воскресенье, 09 июня 2024
04:42 Приоткройте ворота
Явление достаточно редкое, но от этого не более понятное. В Телеграме.

Публичный канал с запретом копирования и пересылки сообщений.

Я понимаю, когда канал приватный. Мало ли что вы там публикуете -- это дело ваше. Вы можете не хотеть распространения. Но если канал публичный, то что? Человек не властен над тем, что он уже опубликовал.

Существуют разные способы получить текст поста. Например, у таких телефонов на анрдроиде нельзя снять сркиншот. Но на компьютере можно. Тот, кто захочет получить текст -- это сделает.

А потом... отправит текст тому, кому собирался. Если бы пересылка была разрешена, то при пересылке было бы видно, откуда это . И человек бы зашёл и подписался. А нет форварда -- нет подписки.

@темы: Мысли, Telegram, Наблюдения

URL
суббота, 08 июня 2024
02:05 Для чего, по-вашему, нужна иконка?
Интернет-магазин, товар. Под товаром зелёная галочка. Я такой -- отлично.

Читаю текст рядом с зелёной галочкой: "Нет в наличии".

*волк крутит пальцем у виска*

А если есть в наличии, то какой значок?

Проверил: тоже зелёная галочка.

@темы: Говнокод, Наблюдения

URL
пятница, 07 июня 2024
01:40 Я не матерюсь, у меня просто лицо такое
Из-за руки (и не только) в последнее время мне часто приходится общаться с незнакомыми людьми. Или не так: незнакомым людям приходится общаться со мной.

Я часто слышу претензию насчёт того, что я слишком громко говорю. А говорю я действительно громко, особенно когда волнуюсь.

"Не кричите на меня!"
"Можно потише?"
"Да он просто плохо слышит"

Увы, потише нельзя. Слышу я хорошо. Проблема в другом.

Родители всю жизнь вели занятия по бальным танцам. У детей. Это значило, что им надо было перекричать не только музыку, но и, собственно, детей.

Дальнейшее я только предполагаю. Придя домой, они продолжали орать уже дома. Что же оставалось делать мне и сестре? Или просто молчать, потому что нас не услышат, или начинать орать точно так же. (К сестре тоже бывают претензии по поводу голоса)

Результат понятен. Но что с ним делать? Как можно научить себя не кричать? И нужно ли это делать?

@темы: Восприятие, Мысли

URL
четверг, 06 июня 2024
05:41 Показалось
Этот эпизод произошёл в тот момент, когда у меня на фоне сломанной руки образовалась простуда, о чём я писал тут.

Лежу я себе, засыпаю, и вдруг понимаю, что на каждом вдохе я слышу... хрип. Это меня несколько встревожило. Я поэкспериментировал с дыханием -- хрип повторялся. Очень плохо. Я решил перевернуться на бок, чтобы посмотреть, что будет. И когда я переворачивался, я услышал хрип, хотя в это время не вдыхал...

ОКАЗАЛОСЬ, что это скрипели липучки у косынки, на которую была подвязана рука...

@темы: Случай из жизни, Восприятие

URL
среда, 05 июня 2024
03:57 Оставьте меня в покое
Был удивительный период в моей жизни, когда мой папа шестым чувством знал о моём нахождении в туалете. Стоило мне туда зайти -- он звонил на телефон, чтобы что-то узнать и т.п. Я решил эту проблему: стал всегда брать телефон с собой.

Через какое-то время такие случаи прекратились.

Потом оказалось, что такое бывает не только у меня и не только с туалетом. Например, лёг вздремнуть на полчаса -- начинают одновременно звонить спаммеры и коллеги с работы. И у самого папы на днях было то же самое: лёг поспать, начали писать и звонить.

Раньше я думал, что причина таких совпадений мистическая. Типа вселенная предупреждает -- сейчас не спи, проспишь что-то важное. Но сбор статистики показывает: никто ничего важного не проспал.

Тем не менее, что причина мистическая, я по-прежнему не сомневаюсь. А вот в чём смысл -- не знаю.

@темы: Случай из жизни, Звонки

URL
вторник, 04 июня 2024
04:14 Светская беседа
Раньше, когда кто-нибудь на работе начинал разговор с фразы "а я вот видел видео на ютьюбе...", я кривился. Ну что это такое. Видео он видел! Я тоже видел, но можно же как-то поумнее начать рассказывать.

А потом ничего, привык. Сам тоже теперь так делаю.

И уже сейчас я не понимаю, чего это я кривился. Это мало отличается от "по телевизору рассказали". А разговоры про то, что рассказали по телевизору, существуют очень давно.

@темы: Восприятие, Мысли

URL
понедельник, 03 июня 2024
06:12 Для сладкого второй желудок
Кассовый чек является документом. А важность этого документа определяется важностью товара.

Я беру чеки почти всегда, а потом складываю их в кучу. Сейчас я начинаю склоняться к идее о том, что малозначимые чеки можно не брать. Тем не менее, у меня бывали случаи, когда на выходе из магазина останавливают и просят чек.

Конечно, при оплате банковской картой чек может быть в банковском приложении, но там будет отображаться только сумма, а не список товаров. Если же ваше банковское приложение получает ещё и список товаров, то откажитесь от приложения и от самого банка. Список покупок банку знать совершенно незачем. Пусть его знает только платформа ОФД. К сожалению, я пока не понял правил, когда формируется электронный чек ОФД, а когда нет.

Есть более важные чеки, связанные не с хлебушком, а с гарантией на различные девайсы. И вот, устройство сломалось, я начинаю искать чек.

Многие магазины электроники печатают кроме чека ещё и накладную. Это крупногабаритная, осязаемая вещь, которую проебать непросто. Но, например, DNS печатает только чек. А в последнее время даже отказывается ставить печать на гарантийный талон. У вас есть чек!

Чек был, да сплыл. Я перерыл все кучи и осязаемых документов, и продуктовых чеков. Нашёл все чеки кроме нужного.

Тогда-то я и понял, что для маленьких, но ценных чеков надо сделать отдельную папочку, и регулярно сортировать свежие чеки, чтобы путаницы никогда не возникало.

@темы: Лайфхак, Фейлы

URL
воскресенье, 02 июня 2024
04:04 Ещё раз про знак "меньше" на diary.ru
Пару недель назад я писал о проблемах со знаком "меньше". В том посте я очень гордился тем, что нашёл способ отображения этого знака без проблем. И даже собрал четыре лайка, что очень интересно с учётом того, что я обнаружил позднее.

Тестируя свои скрипты для скачивания дайари, я обнаружил удивительную вещь, а именно, что тот мой пост про знак меньше неправильно отображается у разлогиненных пользователей.

Я не буду описывать процесс расследования, а перейду сразу к выводам.

Правила отображения знака меньше и html-подстановок, о которых я писал в прошлом посте, зависят от настройки: Настройки -- Картинки (аватары, смайлы) -- Показывать или нет графические изображения смайликов.

При этом правила такие.

1. Если у пользователя опция ВКЛЮЧЕНА, т.е. текстовые смайлики заменяются на графические, то HTML-подстановки НЕ ЗАМЕНЯЮТСЯ. Вы можете спокойно писать &lt; в тексте поста. Эта подстановка "как есть" будет передана в браузер, а он её отобразит как знак "<".

2. Если у пользователя опция ВЫКЛЮЧЕНА, то текстовые смайлики заменены не будут. Вместо этого БУДУТ заменены HTML-подстановки! В этом случае писать их напрямую уже нельзя, а надо использовать тот метод, что я описывал в прошлом посте. Иначе движок дайари сам раскроет подстановку и отправит знак "<" в браузер, что недопустимо, и может быть отображено некорректно.

Парадокс тут в том, что правила зависят не от настроек владельца дневника, а от настроек того, кто дневник смотрит. При этом у анонимов действует первый вариант. Это означает, что автор дневника не может написать такой пост, который бы все видели одинаково.

У меня, естественно, опция была выключена (вариант №2), поэтому-то я и знал о проблеме. Но проблема эта была только моя. Я уверен, что большинство пользователей, включая анонимов, имеют включённую опцию. Поэтому-то мне и интересно, что за четыре человека поставили лайк. У них, значит, опция тоже отключена, поэтому они увидели текст поста так, как я задумал?

Теперь надо понять, что делать. Я, конечно же, хочу спокойно писать знаки меньше и больше, и чтобы все их видели правильно. Но пока что не понимаю, как это сделать. Возможно, придётся воспользоваться методом CD_Eater'а, который оборачивает эти знаки в тег span, вот так:<span><</span>. Это нарушает правила вёрстки, но даёт предсказуемый результат: знаки отображаются корректно. Теперь надо проверить, что это одинаково работает во всех дизайнах и при всех настройках.

@темы: Говнокод, Борьба с техникой

URL
суббота, 01 июня 2024
02:52 Комплимент "с добавкой"
Такие комплименты я, к сожалению делал сам, а иногда и получал.

В чём суть?

Хотя комплимент чаще всего делается противоположному полу, но явление это более общее. Комплимент -- это что-то вроде похвалы. Может быть не совсем корректным сказать бородатому мужику что он "молодец" и "умничка", а симпатичной девушке что она "баба хоть куда". Но можно сделать и кое-что похуже.

Наверное, в людях есть встроенный цундере-инстинкт. Кажется, что похвалил слишком сильно. Или кажется, что если похвалишь, то не дай бог собеседник подумает, что ты к нему хорошо относишься.

Короче говоря, иногда, когда делают комплименты, их "разбавляют", сообщая кроме основной похвалы ещё какое-нибудь малоприятное обстоятельство. В экстремальных случаях это может выглядеть примерно как "молодец, но мог бы и лучше" или "умничка, жаль что лицом не вышел".

Это не просто уменьшает степень похвалы, как может показаться говорящему. Это меняет её знак на противоположный. "Молодец, но мог бы и лучше", это не 90% похвала вместо 100%. Это –90% похвала.

Так что лучше уж перехвалить и вовремя остановиться, чем попытаться "уточнить" комплимент. Хуже будет.

***

А вот и реальный пример, который был у меня.

Конный инструктор мне говорит: "Я бы с вами на лошадях на войну поехал".

Несмотря на моё отношение к войне, слышать такое было приятно. Конница требует не только надёжных лошадей, но и надёжных всадников. Если вам такое говорят, то это определённый уровень доверия, а также признание вашего навыка.

А потом инструктор сказал "добавку":

"Я бы вас поставил обоз сторожить. У вас всегда всё предусмотрено".

Кхм!

@темы: Восприятие, Мысли

URL
пятница, 31 мая 2024
03:00 Учебный код и серьёзный код
Все мы когда-то писали кривой код на лабах по программированию. А кто-то такой код пишет до сих пор по работе.

Учебный код должен выполнять то задание, которое написано на листочке, и его он должен выполнять без ошибок. Если при разрешённых входных данных получается чушь, это должно быть исправлено.

Но что делать с запрещёнными входными данными? Я полагаю, что учебные программы имеют право работать некорректно, если пользователь попрыгал по клавиатуре или нажал кнопки не в том порядке. Потому что смысл упражнения не в том, чтобы сделать законченный продукт. Задача лаб в том, чтобы студент понял ту или иную концепцию и применил её на практике.

Сейчас я пытаюсь вспомнить, требовал ли я от студентов жёстких проверок на всех этапах работы программ или нет? Вроде не требовал. Но если даже требовал тогда, то сейчас моё мнение такое, как я написал выше.

Если, конечно, студент сам захотел и сделал все проверки -- то это замечательно. Потому что такой код уже может считаться серьёзным.

Серьёзный код -- это такой, который корректно отрабатывает все разрешённые взаимодействия с пользователем. Программа может падать, если пользователь покопался в настроечных файлах -- это он сам виноват. Но программа не может падать, если пользователь не там пощёлкал мышкой.

Я не знаю, как принято в современной методологии разработки ПО. Я вижу только то, как делаются проекты у нас на работе и в соседних организациях. А происходит вот что. Любой код начинается как учебный, и сначала пилится основная часть, которая правильно работает при правильных действиях пользователя.

А вот когда это заработало, начинают делать защиту от оператора, от стихийных бедствий и от кота. Это-то и переводит учебный код в серьёзный.

@темы: Программирование, Говнокод, Студенты, Мысли

URL
четверг, 30 мая 2024
05:47 История, рассказанная с конца. Приёмное отделение
Хочу закончить тему про больницу, а для этого надо рассказать пару эпизодов, которые были в самом начале. Без них картина была бы неполной.

В больницу я получил направление из травмпункта после того, как там посмотрели снимок и сказали, что не возьмутся лечить руку консервативно. Никакую скорую помощь мне не вызывали, отправили пешком.

Какое-то время меня оформляли, а потом сказали куда идти, подойти там к ресепшну и сказать, что я "на травматолога". Ходят обычно на босса, а не на врача. Но там все так говорят. "На травматолога", "на хирурга". На самом деле никуда "на" я не пошёл. Меня отправили в палату для обследования.

В этой палате все лежат вместе, независимо от врача, от пола и от состояния. Мне сказали номер свободной койки и сказали туда сесть.

Койки все имеют шторку, которой можно закрыться полностью. Но в целом это не помогает. В приёмном отделении нет врачебной тайны. Вы по-любому будете примерно знать, у кого что. Потому что шторки редко закрываются плотно. Потому что разговоры пациентов и персонала всё равно слышны. И потому что...

Заходит врач. Я слышу с ресепшна чей-то голос, "уролог пришёл". Голос не очень громкий. После этого я слышу уже уролога:

"ТАК! ГДЕ ПАЦИЕНТЫ С МОШОНКАМИ? ВСЕ НА ОПЕРАЦИЮ!"

***

Я пробыл в приёмном отделении пять часов. Из них меня обследовали только три. Остальное время я ждал, отпустят меня, прооперируют сразу, или отправят в отделение. Меня отправили в отделение. За мной пришёл очень весёлый медбрат, который хотел увезти меня на каталке. Я сказал, что у меня рука, а не нога, и пошёл сам.

Вскоре после того, как я разместился, привели ещё одного страдальца с такой же травмой. Он рассказал, что в приёмном отделении произошёл один случай, которого я не застал. А может, этот случай был в другой палате?

Женщина лежит на койке, никого не трогает. В это время от вентиляционного люка отваливается решётка и падает прямо на неё. Хорошо, что решётка была пластиковая. Но расслабляться не стоит. Даже в больнице вы не защищены от дополнительного травматизма.

***

Дополнительная история, про мотоциклистов, находится у меня в лошадином канале: t.me/horseswtf/437

@темы: Медицина/Коронавирус, Наблюдения

URL