zHz00 Untitled

пятница, 08 апреля 2022
02:09 Какая система в Жигулях самая ненадёжная?
Не знаю, как у других счастливых владельцев, но у меня чаще всего ломается система дворников. Вот подборка:

-- Срывало саму щётку дворника с рычага
-- Нестабильная работа мотора опрыскивателя, периодически прекращал работать в самый неподходящий момент, замена помогла
-- Неоднократное сгорание предохранителя
-- Отказ мотора самих дворников, оказавшийся обрывом в главной распределительной коробке (есть подозрение, что сгорание предохранителей и последующий обрыв в коробке как-то связаны)
-- Рычаг дворника просто... разломался, прямо на ходу -- и улетел вместе с щёткой.

Хорошо, что отломался рычаг со стороны пассажира. Это позволяло хоть как-то видеть дорогу. Строго говоря, с одним дворником машину эксплуатировать запрещено.

Далее последовали приключения с поиском замены.

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

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

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

В третьем магазине меня послушали, и вынесли ещё один рычаг, но уже за 400 рублей. И о чудо, у него отверстие оказалось правильного диаметра -- на миллиметр больше. Дело было действительно не в износе. Я его сразу же установил, а после этого вернулся в магазин и купил ещё один.

Потому что дворник со стороны водителя может развалиться в любой момент.

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

URL
четверг, 07 апреля 2022
01:32 Указатели
В поликлинике.

-- Вы за кем? Я стояла за женщиной, которая только что вошла.
-- А я стояла ПЕРЕД женщиной, которая только что вошла!

@темы: Викторика

URL
среда, 06 апреля 2022
02:32 Untitled [0712]
Сестра, про коллегу по научной тусовке: "Провалы в осведомлённости она компенсирует высокомерием".

@темы: Викторика

URL
вторник, 05 апреля 2022
03:52 Наука умеет много гитик
Когда в Wordle остаётся последняя попытка, я беру лист бумаги и ручку, а лицо у меня становится как в меме про Пепе Сильвия.

@темы: Восприятие, Игры

URL
понедельник, 04 апреля 2022
03:41 Круговая порука
Вроде весна начиналась, но внезапно пошёл снег, причём началось это не сейчас, а неделю назад.

Я ехал по шоссе днём, и внезапно попал в метель. Видел я вперёд ну... метров на сто, может быть. Или пятьдесят. Передо мной ехала машина со включёнными задними противотуманными фарами. Скорость её составляла около 70 км/ч.

Я оказался в интересной ситуации. Ехать 70 км/ч было довольно опасно уже, поскольку шоссе было всё в снегу. Но ехать медленнее -- это означает упустить впереди едущую машину из виду. Это потеря ориентира. Я остаюсь один на один с 50-метровым отрезком шоссе, дальше которого я ничего не вижу.

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

Короче говоря, я выбрал вариант "довериться водителю". И ничего не произошло. Через 5 километров мы выехали из метели.

Какой вариант был бы опаснее в теории -- я не знаю.

***

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

@темы: Автомобили

URL
воскресенье, 03 апреля 2022
03:13 Чем мне не нравится дарк соулс 3?
Он слишком удобный!

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

-- В важных местах висят фонари. Это вообще что такое? Вы ещё стрелки нарисуйте!
-- Слишком большое число подсказок от разработчиков. "Дальше не ходите". "Чтобы открыть ворота -- погасите три огня".
-- Слишком сильная концентрация НПЦ в хабе. Даже в дс2, несмотря на телепортацию, персонажи часто жили в других местах.
-- Телепортация доступна с самого начала. В дс2 тоже было так. Это делает невозможным интересные ситуации, когда ты застрял хз где, и надо суметь выбраться (я так застревал в Склепе великанов без фонаря, в Нарисованном мире, в Чумном городе).
-- Костров вообще слишком много. Буквально -- пробежал участок, и вот тебе костёр.
-- У игрока мало возможностей попасть куда не следует. Все игроки в дс1 со старта случайно совались на кладбище или к призракам. Тут я не имею возможности так сунуться.

