to post messages and comments.

@OCTAGRAM:

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

@OCTAGRAM:

Сегодня заметил, что на 720° картах звук-то по координатам считается, без учёта связи секторов. И монстры агрятся на координаты. На E2L11 в одном месте вход и карта на стене, а на 360° вокруг центра от него — выход, изображение космоса и автоматический уменьшатель. Стоя перед картой, я слышу, как стреляет уменьшатель, вокруг меня ходит недовольный монстр и периодически напарывается на уменьшатель. Но только слышу. Затоптать «невидимку», к счастью, не получается.

Забавно, что могло бы получиться, если совместить перекрытие секторов с зазеркальем. В зазеркалье можно проложить дорогу из секторов, в том числе не через зеркало. Ходить можно при этом только по незеркальным секторам. При этом эти незеркальные сектора отрисовываются с высоким приоритетом, а зазеркальное изображение — по остаточному принципу. Поэтому, если в зеркальном отражении стоит угол дома, а дорога в зазеркалье обходит угол, она через него просвечивает, но тогда можно в самом зазеркалье поставить стены в том месте, где должно быть отражение угла, тогда дорога через такую стену не видна, и вроде бы как это потому что её загородил угол. Редактор BUILD — не NanoCAD, точно всё позиционировать там замаешься, ну или я, когда занимался этим, не осилил. А надо отражение углов точно сделать, высоту пола и потолка подогнать. Сложно, но можно.

И устроить карту, где игрок(-и) ходят как призраки по карте в зазеркалье. Телепорты им поставить, чтоб стрельнешь в них RPG, а вылетело в настоящем мире. Кнопочки понаставить, чтоб давило и стреляло в настоящем мире. Одно и то же настоящее место можно отзеркалить несколько раз. Если плоскость зеркал одинаковая, то и координаты в зазеркальях можно полностью перекрыть. Зеркало в зазеркалье не пробовал. Забавно, если получится сделать, чтоб две части карты были зазеркальями друг для друга.

Насколько мне известно, даже и сейчас на BUILD делают игры, по крайней мере, инди. Клон SCP-087 видел. Может быть, 720° местному ИИ непонятен, но в остальном ИИ достаточно вменяем. Явно лучше, чем у тех, кто первый раз сам делает, и даже не первый, но всё равно попадает на канал к Мармоку.

@OCTAGRAM:

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

@OCTAGRAM:

На местном рынке в отделе корейских салатов часто брал спаржу, ростки сои и иногда даже (1 раз из 15, допустим) бывало соевое мясо (точнее, салат из него). Салат корейцы готовят отлично, если попадается, лучше взять сразу полкило.

Поспрашивав на тему других продуктов, в частности, соевого молока, которое я нигде найти не мог, получил наводку на один магазин на Малахова рядом с депо и на «Метро» (Кэш энд Кэрри). Магазина на поверку давно нет, там только столовая и маленький заставленный наркотой магазинчик с характерным тошнотным душком. А в «Метро» так просто не попасть, документы оформлять нужно. Начать хотя бы с выписки из ОГРНИП. Плюс, на месте я поузнавал, что какого-то веганского отдела там нет, ну и не торопился туда. Было забавно, когда менеджер для уточнения вопроса о соевом мясе позвонила в мясной отдел. Это было месяца три назад.

Неделю назад собрался всё же на разведку, вчера получил свою выписку, оформил документы и получил карточку «Метро». Обнаружил там соевое молоко. Где-то в Бельгии делают. Я вообще какое-нибудь китайское больше бы ожидал, они вроде массово увлекаются. Но китайского не увидел. И обнаружил его в молочном отделе, рядом с кедровыми, овсяными, кокосовыми и пр., а сразу же, буквально на тех же полках правее стоит коровье. Идея обнаружить соевое мясо в мясном отделе уже не казалась такой забавной. Проверил, нету. Где-то среди салатов тоже не нашёл.