Пока игра всё равно лучшая из трёх. Количество подстав рекордное, боссы сложные. Но. В игре стало гораздо меньше ПРИКЛЮЧЕНИЯ.

@темы: Игры

URL
суббота, 02 апреля 2022
02:30 Персонажи дарк соулс всё время хихикают!
Второй год подряд не делаю специальный пост к первому апреля! Потому что потому.

@темы: Другое

URL
пятница, 01 апреля 2022
04:35 Что охраняю, то и имею
Завхоз решила пошутить. Зашла к знакомому в соседний отдел и говорит ему:
-- Слушай... у меня тут туалетная бумага пропала. Хочешь одолжу?

И тут он как заорёт!
-- Как вы достали со всеми этими разговорами! Гречки нет! Сахара нет! Туалетной бумаги нет!

Не оценил шутку...

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

URL
четверг, 31 марта 2022
01:54 Медкарта
Надо вести что-то вроде дневника по работе с клиентом. Вот продали мы прибор, с нами связывается клиент, чего-то хочет. У нас нет выделенной службы техподдержки, поэтому в зависимости от типа проблемы клиента переводят то к одному, то к другому сотруднику.

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

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

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

@темы: Тухлые идеи

URL
среда, 30 марта 2022
03:22 Untitled [0711]
Мама: Это что ты делал?
Я: Это я куру с картошкой запекал в пергаменте.
Мама: А почему не в папирусе?

@темы: Случай из жизни, Викторика, Еда

URL
вторник, 29 марта 2022
03:01 Новое блюдо
У меня есть планшет, который я использую, чтобы смотреть/слушать ютьюб на кухне. Динамик у него снизу, поэтому когда он лежит на столе -- плохо слышно.

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

Почему пахнет палёным пластиком?!

Срочно убираю планшет -- и понимаю, что я включил не ту конфорку.

Удивительно, но планшет продолжал работать. Однако задняя крышка, увы, оплавилась.

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

URL
понедельник, 28 марта 2022
01:49 Конный кринж
Долгое время я скрывал это от всех, и ещё некоторое -- от многих. Но настало время совершить небольшой каминг-аут.

С осени прошлого года я занялся верховой ездой. Езжу по полям, в компании других таких же чуваков.

В верховой езде много неожиданностей, а также моментов, связанных с самопознанием. Это всё надо записывать, но здесь я про это писать не буду.

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

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

Вот сам канал: t.me/horseswtf

***

Парочка "разгадок":
-- В посте о том, как я терял нож, речь на самом деле шла о езде по Бородинскому полю. Я думал, что выронил нож из кармана из-за тряски. Но потом оказалось, что я выронил нож ещё сидя в машине.
-- В посте о том, как чувак разбил машину, а потом хотел покататься на моей, речь шла об инструкторе-стажёре с конюшни. Про него есть ещё одна история, которую я расскажу позже. Работать он не смог и уволился.
-- В посте о том, как я пытался обогнать снегоочиститель -- я пытался успеть на занятие. Не успел.

@темы: Другое

URL
воскресенье, 27 марта 2022
01:59 Гренадин
Гренадин -- это сладкий ягодный сироп. Он не стандартизован, т.е. если на двух бутылках написано "гренадин", то вы обнаружите очень разные вкусы.

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

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

Когда я распечатал бутылку, я обнаружил, что запах сильно различается. Дегустация дала однозначный ответ: новая бутылка была заплесневелой сразу!

*пингвин кланяется*

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

URL
суббота, 26 марта 2022
06:07 Быстрый и мёртвый
После получения запроса микроконтроллеру нужно сделать две вещи:
1. Ответить на запрос
2. Заняться сложными математическими расчётами

В каком порядке делать эти два действия?

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