Зато нашёл хумус, и это просто победа! Я его первый раз увидел году в 2012м, когда ещё даже не думал, что вегетарианцем стану, в «Терезе» на Георгиева-Павловском, в холодильнике рядом с рыбой и икрой. Даже, помню, специально коллеге возил попробовать. Хумус там через пару месяцев кончился, а сейчас и вовсе этой «Терезы» нет, там сейчас «Ярче». Так с тех пор и не ел. На местном рынке (там же, где и корейские салаты) веганский отдел холодильниками не располагает, поэтому всякую всячину вроде веганских шоколадок с кэробом и пророщенной гречкой там можно раздобыть, а хумус — нет. Ещё, помню, пытался нут (турецкий горох) готовить, ведь хумус из толчёного нута делается. Удачно, в отличие от чечевицы, пока не получалось приготовить самому.

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

@OCTAGRAM:

На фотографиях с Венеры находят какую-то дичь, не менее забористую, чем лицо на Марсе

Также оттуда:
На Венере все горы, кроме горы Максвелл, имеют женские имена.Гору Максвелл заметили давно, а вот потом Венеру изучили получше, в частности, плотность 90 атмосфер, температуру 500 градусов по Цельсию и серную кислоту в атмосфере, и решили, чтоб на Венере было всё женским. Нулевой меридиан ещё назвали Евой.

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

@OCTAGRAM:

Тайна XIX съезда
Съезд этот интересен тем, что, начиная от Хрущева, любую память о нём партноменклатура старалась тщательно уничтожить. При Брежневе начали выпускать стенограммы всех съездов ВКП(б) и КПСС и следующих за ними пленумов ЦК, на которых происходили выборы руководящих органов. Выпуск начали интересно — со стенограмм I-го и сразу ХХ-го съездов партии. А когда издание этих документов довели до материалов XVIII съезда ВКП(б), то на нем печатание стенограмм и прекратили. Почему? Ведь XIX съезд — это публичное мероприятие, парадное. На нём присутствовали делегации всех зарубежных компартий, масса журналистов. Что же здесь скрывать?

@OCTAGRAM:

Почему-то компилятор жутко тупит над производными типами. Вот, например, type TDateTime = type Double. Логично сделать так:

TDateTime(SysUtils.StrToFloat(…))Ан нет, E2089 Invalid typecast. Может, проблема в том, что результат StrToFloat — Extended, а не Double?
TDateTime(Double(SysUtils.StrToFloat(…)))Всё равно E2089 Invalid typecast. Да как же так? Сам ты инвалид!

Что самое удивительное, работает, если приведение типа НЕ ДЕЛАТЬ:
SysUtils.FormatDateTime(…, SysUtils.StrToFloat(…))Вот так компилируется и само приводится сквозь все Extended, Double и TDateTime, хотя я бы сильно не хотел, чтоб число с плавающей точкой случайно могло стать OLE датой/временем.

Ещё это сильно мешает привязки делать. По привычке возьмёшь напишешь type TPluginItem = type Pointer, и начинает тебе компилятор мозг выедать на ровном месте, а на неровном — соответственно, не выедать. Плюнешь, переделаешь в указатель на пустую запись с уникальным именем. Вот теперь получился указатель, который «не похож» на произвольно взятый другой указатель, но, к сожалению, всё ещё похож на указатель, чего лишний раз не хотелось бы, и от чего производный тип должен был спасти. Гипотетически для непохожести можно завернуть ещё дополнительно в запись, но тогда может сломаться работа с внешней библиотекой, ибо Delphi получает запись-результат всегда через дополнительный указатель, даже если она меньше размера двух указателей, как предписано stdcall. И тем более результат с плавающей точкой таким образом не приедет через регистр сопроцессора.

А вот на Аде берёшь и пишешь type OLE_Date_Time is new Long_Float или type Plugin_Item_Type is new Address, и работает это именно так, как ожидаешь. Одно в другое случайно не сконвертируется, а по требованию — всегда пожалуйста, без этих дурацких непонятных ошибок. И, конечно, на Аде, когда пишешь пакет, можно просто написать в публичной части type Plugin_Item_Type is private, и всё, внутреннее устройство для внешнего мира становится непрозрачно. Если нужно, функции конвертации из/в Address можно написать в дочернем пакете, чтоб глаза не мозолило в родительском. А то в Delphi, C и C++ вечно свалка в пространстве имён, хочется закрыться руками от падающих отовсюду в пространство имён гор мусора.