Я сижу на другом микроконтроллере и направляю первому запрос. Получаю ответ. Отлично, можно слать следующий запрос. Но не тут-то было. Если слать запросы слишком часто, начала пакетов будут пропадать, потому что когда я шлю очередной запрос -- первый .микроконтроллер всё ещё выполняет вычисления [по некоторым причинам они непрерываемы даже при помощи прерываний].

Поэтому надо наоборот -- сначала доделать вычисления, а потом уже отправлять ответ.

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

URL
пятница, 25 марта 2022
01:50 Плакала половина маршрутки
В алкогольном отделе пятилетний мальчик спросил у мамы:
-- Мама, а водку можно пить?
Мама замялась. После двух повторений вопроса она ответила:
-- Можно, но не нужно.
Тогда мальчик спросил:
-- А можно пить водку каждый день?

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

URL
четверг, 24 марта 2022
00:23 Кёнигсбергский мост, который я хотел перейти
Не каждый человек является начальником склада или разработчиком алгоритмов доставки грузов.

Однако вот какие задачи встают периодически перед каждым:
1. Выйти на улицу
2. Зайти в магазины А, Б, В
3. Посетить учреждения Г, Д, Е
4. Выгрузить/загрузить машину
5. Зайти к знакомым на районе
6. Вернуться домой

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

@темы: Мысли

URL
среда, 23 марта 2022
04:43 Когда оптимизация предусмотрена стандартом
Оптимизация при компиляции часто представляет собой не благо, а проблему. Компилятор на своё усмотрение может выкинуть кусок кода, который счёл ненужным. Да, от этого есть некоторые методы защиты, типа использования volatile, но во многих случаях проще оптимизацию отключить, чем разбираться с её последствиями. Если у вас есть годный гайд по работе с оптимизацией в компиляторах си/си++, сообщите мне, пожалуйста.

Но есть случаи, когда даже с отключённой оптимизацией можно столкнуться с неожиданным поведением.

Один чувак отлаживал программу, и обнаружил странное поведение. Если написать:

if(var||func())//...

то программа работала неправильно. А если написать:

if(func()||var)//...

то программа работала как положено.

Неправильность первого варианта заключалась в том, что в первом случае функция func() просто не вызывалась, что влекло непредвиденные последствия. Причина была проста. Первый операнд операции "или" был истинным, поэтому компилятор не вычислял значение второго, а значит и не вызывал функцию. И правда, зачем тратить время, когда и так уже понятно, что общий результат будет истинным?

И это не оптимизация компилятора. Такое поведение предписывается стандартом. Например ISO/IEC 9899:TC3, пункт 6.5.14 (похоже, это какой-то черновик, но данный пункт одинаков во всех версиях) гласит:

... If the first operand compares unequal to 0, the second operand is not evaluated.

Про "или" я не знал, но я давно знал про такое поведение для оператора "и", поэтому для меня оказалось ожидаемо, что с "или" ситуация аналогична. Что же там говорится про "и"? Пункт 6.5.13:

... If the first operand compares equal to 0, the second operand is not evaluated.

То есть, для оператора "и" второй операнд не вычисляется, если первый оказался ложным. Такой вот подводный камень.

UPD. мне сообщили, что в си-шарп и питоне поведение такое же.

@темы: Программирование, Борьба с техникой, Очевидное-невероятное

URL
вторник, 22 марта 2022
04:33 Система ниппель
Какая-то часть моей одежды пищит на рамках в магазинах. Я никак не могу определить, что это. Уже всё обсмотрел, что мог -- ни одного ярлыка не вижу. Тем не менее, я морально готов к тому, что рамки будут пищать, и что у охраны будут вопросы.

И есть один момент, от которого я испытываю неудобство. ОКАЗЫВАЕТСЯ, рамки различают, в какую сторону идёт человек. И если человек заходит в магазин, то рамки либо молчат, либо моргают красным -- и всё равно молчат. А вот когда выходишь -- начинают пищать.

Ну вот зачем так делать, а? Если клиент пищит, охрана должна быть предупреждена уже при входе, а не при выходе. Да и клиенту, вообще-то, лучше знать это заранее.