@OCTAGRAM:

По техническим причинам пополнение персонального счета временно недоступно.
Российские сатанисты, продающие статьи за деньги, даже деньги нормально собрать не могут. Sci-Hub не помог. Автор статей год назад умер и в обход системы не пошлёт статью.

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

@OCTAGRAM:

Кракозябры по-английски — Mojibake

@OCTAGRAM:

До чего же пространно указываются схемы подписи запросов на биржах. Во-первых, у каждого свои, во-вторых, постоянно непонятно, как что (де)кодировать, и нужно ли. В Poloniex секрет — очевидно шестнадцатеричная строка, но декодировать её не нужно, а в Cryptopia — очевидно Base64 строка, но декодировать её оказалось нужно. Или sha256 напишут, а потом сиди гадай, это SHA-256 в шестнадцатеричном виде в нижнем регистре или двоично, хотя всё остальное рядом — текст. В Kraken выясняется, что двоично, хотя всё остальное рядом — текст. URL в Kraken — это не то, что вы подумали, а только путь URL, как можно понять, перебрав всякие варианты кодирования/декодирования/некодирования/недекодирования остальных вызывавших сомнения элементов схемы и подсмотрев, наконец, в чужих реализациях.

Увидев в документации Cryptopia такое:
URI: the request uri. e.g. https://www.cryptopia.co.nz/Api/SubmitTradeОбрадовался, подумал, ну хоть что-то написали понятно. Вот, у кого Кракену бы поучиться. И думал я так, пока не запарился пытаться пробиться и не посмотрел опять, как делают другие:
strtolower( urlencode( $uri ) )
Как же вы мне все дороги.

@OCTAGRAM:

На портале онлайн-рекрутинга Huawei поле «текущее место проживания» обязательное, при этом в Российской Федерации нет Алтайского края, да и Новосибирская область ужалась до Новосибирска. Мысли разные полезли, но в Китае Алтайского края тоже не обнаружилось. Попробую ответ на запрос списка городов/областей подменить, посмотрим, как система отреагирует. Будем считать началом собеседования.

@OCTAGRAM:

Мне раньше казалось, что «гравитационная линза» — это такая метафора для слабо связанных явлений. Но при ближайшем рассмотрении оказывается, что законы в обоих случаях имеют одинаковый вид. Просто гравитационный потенциал не скачет резко на доли, а оптически неоднородную среду, напротив, сложно сконструировать, поэтому в первом случае для описания движения ускорение и потенциальная энергия, а во втором — закон синусов и оптическая плотность. Но одно в другое можно пересчитать, отождествив скорости. Кстати, так впервые решили задачу о брахистохроне, кривой скорейшего спуска.

Это с учётом того, что в ОТО время замедляется, но без учёта того, что и пространство искривляется. Я вот сходу не могу ответить на вопрос, становится больше или меньше объём вокруг массивного тела, но вроде что-то должно меняться.

@OCTAGRAM:

Попробовал сегодня удаление матрикса лазером. Хирург поставил местную анестезию, и это была самая болезненная часть. Чего-то откромсал инструментами. А потом работал лазером. Что-то шипело, как будто паяли, но это и недалеко от истины. Сквозь анестезию что-то паршивое пробивалось, а, может, это только кажется, как при фантомной боли. Если не фокусироваться, терпимо. На всё от силы 20 минут, столько времени выделяется на приём.

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

И даже такой метод — всё равно не гарантия, что глючный ноготь не врастёт опять. Глючить — так глючить!

@OCTAGRAM:

Утверждается, что YAML синтаксически — надмножество JSON, и если загнать JSON в парсер YAML, то всё прочитается. На практике получается, что libyaml спотыкается на \/ в строке. Вообще говоря, экранировать прямую косую черту нужно только в HTML, чтоб там </script> ненароком не получился, а если Content-Type: application/json; charset=utf-8, то смысла нет, но некоторые движки на всякий пожарный всё равно экранируют.

@OCTAGRAM:

Памперс или Гагарин?

Комментарий для @Renha и @L29Ah по поводу «забывчивости» неруси. Из книги Ходаков В.Е. Научные школы компьютеростроения: История отечественной вычислительной техники.

@OCTAGRAM:

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

Фашизм в психоневрологии

Наркозависимость есть? А если найду?
Что будет с детьми, если в школе им проведут всеобщее наркологическое обследование, чего-то найдут и направят на «лечение». Что будет с детьми, если родители вдруг на минуту забудут, что живут они уже не в СССР, и отдадут детей на «лечение» от компьютерной зависимости добровольно.

Лечиться от зависимости теперь опасно для жизни

@OCTAGRAM:

3proxy может сильно тормозить, если часть DNS не отвечает. Почему-то он менее остальных серверов приспособлен к таким ситуациям. Либо в настройках по умолчанию 15 секунд — слишком большой таймаут для DNS.

@OCTAGRAM:

Кажется, поймал в живую коллизию. С одной стороны, файл. С другой стороны, папка (хеш от отсортированных хешей файлов). Собрал свидетельства, сделал снимки экрана. По идее, это заодно сведётся и к коллизии для TIGER.

Надо будет независимыми утилитами перепроверить все расчёты. Не врёт ли мне клиент по другую сторону. В ГрейЛинке хеш для папок — устаревшая фича в пользу dcls, я в контекстном меню скачанного списка файлов вижу опции «получить магнитную ссылку» неактивным цветом. Только в поиске по TTH вижу файл и папку вместе.

@OCTAGRAM:

Примечательно, что Youtube-DL способен выкачивать видео, заблокированные в России, без прокси. Сервера ютуба часто рвут такие соединения, надо ключик -R infinite прописать, чтоб ytdl не нервничал. До того, как соединение порвётся, килобайтики успевают пробежать. Процесс успешно завершается в обозримое время.

@OCTAGRAM:

Решил не так давно делать веб-запросы в программе на необновлённом Indy. Кто его знает, этого заказчика, сможет он свежую поставить или нет. Узнал много нового. Оказывается, обычная библиотека OpenSSL к Indy не подходит, потому что там требуются некоторые функции специально для Indy вроде SSL_CTX_set_options_indy. Думаю, раз она в комплект не входит, надо скачать её с сайта Indy. А вот и нет! Где библиотека, где патч, интересные люди, однако.

Полазив по форумам, нашёл такую ссылку. Скачал самую свежую. Не подошло. Методично качал другие версии с конца, потом методом дихотомии, потом тупо взял самую старую версию. Смотрел в ФАРе, есть там эти долбаные нестандартные функции или нет. Нету. Нигде. Заглянул в архив и там прямо явно видно версии с Indy в названии. Наверное, оно. Скачал 0.9.8l. Не подошло. Скачал 0.9.8h. Не подошло. Действительно, если смотреть, что там внутри, то префиксы _indy видать, но это не всё, что нужно. Оказывается, IdSSLOpenSSLHeaders10.pas там не для красоты, и без него не работает. Я ведь хотел, чтоб Indy не пересобирать, думал, на интерфейс к новым функциям можно забить, а оказывается, что там и основной интерфейс переделан, поэтому каких-то нестандартных функций нет. Впрочем, пересобирать весь Indy не пришлось, достаточно было положить только этот файлик под правильным именем в директорию проекта, он заменил собой предустановленный dcu и нормально скомпоновался с остальными модулями.

Потом выяснилось, что хотя в Delphi 2007 версия Indy 10, но если бы я на сайте Indy зашёл в Indy 9, то там была бы ссылка на SSL Support DLL's, а оттуда — на Fulgan. Если б знал, что там всё настолько плохо, попробовал начать с WinInet. Авось его неумение в SNI проканает.