@темы: Крик души, Наблюдения

URL
понедельник, 21 марта 2022
05:08 Познание разработчика игроком
Все поставили себе Elden Ring, поэтому я наконец сел играть в Dark Souls 3.

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

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

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

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

Знание этого позволяет либо подготовиться к неожиданности, либо вообще обнаружить её заранее и устранить.

@темы: Мысли, Игры

URL
воскресенье, 20 марта 2022
02:46 Turing Compete! (игра)
С одной стороны можно сказать, что это "игра", но с другой -- это учебник по цифровой электронике и микропроцессорной технике.

Начинаете вы с одного элемента типа NAND (И-НЕ). Далее вам предложат десятки (!) миссий, в ходе которых вам предстоит собрать:
-- другие логические элементы
-- триггер
-- регистр
-- сумматор
-- АЛУ
-- процессор целиком.

А после того, как процессор будет собран, вам придётся его, сука, программировать. Сначала в машинных кодах, а потом на ассемблере.

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

Архитектура второго процессора названа авторами игры LEG. Это почти наверняка является отсылкой к архитектуре ARM, поскольку у них есть определённые сходства. А вот почему первый процессор называется OVERTURE я не догадался. Если у вас есть идеи -- сообщите, пожалуйста. Вот, кстати, что я собрал (кликабельно).
Здесь:
DEST_SEL -- селектор целевого регистра операции
BUS_MUXER_v2 -- определяет, откудать брать входные операнды для операции: из памяти, из регистра, или трактовать номер регистра как константу.
REG_MUXER -- на вход получает все регистры, на выход выдаёт тот, который просят.
INP_SW_v2 -- фактически, является УУ (устройство управления). Подаёт команды чтения/записи в память, в стек, или "внешний вход"
ALU_LEG, ALU_LEG_S -- два АЛУ, один для двухоперандных операций, другой для однооперандных
COND_LEG -- блок условных переходов
STACK_CTL -- блок маршрутизации данных стека



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

А кто ещё может в неё играть, кроме айтишников, близких к железу? Не знаю. На эту игру мало отрицательных отзывов, но те, которые есть, сходятся в одном: эта игра ничему не учит. Вы должны либо догадаться о решении миссии самостоятельно, либо загуглить стандартный метод. Либо вы должны ЗНАТЬ решение, как знал решение для большинства задач я.

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


Если вы соберётесь в это играть, дам два совета, которые вам могут очень пригодиться.

Первый касается ассемблера. Не просто так в руководстве написано, что в командах можно использовать логические (побитовые) операции. Байты команд содержат битовые поля, поэтому если вы соберётесь самостоятельно создавать мнемонические команды (а это вам придётся делать), то если не использовать логические операции, то вам придётся создавать по одной мнемонике на каждую команду. Допустим:
mov_r1_r2 (00-001-010)
mov_r2_r3 (00-010-011)
и так далее. Это крайне неудобно, но на первый взгляд с этим ничего не сделаешь, потому что если поставить пробел, то ассемблер начнёт следующий байт, а указания на регистры расположены в том же байте. Вот для этого-то и пригодится операция "или" (труба, "|").
Назначаем коды:
mov = 00-000-000
from_r1 = 00-001-000
from_r2 = 00-010-000
to_r2 = 00-000-010
to_r3 = 00-000-011

После этого становится можно комбинировать поля в одном байте:
mov|from_r1|to_r2 (00-001-010)

Второй совет касается блоков. Не стесняйтесь выделять отдельные функции процессора в блоки. Это сильно упрощает понимание того, что где расположено. Более того, в задаче The Maze, например, я реализовал поворот робота в лабиринте как отдельный блок, чем сильно сократил программу. Есть, однако, минус: блоки сложнее отлаживать. Если вы обнаружили ошибку, то вам придётся вручную запомнить состояние входов блока, потом открыть редактор и их выставить. Это следовало бы автоматизировать.

@темы: Электроника, Игры

URL