Sergey Matveev [Wed, 2 Oct 2024 21:41:17 +0000 (00:41 +0300)]
Отец реляционных баз данных
https://habr.com/ru/companies/serverspace/articles/847372/
Не знаю отец он или нет, насколько именно его вклад весом, но не знал
что один и тот же человек (Майкл Стоунбрейкер) причастен и к Ingress
СУБД, и к Postgres (Post Ingres), а потом ещё и к колоночной БД Vertica,
с которой в ivi сталкивался и поражался насколько в подобной БД можно
ряд задач на порядки быстрее решать. Как тесен этот мир.
Sergey Matveev [Wed, 2 Oct 2024 20:10:55 +0000 (23:10 +0300)]
Yet Another Codec. YAC is Ain't CBOR
Возня с форматом сериализации данных
(54996a124bd917fbe7a000bfd578030401ab40f2) затянулась ещё на неделю.
Это оказалась ну очень кропотливая работа с тьмой мелочей и постоянных
взвешиваний решений. Речь не только про само кодирование, но и форматы
созданные поверх него, форматы-альтернативные X.509 сертификатам, CMS и
подобному.
Начальство по факту отреагировало вопросом: ну а чем принципиально CBOR
не устраивает? Согласен -- он лучше чем любой ASN.1, наименьшее из зол.
Но в нём два способа кодирования длин (indefinite vs definite), есть
поддержка тэгированных значений. Всё это -- дополнительное усложнение
кодека. Потоковое кодирование упрощает кодирование, уменьшает код. Но
возможно звучит не очень убедительно?
На Wikipedia есть большой список библиотек реализаций CBOR. Я проверил
все Си-шные: ни одна из них не делает хоть какой-либо валидации формата
на тему его детерминированного кодирования. Я взял четыре Go реализации,
среди которых есть хвалящиеся что их используют чуть ли не половина
крупных компаний мира. Ни одна из них не делает хотя бы тривиальные
проверки что тот же integer/length закодированы в минимальном формате.
Дальше я уже проверять ничего не стал. За уйму лет существования CBOR:
проверив кучу реализаций с Wikipedia -- ни одной нет пригодной для
применения в криптографии. CBOR идёт в жопу как вариант для таких задач.
Я не хочу сказать что ASN.1 чем-то лучше: все ASN.1 реализации что я
видел -- в них тоже не все проверки на корректность DER кодирования
имелись. Но, многие хотя бы пытались проводить их! CBOR же создал
впечатление того, что вокруг него только какие-то хипстеры делающие это
всё на коленке. Может быть он просто не для темы криптографии? Возможно.
Видел draft RFC на то, чтобы X.509 сертификаты переложить на CBOR кодек.
Вовсю используются тэгированные значения, но например где поля validity:
просто голые integer-ы UNIX timestamp-ов. Причём многие библиотеки CBOR
что я видел -- не поддерживают тэгированные значения. То бишь... или не
полностью такие сертификаты будут декодированы, либо не декодированы
вовсе. Лень уже было разбираться.
После этого, начальство одобрило попытку применения YAC-а в ряде
проектов. Я долго думал над названием, но ничего лучше чем "Yet Another
Codec", "Yet Another enCoding" не пришло. А потом ещё увидел, что это
можно и как "YAC is Ain't CBOR", с которым я в первую очередь делаю
сравнение.
Также одобрили его публикацию как свободный проект. Пока настолько нет
времени, что руки ещё не доходят, но yac.cypherpunks.su уже вот вот
появится.
Написал реализации на Си, Go, Python (фу, бе, как же почти физически
неприятно было на нём писать, уже аллергия на этот язык). Тестов пока
нет, но есть тестовые вектора, которые у всех у них должны совпасть.
Когда пишешь на Си или Go, то понимаешь насколько он прост или не прост
выходит. А также какие решения по кодированию стоят или не стоят того.
Но вот пока со всем этим возился, то хотелось какой-то инструмент, чтобы
можно было написать "LIST[INT(123) STR("привет")]" и он бы мне выплюнул
YAC-закодированное представление этих данных. Хотел было написать штуку,
которая на вход бы приняла JSON, а на выходе YAC. Но в JSON нет
datetime, нет UUID, плюс дифференциации между разными integer-ами и
float-ами.
И вспомнил про Tcl. На нём у меня по сути только один проект написан, на
полтора экрана кода. Больше я для этого языка применений хороших пока
ещё не находил (ну кроме Tk). А очень хотел. И вот почти ничего не помня
из этого языка, за несколько часов у меня готов YAC encoder. Я могу
написать:
и у меня будет сформирована структура со всеми этими словарями,
списками, разными числами, TAI64-датами и прочими вещами. Вовсю это
использовал, жутко доволен насколько легко это получилось сделать и
удобно мне было с этим работать. Формировать произвольные структуры
в Си или Go -- не так тривиально быстро.
Сам кодек YAC-а уже по сути заморожен. Вообще никаких планов что-то
менять. Сложно сравнивать сложность реализации кодека для него и для
CBOR, но из-за отсутствия тэгов и только применяя потоковое кодирование
-- YAC должен быть попроще. Сама спецификация кодека для него --
считанные страницы. Во многих случаях его формат будет покомпактнее чем
у deterministic CBOR.
Понимаю что многовато форматов данных наизобретено. Но реально
schemaless онных -- не так уж и много. Чтобы детерминированно
кодировались, чтобы можно было в криптографии применять -- ещё меньше.
CBOR шёл правильной дорогой, имел правильные цели, но мне кажется что
они как-будто резко не туда свернули и пошли по пути усложнения формата,
причём не решив проблему с передачей datetime объектов. Делали, делали,
но не доделали. Плюс запрещают потоковое формирование при использовании
детерминированного кодирования.
YAC же, кроме форматов поддерживаемых JSON-ом (как бы он мне не
нравился, но хотелось бы иметь возможность прозрачно его заменять на
более быстрый/компактный кодек, как это можно сделать с MessagePack и
BSON), ещё имеет datetime (в виде TAI64[N[A]]), UUID, int-ы вплоть до
int128, float16 -- float256, бинарные строки. Что покрывает массу
возможных контекстов применения.
https://jmmv.dev/2023/07/ldd-untrusted-binaries.html
Оказывается, ldd загружает программу как процесс, выполняет её, а уж
потом печатает чего там в памяти linker-ом загрузилось. В man-е
GNU/Linux и написано, что его нельзя применять для недоверенного кода.
В man FreeBSD тоже явно сказано, что он запускает исполняемый файл в
дочернем процессе.
https://blog.init7.net/en/overbooking-how-providers-divide-up-the-bandwidth/
Показывают как скачкообразно повышается ping и задержки, если через
каналы провайдера домашние пользователи ломятся слишком активно. На этой
неделе у себя как-раз наблюдал такое: то ping-и в пределах 8-10мс, а то
фигак и на два порядка больше могут стать. Через какое-то время, ни с
того, ни с сего (я вообще компьютеры не трогаю, грубо говоря), снова
возвращается назад.
https://www.securitylab.ru/news/552424.php
Отказ от практики регулярной смены паролей. Убрано требование иметь
спецсимволы в них. Абсолютно поддерживаю данные рекомендации, ибо они
просто вредны при использовании парольных фраз -- единственного чего
стоит применять.
А то что-то их маловато, конечно же. Вообще всё началось с вопроса:
какой формат есть пригодный для криптографии (где детерминированное
кодирование данных бы было), при этом как можно более простой в плане
реализации, при этом бы ещё и довольно компактный по получающемуся
бинарю. И сразу откидываем форматы требующие схему. Я не против них,
protobuf мне нравился, они компакты, быстры и эффективны, но это тот ещё
геморрой работать с ними в действительно гетерогенных средах, где не всё
под твоим контролем, когда не всё касается твоей экосистемы. Ну и
хочется чтобы им можно было бы заменить, грубо говоря, JSON -- то есть
достаточное количество типов данных бы поддерживал.
Изначально я смотрел на мои любимые Netstring-и. Думал из серии: пускай
это будут только NS-ы, вложенные друг в друга, пускай где-то
интерпретируемые как пары из ключ-значение, и всё в таком духе. Да, сам
кодек будет простой, но после него ещё нужно делать постообработку, в
которой по сути тоже будет вшиваться схема что дальше надо и как
декодировать.
Смотрел на bencode, который тоже использовали на работе, прелесть
которого в детерминированном кодировании (если не забывать про
дополнительное требование к integer-ам). Большим минусом bencode точно
можно назвать неотличимость человекочитаемых строк от бинарных.
Насколько понял, это же было основной причиной создания fork-а от
MessagePack в виде CBOR. Если мы хотим без схемы декодировать
произвольные данные, то да, декодировать то сможем, но всё же
переваривать это глазами человеку уже будет проблематично. Различие
между UTF-8 и чисто бинарями обязано быть.
И мы с коллегой и CBOR формат строго также не хотим иметь дело с ASCII
decimal значениями, которые в NS/bencode для кодирования длины. Они
несут определённое удобство, безусловно, но всё же в условиях написания
кода для смарт-карт каких-нибудь -- это слишком лишний код и не очень
компактное использование места, особенно учитывая частоту использования
строчек. В криптографических форматах например вообще нет integer-ов
(serial в X.509 сертификатах -- анахронизм от которого надо бы
избавляться).
Поэтому начали думать в сторону замены этих decimal на бинарные
представления. Не один день ломал я голову и переделывал то так, то сяк.
И только после этого снова вчитался в CBOR. Изначально я его отбросил
из-за его заметки в самом начале RFC, о том что он прям явно не
собирается блюсти детерминированное кодирование данных, что нас не
устраивает. Потом я всё же увидел раздел про Canonical CBOR, как-раз
решающий эту проблему. В общем всё это время мы почти изобретали CBOR.
Прежде я к нему надменно относился -- мол, очередной хипстерский формат.
Но поменял своё мнение -- я сам пришёл к очень и очень похожему формату.
Даже подумал чтобы просто использовать (Canonical) CBOR. Но... нет. В
нём есть опциональные (многие кодеки не реализуют их поддержку) тэги
прикрепляемые к данным. Выглядит интересно, но нам точно не хотелось бы
с этим иметь дела. Это избыточно в данном кодеке. Но это мелочь. А что
серьёзно не понравилось: именно Canonical CBOR не позволяет потоково
формировать объекты. Он как ASN.1 DER -- везде должна быть заранее
известна длина. Я же хочу как бы аналог ASN.1 CER, где по сути
SEQUENCE*/SET* имеют indefinite length, плюс все бинари представлены в
виде indefinite length, после которой идут килобайтные фиксированные
кусочки данных, где только последний может быть меньшего размера,
закрывающим. В Canonical CBOR потоковости нет. Плюс в моём получившемся
кодеке может выходить более компактное представление integer-ов и строк
недлинных. В моём кодеке я явно поддерживаю как просто строки, так и
потоковые blob-ы. Если потоковость не нужна, то можно использовать
непрерывные бинари как и прежде.
Понравилось, что и я и CBOR отметают variable length кодирование чисел,
где высшим битом показывается есть ли у него продолжение. Это ужасно
неудобно декодировать. И это более сложный код. В моём кодеке код по
идее должен быть не сложнее, а скорее проще из-за отсутствия тэгов.
Преобладающая часть данных в нём, для аналога всяких X.509/PKCS#7 нужд
кодируется вообще без затрат на байты отводимые под длину. Он ощутимо
компактнее ASN.1 DER/CER. Его реализацию кодирования/декодирования с
валидацией я за пару часов на Python реализовывал. По сути он компактнее
CBOR, должен быть чуть проще в реализации. Его спецификация сильно
проще: ибо по сути есть ровно одна таблица расписывающая все возможные
значения первого байта и как дальше после них парсить данные, почти
всегда известной (по значению типа данных) длины. Исключение, как и в
CBOR -- строки, которые у меня можно до 59-байт без дополнительных
байтов на длину закодировать, тогда как в CBOR всего-лишь 20 с чем-то.
Я добавил (ну по сути забронировал значения для типов данных) и
128-битные integer и float256, ибо для них уже есть спецификации. Чисто
на будущее.
В отличии от CBOR, JSON, MessagePack и кучи других -- я добавил
TAI64(N(A)) поддержку в качестве datetime базового типа. Регулярно при
использовании любых форматов сериализации -- приходилось добавлять
поддержку datetime для удобства. Я убеждён, что TAI64 формат (ну и его
TAI64N и, чисто для галочки, TAI64NA) более правильным для хранения
времени. Преобразовать из него в UTC -- легко. Зато не надо парсить, в
отличии от каких-нибудь ISO-строк, которые ещё и существенно длиннее.
Мне казалось, что, в принципе, это не сложное дело спроектировать
бинарный формат-аналог JSON (очень грубо говоря). Но если хочется и
компактности и эффективности и простоты, то оказалось не раз приходилось
и так и сяк его переделывать.
Но на мой взгляд, вышло очень здорово. Настолько здорово, что даже если
начальство не одобрит его применение вместо ебучего говёного уродского
мерзкого ASN.1 DER (тем более BER), то я всё-равно других задач буду
использовать. Изначально предполагалось только для криптографических
задач. Например не предполагались null/nil/none значения. Как и float.
Потом добавил из-за тривиальности. А потом я вижу, что из-за
компактности представления даже integer-ов, его вполне себе вообще для
чего угодно произвольного использовать. Хотя прежде надо реализовать на
Си, но я уже видел как это не сложно делают для CBOR-а.
Я даже добавлял такие отдельные типы данных как UUID и IPv4/IPv6 адреса.
Ибо они фиксированного размера. Но потом всё же решил убрать.
Кодирование любого из них тоже будет занимать всего 1-байт избыточности.
По сути это выходит как просто подсказка как интерпретировать эти
бинарные строки, для чего тэги в CBOR могут использоваться (сказать что
это URI, а не просто так строчка, например). То есть остались базовые
для всяких языков программирования типы, плюс TAI64* (который по сути
тоже же ведь бинарная строка фиксированной длины, но datetime уж очень
часто нужен много где).
Но из-за отсутствия схемы, в его структурах уже придётся помнить о
длинах ключей в словарях. Один коллега как-то говорил, что когда
начнутся однобуквенные ключи в словарях, то это уже пройденная граница
адекватности. С одной стороны -- верно. Но с другой вот есть словарик:
"sig": {"algo" "gost3410-256A", "v": b"..."}
ведь по контексту тут точно понятно что "v" это value, значение подписи.
Вместо OID-ов мы все однозначно за использование человекочитаемых строк.
Даже просто использование "id-tc26-..." названий OID-ов уже было бы куда
лучше, пускай и немного поболее места займёт. Вместо "notBefore" я бы
использовал "since", вместо "notAfter" -- "till". Коротко и ясно.
Кроме длин ключей ещё придётся помнить про то, что они при кодировании
должны быть отсортированы. Поэтому если надо, чтобы в потоке данных
что-то шло раньше из словаря, то надо имя ключа делать лексикографически
"меньшим". Но это уж сущие мелочи, по сравнению с удобством от
отсутствия схем.
Выступление Grima на швейцарском Black Hole Fest V
http://www.heavymusic.ru/news/32227/
https://www.youtube.com/embed/OsXM4-miORI
Внезапно, но россиян из Красноярска всё же пустили в западную страну.
Наши клёвые black metal-исты выступили на Black Hole Fest V. Они недавно
и контракт с Napalm Records подписали и сейчас в туре колесят. В октябре
тоже на них собираюсь в Москве.
https://github.com/pgul/binkd
https://huskyproject.github.io/
https://github.com/golded-plus/golded-plus
https://github.com/askovpen/gossiped
Решил таки я всё же посмотреть вновь на Фидо, в котором был ~20 лет
назад в последний раз. binkd собирается, софт из состава проекта husky
тоже (ну я только базовый, плюс hpt с msged). GoldEd даже можно собрать.
Но... ни один редактор на практике не заработал. GoldEd просто выходит.
Судя по truss-у даже не понимаю почему -- как-будто просто штатно это
заложено в его программе ничего не делать дальше. msged запускается, но
потом виснет и ни на что не реагирует. Возможно можно mapping-ами
поиграться его keybinding-ов, но готовых для FreeBSD и современных UTF-8
терминалов не нашёл. gossiped проект, написанный на Go, даже
запускается, даже позволяет что-то прочитать из эх, но при попытке
написать сообщение, а точнее при попытке его сохранить -- падает с
паникой. И я и пытался менять форматы баз в hpt и ещё всякие шаманства,
но всё равно падает.
Кроме того, я так и не смог нигде получить ответа на вопрос: собственно,
это всё вообще может работать под Unicode терминалом то? А то, похоже,
что всё же заточено под работу под однобайтные, где KOI8-R например.
Собственно, под FreeBSD 20+ лет назад я так и использовал всё это.
Понимаю что придётся перекодировать KOI8-R↔CP866, с этим сталкивался, но
про UTF-8 ответа нигде нет. Среди современных руководств по
использованию и введению в FidoNet, речь только про web-based решения и
вообще для смартфонов. Это конечно же, не вариант. Плюс backend софт
регулярно вижу написанный на JavaScript.
https://github.com/fmang/opustags
opusenc форсированно любит сувать ENCODER комментарий в производимые им
файлы. Не то чтобы это много места, но меня раздражает лишняя ненужная
метаинформация. Убрать можно "opustags -D" командой. К сожалению, она не
в штатном составе opus-tools, а сторонний проект.
Про производство/устройство Li-ion батарей и встраивание взрывчатки
https://www.bunniestudios.com/blog/2024/turning-everyday-gadgets-into-bombs-is-a-bad-idea/
Процесс создания Li-ion батарей относительно не дорогой и доступный.
Встроить взрывчатку -- тоже не большая проблема, в отличии от
возможности её определить. Террористическая страна в мире N2 открыла
ящик Пандоры и показала как можно вести терроризм подрывая договорённости,
ожидания и доверие в обществе (собственно, это же и отличает терроризм?).
https://www.securitylab.ru/news/552203.php
Пишут, что ранее считалось, что такие атаки невозможны против Tor.
Вообще-то, всегда, с самого начала появления сети, было известно, что,
как раз таки, против этой атаки Tor бессилен и ничего не делает для
защиты, кроме как стараться выбирать узлы из разных автономных систем.
Ну и в лучшем случае, дополнять сообщение до 512-байт, насколько помню.
Это одна из причин, почему я не верю что Tor это там про анонимность и
всякие благие цели. За 20+ лет существования, он ничего не делают для
усиления защиты от мощных злоумышленников. Это исключительно сеть для
обхода цензуры, для всяких там сепаратистов в странах вне США.
Цифровые подписи и как от них избавиться. Подписи Шнорра
https://neilmadden.blog/2024/09/18/digital-signatures-and-how-to-avoid-them/
Замечательнейшая статья про то, как люто злоупотребляют таким примитивом,
как асимметричная подпись. В огромном кол-ве случаев это избыточно и
добавляет кучу головной боли, проблем и потенциальных уязвимостей, тогда
как можно куда более простыми способами осуществить (особенно)
интерактивные протоколы.
А также рассказано про устройство подписей Шнорра, которые так элегантно
просты и понятны.
Сакис Толис будет доволен если прослушают полностью весь альбом
https://www.youtube.com/watch?v=hW_Fv-zwbIg
Его очень удручает, что сейчас люди перестали слушать музыкальные
альбомы, только одиночные трэки. Для него уже большая часть и радость,
его ему сообщат, что слушают его альбом от и до.
Я никогда, абсолютно никогда не останавливал его альбомы, только
прослушивая целиком и полностью. А как иначе? И да, они "делают мой
день".
Выглядит приятным человеком, ибо честен и полностью отдаётся своим идеям
и тому во что верит.
Использование IDENTITY типа вместо SERIAL в PostgreSQL
https://www.naiyerasif.com/post/2024/09/04/stop-using-serial-in-postgres/
Не то чтобы я разбирался в СУБД, но всё равно стыдно, что я совершенно
не знал про IDENTITY. Пишут, что масса причин где он лучше себя ведёт
чем SERIAL, который (точнее BIGSERIAL) я по привычке продолжаю использовать.
https://lenta.ru/news/2024/09/18/nazvan-samyy-razdrazhayuschiy-millenialov-i-zumerov-sleng/
Для начала, мне пришлось пойти в очередной раз искать кто такие
"миллениалы" (это я, как оказалось) и "зумеры", ибо вообще в голове не
удерживается кто есть кто.
Миллениалов раздражают:
* "краш" -- впервые слышу. Crush? Но даже и не хочу знать к чему в
очередной раз используют иностранное слово (если это так)
* "кринж" -- слышал, жутко не нравится. Нет наших слов?
* "лойс" -- вообще не знаю что такое, не слышал
* "зашквар" -- на работе как-то объясняли этот тюремный жаргон. Зачем
использовать тюремные жаргоны? Впрочем... я и сам не редко цитирую
"Джентльменов удачи" с их словечками
* "шер" -- чего? Тоже не слышал, чёрт знает что это
Им нравятся:
* "вайб" -- вроде бы слышал или где-то в статьях встречах, но мне снова
придётся лезть в словарь чтобы понять что это значит. Почему по
человечески нельзя сказать?
* "база" -- ммм... база? Я видимо не в теме где это слово используется?
* "пруф" -- похоже я и сам иногда употреблял это слово, но точно вне
всяких сомнений в контексте работы, заменяя "proof" по время
вербального общения. В текстовом виде никогда не напишу ничего
подобного
* "изи" -- люто бесит это слово. "Легко" -- это так сложно?
Зумеров раздражают:
* "нормис" -- впервые слышу/вижу, хз что такое
* "альтушка" -- где-то встречал, даже помню что это такое. Говно, а не
слово, по степени неприязни
* "глэк" -- что это? Опять же не встречал, не подозреваю что
* "симп" -- чего???
* "ливать" -- WAT???
* "кринге" -- я сдаюсь. Как-будто обезьянки просто генерируют наборы звуков
Зумерам нравятся:
* "вайб", "база", "краш" -- уже было выше
* "бэсти" -- то бишь "busty", пышногрудый, грудастый? Я только в
порнографии это слово встречал
* "мэтч" -- match? Даже не представляю в каком контексте могло бы
использоваться это слово, если речь не про программирование. Видимо,
что-то другое
* "муд" -- мудак, мудя ещё знаю. А тут "mood"? Совсем русский начали
забывать?
Пишут, что зумеры чаще не понимают слэнг. Ну так конечно, если у нас
прям соревнование по придумыванию всякой херни. Мир соцсетей это прям
всё более далёкая от меня экосистема и мир. О чём ни на йоту не жалею.
Не забуду про "шипперить" (4cf766670eaa6ab7eb0a5fb06609ac60fb777772) и
про "райс" (d73e406f07ab9df35eab080ccf9a30cb2420349f). Зато я застал во
всей красе тему про холодильник (f5b1ebddf811eb35d626d63e80a8c7830c9c097c).
Про курочку Рябу тоже, но мне это и тогда и сейчас не кажется смешным.
Распознавал (46e4d23a23a10eb1c05e5a20f0ceeebd5ff31016) тут один подкаст
на английском языке, но нечаянно указал "ru" whisper.cpp-у
(94cf819e49d4e1f78279ef001bd2a9556b8004f3). И как оказалось, он вообще
начал его переводить. Вот уж чего не ожидал, ведь среди опций была
только --translate translate from source language to english.
https://habr.com/ru/articles/844124/
Забавно было почитать. Честное слово, но когда я прочитал вопрос "Зачем
нужны ТВЭЛы в реакторе РБМК?", то у меня сразу странное чувство
появилось... странности. Как написали ниже, действительно, в РБМК, про
который я читал не мало, ТВЭЛов нет. А у меня чувство странности, видимо
от того, что я не встречал упоминания этих двух терминов вместе.
Впрочем, я считал все виды стержней для реакторов ТВЭЛами.
А в ivi меня спрашивали про эффект кавитации. Но я про него знал.
Вспомнилось собеседование из фильма "Постал":
- Назовите ваше самое большое достоинство
- Я прекрасно работаю в команде
- Не верно!
- Назовите ваш самый большой недостаток
- Слишком много работаю
- Не верно!
- Расскажите, как вы свернёте гору с помощью ложки
- Ложки?
- Если бы вы были ограничены, опишите мышление без границ
- Эээ... ну это... если...
- Не верно! Последний вопрос. В чём разница между уткой?
https://www.securitylab.ru/news/552104.php
https://dxdt.ru/2024/09/15/13904/
Люто бесит когда пишут лютую бредовщину, как-будто выдумывая всё на ходу.
"Устаревший алгоритм Kyber уступает место..."
В каком это месте Kyber уже успел устареть?
"совмещающим устаревший алгоритм X25519 и постквантовый алгоритм Kyber"
В каком это месте X25519 уже успел устареть?
Грамотная новость, как пример, по второй ссылке. Между ML-KEM и Kyber
почти нет технических отличий (ну, конечно же, кроме как ослабления).
Конечно же отличается идентификатор для TLS протокола.
Или я чего-то не углядел в документации к less, или нет простого способа
пропустить текущую длиннющую строку. Всякие пробелы, "j" команды --
проматывают виртуальную часть настоящей длинной строки: делается wrap,
который разбивает настоящую строку на множество по ширине экрана.
Результаты grep-а могут выдать файлы состоящие из одной строки, но
мегабайтных размеров.
Пока нашёл только такой способ: прямо в интерактивном режиме выполнить
"-S", чтобы включить chop опцию и обрезать длинные строки. Засада в том,
что там, где я находился прежде, станет одной длинной строкой и будет
включён горизонтальный scrolling. Если перейти на другие строки (j/k),
то я их не увижу, так как горизонтальный scroll находится где-то там
далеко от их конца. И тут надо нажать Esc-{, чтобы scroll вернуть на
первый символ строки. "-S" позволяет делать toggle, так что можно
вернутся в прежний режим снова.
https://lenta.ru/news/2024/09/15/ekspert-nazval-alternativy-telegram-v-rossii/
Серьёзно, эксперт считает, что альтернативой могло бы быть поднимание
собственного федеративного решения? Админов которые бы это могли
провернуть -- с гулькин нос. Кто мог, уже давно поднял.
Мы можем говорить о таких изначально защищенных мессенджерах, как
Element, Jabber и Briar...
Это в каком это месте Matrix и XMPP являются защищёнными? Не, очевидно
у всех разное понимание что такое "защищённый", но XMPP как бы не про
защищённость (не говорю что её там нельзя достичь).
Да и что такое "Element"? Нет такого IM-а. Есть Matrix, где Element --
всего-лишь один из его клиентов.
Ну и кроме того, я уже не считаю XMPP (Jabber) возможным глобальным
федеративным решением, ибо на практике вижу, что многие серверы хотят
чтобы напротив ИХ точек доверия проверялись сертификаты серверов. И,
конечно же, это только США/НАТО доверенные. Многие не будут общаться по
plaintext протоколу, fallback невозможен. Все эти решения возможны
только на корпоративном уровне.
В 194bca6d16cdf98274580aad5714ad8e286fdd0c упоминал BitTorrent v2 и то,
что github.com/anacrolix/torrent не качает v2-only торренты. Вчера
поставил пример сабжевого торрента из блога libtorrent, а сегодня утром
обнаружил, что он таки скачался. Так что как-то, но всё же v2 работает.
Хотя у меня seeder-ом не получилось ничего раздать, но может что-то не
уследил в своих настройках/сети.
В этом торренте много всяких творений с демосцен. С удовольствием
посмотрел их. Всё же здоровский это фетиш для глаз! Снова вспомнил про
Mind's Eye (f8e17220d2c45effc0f48124a6cc85c5d1913c4f).
Третью ночь у меня бессонница и расстройство пищеварения. На всякие
нервные переживания у меня такая реакция регулярно (экзамены (когда-то),
свиданки (когда были)). Но не ожидал, что не будет отпускать столько
времени, хотя ведь вероятность отказа, понимал, что будет высока.
В 18 лет, когда впервые гулял с девушкой, три дня почти не ел, после
того, как меня отшили (заявили, что мне, небось, только постель нужна,
после чего я слиняю -- от чего офигеваю до сих пор, неужели создаю такое
впечатление?). Под конец, я на 10-15кг (не помню уж точно) похудел со
своей бывшей.
По поводу нервных переживаний: кто-то как-то спросил, что наверное и
на собеседования на работу аналогичная реакция? Вовсе нет. Никогда не
переживал, когда ходил на собеседования. Видимо, хоть какая-то
уверенность в своей квалификации имеется, поэтому и спокоен.
https://blog.libtorrent.org/2020/09/bittorrent-v2/
https://github.com/anacrolix/torrent/issues/175
https://en.wikipedia.org/wiki/Comparison_of_BitTorrent_clients
Начал посматривать в сторону использования BitTorrent v2 торрентов, ибо
от последнее что остаётся штатно с SHA1. Кроме основного изменения в
виде замены SHA1 на SHA256, в нём используются деревья Меркла, листья
которых могут прозрачно использоваться в самом BitTorrent протоколе, с
16 KiB кусочками. Кроме того, для каждого файла отдельно строится это
дерево, прозрачно добавляя между файлами padding файлы, что существенно
упрощает обновление торрентов и использование перемежающихся данных.
Также в нём более строгий bencode, без двоякого интерпретирования
некоторых случаев (типа leading zeros у integer).
Поддержка в разных библиотеках и клиентах, особенно популярных, уже
более менее хорошая. Хотя под "поддержкой", судя по задаче в
github.com/anacrolix/torrent, говорит про то, что разное
подразумевается.
Поддержка в этой Go-шной библиотеке пока ещё в прогрессе. Можно добавить
торрент, проверить его, оно всё не падает, но вот скачивать его (как
минимум, v2 only) не удаётся. Но, похоже, что бОльшая часть работы уже
проделана.
libtorrent/examples утилитами можно сделать как v2 only, так и гибридные
торрент файлы. Теперь начну делать гибридные, хоть их размер и ощутимо
больший.
https://soatok.blog/2024/09/13/e2ee-for-the-fediverse-update-were-going-post-quantum/
Хорошая статья поясняющая что именно необходимо делать для того, чтобы
использовать PQ-устойчивыми алгоритмами.
https://lists.gnupg.org/pipermail/gnupg-announce/2024q3/000485.html
Теперь (214287599168cd5eca2e2b7bd49f7666778433cc) GnuPG уже в штатном
режиме поддерживает постквантовую криптографию, а точнее Kyber/ML-KEM.
Добавил в свой основной ключ ещё и ky768_cv25519 подключ.
Знаю что по умолчанию GnuPG предлагает Kyber-768 с Brainpool-256
эллиптическими кривыми. Я не нашёл причины почему не используется
cv25519, ну кроме удобства Для Коха, который немец, а это всё
используется их немецкими госорганизациями, не признающим NIST-овские
эллиптические кривые. Поэтому сделал Kyber+25519.
Теперь у меня и TLS почти для всех исходящих соединений использует
X25519Kyber768Draft00 (59894d5d7e31354f5b7225cb82811246827778bc), и
OpenSSH уже давным давно использует Streamlined NTRU Prime, и теперь вот
GnuPG. Пока вот только штатная Go-реализация age ещё не поддерживает PQC.
WireGuard, при использовании PSK, в принципе устойчив к квантовым атакам.
Родители уезжали в отпуск, собак оставив мне. Почти две недели с ними.
Муха второй раз у меня. Первый раз поносила, волновалась. Сейчас же как
будто никакой разницы между моим домом и родительским. Отлично ели,
гуляли, не ссорились, спали только со мной. Обожаю их!
Из-за отсутствия железа, я так и не поиграл в HL Episodes. Точнее один
начал, но дальше там глюки (9b041b1dd9ff14a0eb311083cb4013ad0baa97fb)
из-за которых дальше не пройти. И, будучи любителем, исключительно
адреналиновых Quake 3 или Unreal Tournament, никогда не любил
Counter-Strike.
https://habr.com/ru/articles/842962/
Сказано же, что на 256-ой день года. Но программисты и люди тут совсем
запутались и вот недоумевают: то ли 12/13 сентября, то ли 13/14-го.
Maniac Mansion со всеми комментариями, секретами и концовками
https://www.youtube.com/watch?v=5CEf52NBSoQ
В a0e355d62a95945486bf996c582380db1caf4a2d я сказал, что в сабжевую игру
не играл. Но решил "пройти" по YouTube-у. Исключительно потому, что
знаю, что там большая реиграбельность, поэтому, не проверив всё, я бы не
считал что её закончил.
Очень здоровская игра, продуманная и интересная. На фоне остальных,
которые в то время существовали, понятно почему она так выстрелила.
https://habr.com/ru/companies/first/articles/842076/
Статья о том, чтобы вспомнить программистов из фильмов. Перед тем, как
её открыть, попытался вспомнить каких я видел. В голову только Томас
Андерсон из Матрицы пришёл. Потом вспомнил про жутко часто упоминаемый
"Хакеры" (bb765d36d72954efb52dee3c302f3d8416415a2c), но это такая туфта,
что делать вид, что типа там якобы какие-то программисты/хакеры были --
не смогу. А вообще я только половину фильмов из этого топа видел.
В прошлом месяце после разговоров с разными близкими людьми, после
отпуска в Новосибирске, у меня появились сомнения: а может быть я всё же
как-то не совсем адекватно оцениваю себя и женщин? Была не была, но
вчера решился сделать давно обдумываемое предложение выйти за меня. С
которой я не один год знаком, не ровно дышу и мысли/мечты о возможной
семье с ней посещали регулярно. Ответила, что нужно время на обдумать.
Сегодня получил отказ. Так что, мои оценки и ожидания остаются всё так
же корректны, я не заблуждаюсь. Даже полегчало, ибо подвешенные вопросы
"согласится или нет?", "возможно ли это или нет?" отвечены и не терзают.
https://www.youtube.com/watch?v=4R-fjYEBN2w
Вот это самые самые мои любимые игры. Я правда так и не поиграл в первый
Maniac Mansion. Dig -- скучная фигня, как по мне. Про Labyrinth что-то
не в курсе. Но всё остальное -- непревзойдённое по юмору и отлично
проведённому времени.
https://soatok.blog/2024/09/10/invisible-salamanders-are-not-what-you-think/
https://eprint.iacr.org/2020/1491
https://www.youtube.com/watch?v=3M1jIO-jLHI
https://crypto.stackexchange.com/questions/87771/key-committing-aeads
Страшные вещи творятся в мире криптографии: оказывается, популярные AEAD
режимы типа AES-GCM или (X)Salsa20/Chacha20-Poly1305 могут быть небезопасными
в некоторых протоколах. Так как возможно сделать несколько ключей, для
которых MAC сообщения будет вполне себе корректным. И это можно
использовать и для атаки на IKEv1+PSK, OPAQUE, PAKE, Shadowsocks,
Kerberos, age, JOSE, HPKE.
https://tmendez.dev/posts/rng-git-hash-bug/
Меня не много что противет больше, чем YAML формат. Вот и тут у людей
урезанный хэш Git коммита, вставленный в строчку без кавычек, внезапно
превратился в большое число и всё пошло наперекосяк. Можно представить,
как мне когда-то не понравилось письмо в NNCP рассылку с предложением
использовать YAML вместо Hjson, ибо же он является де-факто стандартом
например в ansible, puppet, cloud-init и широко распространён. Это
просто ещё одно доказательство того, что популярные технические решения
часто бывают не вразумительными и не адекватными. Причём меня удивляет
больше то, что все эти ansible/puppet зачастую используются не столь
квалифицированными кадрами, у которых вероятность ошибки, из-за
некорректного типа данных YAML, будет выше.
https://www.youtube.com/watch?v=puK-kHBxGE0
https://www.youtube.com/watch?v=Gt9tWO0Zaxo
Уже второй человек за сутки мне упомянул про одного комментатора и его
работу с турниром по тетрису. Оказалось, что в 2019-ом я уже смотрел его
(aa317f7ddfd0a59bd9827b44a61a295daafddfd9). Но сейчас другой чемпионат
посмотрел. Как же, действительно, он захватывающе, интересно и забавно
комментирует!
Буквально за последние пару дней увидел, что "Wildeberries" стал "WB".
А "Tele 2", "Т2". Коллега сообщил, что Тинькофф банк стал Т-Банком. Это
типа люди настолько деградируют, что эти уже слишком длинные слова для них?
https://habr.com/ru/companies/flant/articles/840448/
Пишут про его технические преимущества. А для меня SourceForge сам себя
убивал планомерно (163277f837f264ad47cc4f8f7952ff599244bcdf). Ведь все
мои проекты там изначально обитали. История с тем, что они меняли
собранные бинари и подкладывали туда рекламу. Потом они уничтожили
возможность подписываться на рассылки (без исполнения закрытого кода) и
скачивать их архивы. А рассылки это же основа основа взаимодействия!
Впрочем... GitHub вообще этого не предлагает. Но сам факт стремительных
изменений из-за которых просто толпами валит народ с платформы.
Sergey Matveev [Sat, 31 Aug 2024 05:58:45 +0000 (08:58 +0300)]
PQC для не криптографов
https://keymaterial.net/2024/08/30/pqc-for-non-cryptographers/
Отличная статья популярно расписывающая что это за новые
стандартизованные NIST-ом постквантовые алгоритмы KEM и подписи.
С пояснениями про размеры и производительность.
Sergey Matveev [Thu, 29 Aug 2024 09:27:20 +0000 (12:27 +0300)]
Включение X25519Kyber768Draft00 для TLS 1.3 в Go
https://www.ietf.org/archive/id/draft-tls-westerbaan-xyber768d00-03.txt
В Go 1.23 появилась поддержка постквантового согласования ключей для TLS
1.3, используя Kyber-768 с X25519. GODEBUG=tlskyber=1 может это включить.
Размер ClientHello при этом довольно внушительного размера становится,
запросто не умещаясь в один TCP сегмент.
Sergey Matveev [Wed, 28 Aug 2024 19:36:25 +0000 (22:36 +0300)]
Журнал "Подводная лодка"
Как-то раз в детстве мне подарили один из номеров сабжевого журнала.
Очередной журнал на тему ИТ. Смутно помню что там было, но для меня
маленького, конечно же, было интересно.
На одном из BitTorrent трэкеров нашёл его подборку. Наобум открыл из
номеров (1998-07). Есть раздел про "бесплатное" программное обеспечение.
Оказалось, что там просто дичайшая лютая мешанина из "свободного", "open
source" и бесплатного. Всё это как синонимы используются. Ужас.
Полистал, напоролся на раздел про "MPEG-3". Оказалось, что это про
"MP3". Правильно вообще-то "MPEG(-1) (Audio) Layer-3". MPEG-1, MPEG-2,
MPEG-4 -- это про видео. MPEG-3 по сути не было. Ужас.
В одном из разделов сказано что "Tcl -- язык скриптов, аналогичный
JavaScript". И, как оказалось, Sun (!) создала его (!) для написания
пользовательских интерфейсов под "X-Windows" (!). Ужас.
В следующем номере журнала появился раздел про "LINUX" (в котором
говорится, что Sun Solaris это клон (!) "UNIX"). Почти к каждому
предложению я мог бы делать face-palm и яростно критиковать. Ужас.
В одном из разделов посвящённых архиваторам, заголовок "архиватор или
протокол V.29bis"? Я думаю "что за V.29"? Знаю про V.42bis, который про
компрессию данных. Про него же они и сами в предыдущем номере упоминали.
Внутри секции речь только про V.42bis, никаких 29. То есть в заголовке
просто от балды набранный номер.
А ведь тогда вполне себе нравилось читать подобные журналы.
Sergey Matveev [Tue, 27 Aug 2024 13:45:44 +0000 (16:45 +0300)]
Где я уже не в теме IPv4
С multicast адресами на практике я работал только в IPv6. Вообще проблем
и неожиданностей у меня не возникало. Коллега упорно продолжал использовать
IPv4. А у меня вообще ничего на IPv4 multicast адресах не завелось, ничего
не работало должным образом. Явно о чём-то не осведомлён, что-то
недопонимаю в нём. Да и чёрт с ним, с этим legacy протоколом! Даже не
собираюсь голову ломать как там пользоваться multicast-ом или что за
загвоздки на моей системе с ним. Но когда люди считают, что если типа
хоть что-то знаешь в IPv6, то автоматом это и подразумевает IPv4 мир --
конечно же не правда, ибо, как минимум, IPv4 банально сложнее.
Sergey Matveev [Tue, 27 Aug 2024 07:38:11 +0000 (10:38 +0300)]
Безопасность Telegram
http://www.cypherpunks.su/FAQ.html#Telegram
https://www.securitylab.ru/news/551491.php
https://dxdt.ru/2024/08/26/13764/
https://dxdt.ru/2024/08/25/13731/
https://lenta.ru/brief/2024/08/25/voenkory-durov/
https://blog.cryptographyengineering.com/2024/08/25/telegram-is-not-really-an-encrypted-messaging-app/
https://blog.thc.org/keep-pavel-durov-locked-up
Вся новостная лента завалена новостями про арест Дурова.
Давным давно известно, что Telegram имел безграмотный алгоритм
шифрования, да ещё и с backdoor-ом по сути (тема про роль сервера в
DH-обмене). Позже вроде что-то поменялось и возможно он уже не настолько
безнадёжно плох (хотя и прежде эпитетами Apple заявляли об ультимативной
защищённости протокола). Он постоянно наезжает на Signal и просто
обманывает людей об уровне своей безопасности, где E2E ещё надо явно
включать. Дуров своими выходками не раз показывал что является моральным
уродом. Но его театр с якобы руганью с ФСБ и уездом из-за этого из РФ, я
считаю отличной пиар-акцией. Если же это не так, то это тем более
говорит о Дурове как о гнилом человеке. Бесчестность, лживость и
гнусность -- вот бизнес-план и реклама этого IM-а.
А вот то, что наши вояки его активно используют -- это конечно же
удручает. С одной стороны, наверное только ФСБ и может читать всю
переписку этого IM-а. Возможно давление на Дурова никак её может и не
вскрыть (если его решения не могут контролировать серверы). А может и
может. Поэтому наших чиновников и вояк просят удалить всякую историю,
которая всё равно на серверах останется?
Безусловно, если выбирать между WhatsApp, Telegram, Viber, то для
граждан РФ выбор всё равно будет в пользу Telegram. Просто ничто из
этого не относится к безопасным IM-ам и выбор идёт между лицами кто
будет тебя читать/слушать.
Sergey Matveev [Mon, 26 Aug 2024 08:50:13 +0000 (11:50 +0300)]
Dozer -- Rust на чистом Си
https://notgull.net/announcing-dozer/
Автор понимает важность bootstrap-а и поэтому решил написать Rust на Си.
А то ведь изначальные версии Rust вообще на OCaml были написаны, который
тоже, в свою очередь, написан сам на себе. mrustc у меня на FreeBSD так
ни разу и не собрался. Если будет вменяемый работающий bootstrap для
Rust, то это сделает уже хоть какую-то допустимость наличия Rust в ОС.
Sergey Matveev [Mon, 26 Aug 2024 05:17:15 +0000 (08:17 +0300)]
Таська с камешками
Наша собака Тася где-то научилась притаскивать камешки нам для обмена.
На ручки её поднять или угостить -- она сбегает за маленьким камешком,
принесёт, положит перед тобой и давай просить поднять/угостить её. Тётя
говорит, что как-то утром, слышит кто-то скребётся в дверь входную.
Открывает, а Таська перед ней кидает камешек и без лишних вопросительных
взглядов бежит к ней на кухню.
Sergey Matveev [Sun, 25 Aug 2024 17:32:08 +0000 (20:32 +0300)]
Остаток отпуска
Провёл на даче с родителями и собаками. Ничего не делал, только валялся
с собаками, ел, иногда смотрел телевизор вместе. Даже книг не читал.
Один день покатался на велосипеде. На велосипед я не садился наверное
минимум пару лет, но выбрал как никогда длинный маршрут. Всего-то, судя
по карте, где-то около 40км. Но у велосипеда не поднимается выше
сиденье (ноги прямо не распрямляются), что было основной причиной жуткой
усталости после такой поездки. Но вновь отмечаю как здорово на
скоростном -- прям качественно по иному. На нём всего три скорости, но я
почти всю жизнь на односкоростных ездил.
Sergey Matveev [Tue, 20 Aug 2024 17:22:48 +0000 (20:22 +0300)]
День рождения музея Дмитрия Бачило
https://16-bits.ru/museum/
Собственно, в Новосибирск (523de9e716dc866f5cf49758a524156de84e427d) я
ездил в первую очередь ради празднования полутора лет музея
ретрокомпьютеров и игровой техники Дмитрия Бачило. Год не праздновался
из-за занятости Бочи и это глухой зимой бы проходило.
Музей находится в институте вычислительной техники. В прошлом посте есть
ссылка на фотографии, на фоне которого я и запечатлён. В нём появилась
первая нода FidoNet в СССР. Не в какой-то Москве, а в Академгородке
Новосиба!
Кроме двух штатных помещений музея, ещё были открыты три других
вместительных, где размещались вкусняшки, вода, чаи, сидячие места.
Народу было не мало. Мы с мамой на глаз не умеем оценивать количество
людей, но наверное не меньше сотни.
В одной из комнат были установлены четыре компьютера, объединённых в
сеть, с ЭЛТ мониторами, наушниками и мышками. Там устраивали deathmatch
по Doom 2 без остановки. В другой комнате с массой ЭЛТ телевизоров и
игровых приставок были матчи по Mortal Kombat. На улице установлены
колонки, здоровый ЖК телевизор и две гитары для Guitar Hero, где тоже
проходили соревнования. Победители получали футболки с музеем.
Был показ очередного выпуска "Кремниевых титанов" (46) -- мы первые кто
его увидел.
Прикоснулся к куче Amiga, Commodore 64, SGI Octane, Sun Microsystems
железу. На одной из Sun рабочих станций поиграл в Quake 2.
Конечно же, сфотографировался с Дмитрием. Он заценил мою "классную
футболку" (по его словам). Её я для особых случаев берегу, а тут прям
идеально в тему, ведь на ней же тоже, по сути, ретро-компьютер.
Сообщил, что приехал из Королёва. А он отвечает, что к нему уже кто-то
из РКК Энергии (из Королёва) приехал! Вот какова вероятность, что в
Сибирь полетят из одного из областных городов, аж два независимых
человека (строго говоря, минимум три, так как я же с мамой был)? Видимо,
наукоград это не просто так, а повышенная концентрация вот таких вот.
Где-то через 1.5-2 часа вынесли торт, в честь ДР то. Это должно было
быть полтора торта. Поэтому вместо одного большого были части какодемона
из Doom! Которых Боча попытался порезать пластиковой электрической
бензопилой (как в Doom). Потом правда притащили нож, ибо пластик не брал
мастику какодемонов. Выложили на поднос с пентаграммой и свечами по
углам. Забавно придумали :-)
До самого конца мы там не стали засиживаться и ушли прежде. Там какая-то
музыкальная программа должна была быть ещё.
В общем, я очень доволен этой поездкой. И как самим Новосибом, так и
музеем, в который мои немалые средства вложены, так и самим праздничным
мероприятием. Мать не планировала со мной в него ехать, ибо ей не
интересно, лучше отдохнёт. Но ближе к делу передумала. И Боча ей
понравился. И особенно, что у всех на лицах улыбки. И маленькие дети с
родителями и большие 40-50 лет дядьки. Все консоли постоянно заняты
кем-то, ничего не простаивает. Молодёжь рассматривает каждый уголок
музея.
Sergey Matveev [Tue, 20 Aug 2024 15:22:02 +0000 (18:22 +0300)]
Побывал в Новосибирске
http://www.stargrave.org/images/202408-NSK/1.page.html
Наконец-то совершилась долгожданная поездка! Билеты были куплены
заранее, когда я решил (b9213c9adc216169c73fa3e0e2feb79b3b6d1e5e) уйти в
отпуск. Но буквально за пару дней я слёг с каким-то недугом.
Расстройство пищеварения, температура и всё в таком духе. Поездка, как и
первые два дня, прошли на всяких таблетках. Благо, потом отошёл. А то и
вообще боялся, что придётся всё отменить.
Позвал и маму с собой, чтобы и она город посмотрела, и вдвоём всё равно
веселее. Но делом принципа было чтобы всё можно было оплатить наличкой,
никаких там банковских карточек. Забронировать отель, оказалось, можно с
оплатой на месте.
Город очень понравился, как и вся поездка! Большой, современный (хотя
некоторые это как недостаток могут воспринимать, ибо мало старых
исторических мест), чистый, опрятный, уютный.
С погодой нам везло почти все дни. Ни разу не попали под дождь.
Синоптики обещали проливные дожди всё это время. Было либо ночью, либо
утром. Первые два дня было очень жарко и постоянно в испарине. Дальше
стало полегче, похолоднее. Много (большинство?) людей в одежде с длинным
рукавом -- сибиряки, собственно? Мы же обливались потом.
Почти всё время ездили на метро. Побывали на каждой станции, выходя
наружу. Лишь одна экскурсия в Академгородок была на машине, и дорога в
аэропорт на автобусе. Многие советовали чуть ли не за 2-3 часа заранее в
него выезжать из-за возможных пробок. Но ни разу не попали в них
абсолютно нигде, чему удивлялись все водители. Тоже тут везло. В
Академгородок ездит удобная отличная электричка.
В первый день, когда совершенно не спали ночью, решили сразу пойти в
зоопарк. На троллейбусе туда легко доехать. Действительно, он огромных
размеров! Точно больше московского. Здорово там. Однако... в Москве всё
же ощутимо больше разнообразия. Хоть и теснее. Мишки там вовсю играли.
У нас только белки могли бы выйти к людям и сновать не боясь между ними.
Там же ещё и много бурундуков. Прям вот выбегают и требуют жрачки.
В течении следующих двух дней гуляли по городу и музеям. Побывали в
краеведческом, в том числе его филиале "физика". В художественной
галерее, где была также выставка на египетскую тему. В галерее Рериха.
Посмотрели все архитектурные достопримечательности. Их колоссальнейшего
размера театр! Набережную с мостами.
Чисто случайно увидели музей связи Новосибирска. Где я получил массу
удовольствия! Столько всяких штук для связи, как ушедших в своём времени
(модемы, пейджеры), так и современных. Ну нравится мне весь этот фетиш!
Большая часть моей жизни посвящена ведь всему, что касается связи.
Импульсивно я предложил в один из дней прогуляться снова по набережной.
Как оказалось, там был большой концерт с Олегом Газмановым. Мне то
конечно пофиг на него, но де факто вот побывал. И как здорово же
посмотреть на столько людей (тысячи!) в атмосфере выходного дня и парка.
Один из дней был посвящён единственной цели поездки в Академгородке.
Туда мы поехали на электричке, что удобно. Погуляли, посмотрели как
живут и работают все эти академики. А прямо на станции расположен музей
железнодорожной техники. От паровозов, до современных электровозов с
разношёрстными по предназначению вагонами.
На следующий день отправились снова в Академгородок, но уже экскурсией.
Захватив и Обское море, и ГЭС и ботанический сад и ещё несколько
достопримечательностей в городе. Я думал, что ГЭС это нечто потрясающее
по размерам, но ихняя только город и обслуживает и вау-эффекта не
производит. Зато посмотрели на хоть какую-то ГЭС в своей жизни. В
Академгородке побывали и рядом с НГУ (здание в форме храма-ракеты), где
относительно не мало людей учатся. Мне кажется, что чуть ли не четверть
всех знакомых программистов были из Новосибирска. А вот из того же
Санкт-Петербурга -- никого. В Академгородке были и рядом, с
запоминающимися своим видом, "гусями", где тьма конференций проходит.
Экскурсоводом был длинноволосый студент. Увидев мою футболку с slamming
brutal death metal-ом из Питера, показал свою в тему. Говорит, что в
Новосибе, к сожалению, по пальцам посчитать death/black метал групп,
поэтому и мой вид им в новинку.
В один день там был "яблочный спас" -- какой-то праздник православный.
Наверное я впервые в жизни услышал не унылую, а реально клёвую игру на
колоколах в церкви в этот день. Как-будто метал-ударника пригласили и
вместо палочек выдали верёвки. Заменить некоторые удары барабанами,
добавить электрогитары перегруженные -- отличный метал бы вышел,
Batushka (838470253d160abd85e5d3f0c5bcb8daad3c93d6) будут отдыхать.
Аэропорт красив. Буквально через пару минут после захода в него, не
попав ни в одну пробку, начался не просто ливень, но и с градом, который
барабанил по крыше. По ночам видели как мерцают у них молнии. Мне
показалось, что грозы у них куда более лютые.
Что там было прям совсем сибирского? Да вот ничего, к сожалению. Своей
кухни они и сами говорили что нет. Хотели зайти к бурятам, но не вышло,
не по пути. Своя природа? Да всё идентично нашей. Возможно количественное
соотношение деревьев иное, возможно больше лиственниц каких-нибудь, но
разница не заметна.
Темп жизни у них явно более медлительный чем в Москве. Хотя с ней вряд
ли какой из городов РФ сравнится, конечно же. Люди вроде бы более
сдержанны, спокойны. Но возможно всё из-за темпа.
А вот что и мне и маме было заметно: женщины там отличаются. Я прям
точно сказал бы, что в целом они более красивы. Мать говорит, что наши
выглядят дороже. Ну да... накладные ресницы, надутые губы, татуировки,
вообще непойми какая одежда, особенно показывающая почти всё -- это всё
дороже, но оно уродует, отталкивает, только уменьшает привлекательность.
Концентрация хорошеньких, без выкрутасов, красивых девушек и женщин, в
не-оторвать-глаз платьицах -- там зашкаливала. Может быть нам
показалось? Вернувшись в Москву, разница снова ощутима!
Я боялся, что там будет много невзрачных новостроек, типа спальных
районов. Боялся, что будут раздолбанные улицы и грязь. Боялся, что это
всё не то чтобы приятное впечатление оставит. Но всё совсем наоборот.
Однако, возвратившись в Москву, ещё больше офигеваешь уже от неё, от
исполинских размеров, на несколько порядков большего количества
достопримечательностей, от развитейшейго транспорта (в Новосибирском
метро всего 14 станций, две ветки, одна пересадка). Новосиб здоровский,
но Москва на его фоне ещё больше впечатляет.
Sergey Matveev [Tue, 13 Aug 2024 09:55:57 +0000 (12:55 +0300)]
Ценность чувства юмора, посмотрел третий сезон Теории большого взрыва
Не было в планах, ибо двух мне достаточно, да и многие говорили, что
дальше уже не так там здорово. Но мне прям вообще ничем не охота
заниматься за компьютером и поэтому решил позволить себя guilty pleasure
(коллега научила этому словосочетанию, ох уж эти женщины :-)).
Дальше смотреть ТБВ не буду точно. Ибо по сути мне весь третий сезон не
понравился. Да, были забавные места, но... целые эпизоды там были скучные.
Однозначно мог бы не советовать этот сезон, в отличии от первых двух.
У Говарда на какое-то время появилась девушка. Некоторым женщинам, с кем
это обсуждал, он неприятен и омерзителен. Я же ему симпатизирую и сам,
как мне кажется, был таки же озабоченным. Но его девушка -- это просто
ужас. Когда в реальной жизни люди говорят, что оно из самых главных в
человеке это чувство юмора, то я не то чтобы всерьёз это воспринимал. Но
девушка Говарда -- прям ярчайший пример того, что ничего не сможет
компенсировать её отсутствие чувства юмора. Она чуть ли не физиологически
вызывала неприязнь и хотело бы, будь это в реальной жизни, держаться
подальше от потенциальных разговоров с ней. И никакой сну-сну не смог бы
компенсировать. Тут я Говарда не мог бы понять.
Много стало какой-то мыльной оперы в этом сезоне. Темы ревности и
отношений. И это мне не очень приятно было смотреть, ибо это уже не то
чтобы забавно, плюс пережито на собственном опыте. В куче серий то одна,
то другая шалава. Какие же это задроты и ботаники? Им лет сильно меньше
чем мне, но относительно регулярная постель имеется, а они всё плачутся
по этому поводу. Да и, судя по разговорам, и проституток не чураются.
Но вот эпизод про то, как Леонард познакомился с Шелдоном -- очень
понравился! Только его и стоит посмотреть из всего сезона.
Sergey Matveev [Sun, 11 Aug 2024 12:27:25 +0000 (15:27 +0300)]
BGP роли
https://ripe85.ripe.net/presentations/3-20220824-wt-RFC9234-RIPE85.pdf
https://habr.com/en/companies/qrator/articles/710420/
BIRD поддерживает RFC 9234, в котором BGP участники могут назначать себе
роли (provider, customer, RS, RS-client, peer) и их BGP демоны автоматом
будут фильтровать протёкшие маршруты.
Попробовал в домашних условиях. У меня же по сути есть мой центральный
сервер (provider), а все остальные являются его customer. А второй
сервер с моим компьютером имеет peering. При этом экспортируют они все
2000::/3 маршруты. Задав все эти роли, действительно, увидел, что
маршрут до провайдера через peering соединение отбрасывается.
Sergey Matveev [Sun, 11 Aug 2024 11:43:47 +0000 (14:43 +0300)]
Web-browser по русски
https://ru.wikipedia.org/wiki/Web-browser
Я долгое время писал (web-)"броузер". Большинство пишет "браузер", но
мне не нравится как оно выглядит и привычка берёт верх. Где-то увидел
сочетание "web-обозреватель" и оно так понравилось, что решил недавно
использовать именно его. Страница на Wikipedia окончательно подтвердила
корректность этого выбора, ибо она тоже предлагает этот вариант перевода.
Sergey Matveev [Sun, 11 Aug 2024 11:27:25 +0000 (14:27 +0300)]
Ввод текста в терминале
https://habr.com/ru/companies/ruvds/articles/834780/
Автор пишет, что ему понадобилось 15 лет, чтобы привыкнуть к
Ctrl-A/Ctrl-E для перехода в начало/конец строки. А я вот даже
и не знаю что это за Ctrl-A/E. Если так не нравятся эти сочетания
из мира Emacs, то зачем себя насиловать?
Он много чего критикует. Типа есть несогласованность между разными
программами. Какие-то программы не поддерживают стрелочки, типа cat, nc.
А с какой стати они должны? Это *не* интерактивные программы. Автор
хочет странного. Но, благо, упоминает rlwrap например.
Он пишет, что являясь пользователем Vim-а, удивляется сочетанием клавиш
в Readline. Поколение людей, которые даже не пытаются читать
документацию. Не нравятся Emacs сочетания? Ну так включи Vi-режим
редактирования в этом Readline или libedit! Любая POSIX-совместимая
оболочка тоже поддерживает как Emacs, так и Vi способы редактирования. У
меня абсолютно везде Vi-режим, поэтому я никогда не пользуюсь Ctrl-A/E
или подобным. Конечно, если документацию не читать, то жизнь будет
сложнее и труднее из-за разных предпочтений людей.
Не раз упоминает про работоспособность стрелочек. Если умеешь
пользоваться Vi-режимом, то зачем и где нужны эти стрелочки? А даже если
и хочется их понажимать, а появляются крякозябры, то зачастую,
действительно, проблемы уже могут быть с терминалом, а точнее с
рассогласованностью настроек всей его экосистемы. Тут да -- это всё тот
ещё геморрой и страшное legacy. Но настроив один раз, годами не
сталкиваешься с проблемами.
Плюс зачастую программы позволяют вызывать внешний редактор. Что psql,
что всё что использует readline например. Популярные web-обозреватели по
умолчанию (в отличии от lynx или xombrero) не умеют редактировать свои
поля ввода в внешнем редакторе, но для них есть плагины для этого.
Sergey Matveev [Sun, 11 Aug 2024 08:47:34 +0000 (11:47 +0300)]
Изучая HTML и Интернет в 1996
http://82mhz.net/posts/2024/08/learning-about-html-and-the-internet-in-1996/
Автор просто демонстрирует книжку из далёких 90-х, где про HTML
рассказывается. Также отметил раздел с предсказаниями:
The rise and rise of the PC, with ever more functionality, leads to
the prediction that with even higher chip integration, thin screens
and lighter power supplies (not yet invented) people will be able to
carry pocket-calculator-size machines with which they can access
information sources and draw on unlimited computing power, using
digital radio links, supported by satellite if necessary, from
anywhere in the world. At the other end of the scale it is argued,
with equal logic, that if computing power, decentralized to nodes
and servers, becomes plentiful and cheap, then the terminal carried
or used by an individual can be as dumb as they used to make them.
If so, it is argued in return, then there will be the problem of
safeguarding the personal information and the programs stored
outside the individual's control.
Оба предсказания сбылись: у нас есть суперкомпьютеры, даже работающие со
спутниками (LTE и Starlink намекают), с гигабитными скоростями доступа к
Интернету, но при этом они остаются в общем-то тупейшими устройствами
для удалённого доступа к службам в "облаках" (а современный web
настолько жутко тяжёл, да).
А у нас в 90-х была книжка "Internet for dummies", где рассматривался, в
том числе, и Lynx броузер. И вот до сих пор я его тоже продолжаю использовать.
Sergey Matveev [Sun, 11 Aug 2024 08:20:08 +0000 (11:20 +0300)]
Время сборки Signal
Так уж вышло, что на фоне его блокировки в РФ, в рассылке FreeBSD
спросили почему он так долго собирается. Говорят, что на современном
ПК это может занять 36 часов. Ведь совсем недавно писал про убогость
(a8bd780832dab15e67ea5d73b28875d293212ab3) современного софта.
Sergey Matveev [Sat, 10 Aug 2024 22:03:36 +0000 (01:03 +0300)]
DEFCON24 срачи
https://old.reddit.com/r/Defcon/comments/1ep00ln/def_cons_response_to_the_badge_controversy/
https://www.entropicengineering.com/defcon-32-statement
Осматривая новости, увидел какой-то срач касающийся DEFCON-а. Перешёл
по ссылке где выражено мнение компании, которая в этом сраче с DEFCON
участвует. В первом же абзаце:
Entropic Engineering was approached in January ‘24 by the DEFCON
Badge Team, who were looking for a small company to partner with.
They expressed that they specifically wanted to work with us as a
woman-owned, queer- and POC-driven engineering firm to develop an
electronic badge with a gaming element for this year’s conference.
DEFCON выразил желание работать с ними, именно потому что компанией
владеет женщина и там работают педики? Всё остальное прям почти
физически противно читать уже. Что за безумие на этом Западе творится?
А потом ещё удивляются почему какие-то недопонимания и тёрки случаются с
компаниями, которые они выбирают по чему угодно, но не по профессиональным
техническим критериям. Омерзительно.
Sergey Matveev [Sat, 10 Aug 2024 18:20:47 +0000 (21:20 +0300)]
Интернет дома работает менее чем наполовину
Дома перестал ходить трафик (даже ping) до моей VPS-ки обеспечивающей
IPv6 доступность. С другой VPS, с рабочей машины -- всё прекрасно ходит.
tcpdump-ом вижу, что ICMP пакеты уходят наружу, но не доходят по VPS-ки
(на неё через промежуточные хосты зашёл).
traceroute на всех трёх машинах показывает совершенно разные пути.
Причём из дома оно пытается идти через Акадо. Не встречал его в наших
путях прежде. Домашний провайдер что ли как-то свои uplink-и поменял?
Так что пока сижу без IPv6. Большая часть Интернета недоступна, как и я
для неё.
Sergey Matveev [Sat, 10 Aug 2024 17:53:42 +0000 (20:53 +0300)]
Снова смена OSPF на BGP
Ради переключения контекста и отдыха, решил снова повозиться с тестовым
кластером на работе, который когда-то (c7e63aec647725b80611c735b34f39474888c6cc)
настраивал стажёр, где был поднят OSPF в стойке. Решил сделать простейшую
задачу: подключать двумя Ethernet хвостами (не только одним) серверы в
коммутатор, чтобы OSPF автоматом понял что есть несколько путей и появился
бы failover (а то и ECMP).
Был уверен, что OSPF весь из себя такой умный и легко сможет понять, что
если он слышит через коммутатор себя самого, то значит просто двумя
хвостами подключён. BIRD пишет сообщения что получен плохой пакет с
таким же идентификатором маршрутизатора как и у него. И как бы типа в
общем-то всё работает, но... маршрут постоянно прыгает и меняется то на
один NIC, то на другой. Так что на практике ничего не работает.
Пошёл к сетевикам, спросить это либо я криворукий, либо от OSPF многого
хочу, либо ещё чего. Говорят, что OSPF такое не дюжит, действительно.
Облом. Удручён. Ну не хочу я с L2 связываться, ибо нефиг.
Додумался только до того, чтобы BGP поднять на них, ибо он уже
point-to-point и коммутатор ему не помеха. Неприятно с ним то, что нет
autodiscovery и нужно прописывать номера автономных систем. Но это мелочи.
Избавился и дома от OSPF, снова, просто ради практики. Но с появлением
10GbE мне надо чтобы трафик до второго сервера, пускай даже с
дополнительным hop-ом, но ходил через 10GbE соединения. В OSPF я это
решал добавляя руками стоимость каналов. А в BGP такого нет. MED
например имеет меньший приоритет чем проверка длины AS-пути.
Вариантов как поменять приоритетность маршрутов в BGP -- масса. Возможно
я творю ещё большую дичь, но пока сделал так: для каждого интерфейса
(WAN, 1GbE или 10GbE) применяется export фильтры, который добавляет
один из трёх community, типа метка по какому каналу он приходит. А в
import фильтрах, если среди community есть только та, которая с меткой
10GbE, то priority увеличивается. До одного и того же хоста мой
компьютер может дойти напрямую через WG туннели поверх 1GbE, через WG
туннели до промежуточного сервера, с которого снова либо через 1GbE,
либо через 10GbE соединения до сервера. В общем, много путей. Но только
тот, кто проходит исключительно через 10GbE, будет иметь ровно один
нужный мне community.
Вроде работает всё как надо. До управления приоритетами в этом BGP, у
меня на одном хосте могли быть выбраны маршруты через один интерфейс, а
на другом через совершенно другой и трафик шёл вообще асимметрично.
В DN42: https://dn42.eu/howto/BGP-communities
community используются чтобы помечать и скорости и задержки и уровень
безопасности каналов между хостами.
Sergey Matveev [Thu, 8 Aug 2024 10:14:41 +0000 (13:14 +0300)]
Go linters
В Python я использовал много linter-ов. pep8, pycodestyle, mypy, pylint
и ещё какие-то. И многие из них приходилось настраивать, ибо что-то
сильно шумит, что-то я не считаю стоящим внимания, и т.д..
В Go же я просто использую staticcheck
(f1d82ecfdd6e17d41af5661a0dee479d7749293f). И нашёл я его когда искал
что-то, что могло бы сказать о deprecated вещах, которые я продолжаю
использовать, а также о ненужных "_" переменных.
Кроме него, у меня, собственно, gopls LSP сервер и Vim с ним работающий.
Вчера заметил, как он выдаёт предупреждение о логически не имеющим смысла
коде типа:
if err != nil {
...
if err != nil { }
}
Я не понимаю как я годами программируя на Go, не задавался особо
вопросом linting-а. Я знаком с golint, помню его дикое количество
проверок и что там многое надо настраивать, чтобы уменьшить шум и
Google-specific предпочтения, поэтому для меня его запуск это какая-то
боль, которую я и не делаю. Видимо, это просто язык/компилятор так
хороши, что и без linter-ов можно жить.
Но LSP показал, что там много интересных онных. Но gopls не использует
чего-то хитрого или своего -- он просто переиспользует родные средства
из golang.org/x/tools/go/analysis. В нём включены почти все, но не все.
Среди крайне приятных и интересных оказался
golang.org/x/tools/go/analysis/passes/shadow, который показывает где
какая переменная "оттеняет" (err, как правило) предыдущее её
определение. Этого мне точно не хватало прежде! Я не раз допускал ошибки
из-за этого оттенения, в том числе в Си. Есть какая-то доля случаев,
когда это осознанный и явный шаг, ради удобства, но их мало. Поэтому в
идеале, даже если это ничему и не мешает, но всё же избавляться по
возможности от этого оттенения. /shadow чётко говорит на какой строке
кто кого оттеняет.
/fieldalignment анализатор говорит насколько компактнее можно сделать
поля в структуре. Безусловно я в курсе, как и в Си, о возможном padding
после полей, но в Go я редко задумываюсь об его оптимизации. Но нередко
не помешало бы. Причём, он не только может сообщить о возможной
оптимизации, но и самостоятельно выполнить её, чтобы не ломать голову. В
tools/go/analysis/passes/fieldalignment/cmd/fieldalignment можно собрать
команду, которой передать fieldalignment -fix ./....
Обожаю, что в Go нередко встречается подход как в suckless проектах,
как в моём web-сервере (bc087ee7e3be4177e83bc39ae3b1497e336ec5da),
встраивания настроек прямо в сам исходный код программы. При любом
изменении надо будет её перекомпилировать, да. Поэтому для штатных
(golang.org/x) linter-ов в Go нет какой-то программы с YAML/JSON/whatever
конфигурационным файлом. Всё делается очень просто:
а дальше эта программа используется вместе с vet:
go vet -vettool=/path/to/that/linter ./...
А ещё я в gopls увидел упоминание mvdan.cc/gofumpt утилиты для
форматирования кода. go fmt хорош. goimports, который я на самом деле и
использую -- ещё лучше, так как почти полностью заставляет забыть о
возне с добавлением/удалением import-ов. Но gofumpt полностью закрывает
все потребности перфекциониста. Например:
var (
foo = ...
)
он преобразует в: var foo = ...
var foo = ...
var bar = ...
наоборот в:
var (
foo = ...
bar = ...
)
Добавит или удалить пустые строки между функциями, где go fmt ничего не
делает. "foo int, bar int" заменит на "foo, bar int". Даже закрывающие
скобочки может детерминированно подправить, как надо.
Или вот все Python программисты которых я видел -- так себе программисты
и поэтому у нас в Python экосистеме всё всегда было плачевно касательно
автоматического форматирования. То ли это просто Python такой дряной. Но
Go почему-то легко закрывает все хотелки моего внутреннего
перфекциониста. Даже в Си всё очень здорово с clang-format-ом, вообще
про форматирование не думаю, кроме как константных таблиц.
Sergey Matveev [Thu, 8 Aug 2024 09:51:35 +0000 (12:51 +0300)]
EVS кодек в VoLTE
https://en.wikipedia.org/wiki/Enhanced_Voice_Services
Пару месяцев назад я обновил себе сотовый телефон, в котором
принципиально хотел видеть работу в VoLTE
(9e9b0a3dd40fc7f049e0a0ca888de42c8b53a72a).
Да, до сих пор всё так и не отказываюсь от сотовой связи, но она хотя бы
стала useable, если не поднимать трубку на незнакомые телефонные номера
(82eec4df2a680c4827e66a8ddae067a6f43acfd0). Это не отменяет того, что он
является радиомаячком, выдающим местоположение, а то и потенциальным
удалённо управляемым подслушивающим устройством. Но для важных
обсуждений его можно просто с собой не иметь или выключить, вынув
батарейку. Ну а с первым пока просто мирюсь, хотя в целом мне не нужна
мобильность (ведь и от ноутбуков отказался).
С некоторым людьми у меня просто потрясающее качество связи. Прям
существенно шире диапазон передаваемых частот, даже приятно общаться,
ибо человек не бубнит в трубку. Но только с некоторыми. Я не на 100%
уверен, но увидел простую корреляцию -- отличное качество голоса только
с другими абонентами Билайна. С МТС и Мегафоном -- бубнёж. У всех на
экране VoLTE, у меня "HD" кодек горит иконочка, но явно не полный
диапазон частот передаётся. И точно не от аппарата (микрофона) зависит,
ибо у двух знакомых одинаковые смартфоны, но только с разными ОПСОСам
(Билайн и МТС).
И на странице Wikipedia написано:
Inter-carrier interoperability is a problem, as calls are by default
routed over narrowband connections which downgrades the voice to
narrowband quality instead of EVS and HD Voice even if the
individual phones and carrier networks all support EVS.
Вот везде мощные CPU, поддержка хороших аудиокодеков, сотни мегабит
радиоканалы, но несколько десятков килобит сжатого аудио не могут
передать между собой, всё равно legacy всякий мешает.
Но зато дозвон моментальный: после нажатия на кнопку дозвона я не
успеваю телефон поднести к уху, как там уже гудки идут и через 1-2
секунды мне человек отвечает.
Sergey Matveev [Thu, 8 Aug 2024 09:40:13 +0000 (12:40 +0300)]
Proton Mail недоступен
В моей рассылке cryptoparty@ давным давно ничего не писалось. Ибо в
основном там всякие оппозиционеры (ну или оппозиционных взглядов)
собирались, а сейчас за это, благо, взялись наши власти, ибо уже перешли
все границы, перерастая в экстремизм. Не в моей рассылке, а вообще.
Пара писем там оказалась из-за оповещения о переезде на cypherpunks.su
домен (e00bdcc6a04229f1d8d56bdb86e9968ddf99feca). "postqueue -p" показал,
что до Proton Mail никакой доступности нет. А с него много людей была
подписана. Тут я только одобрить могу ограждение людей от этого сервиса,
который ну никак не может относится к чему-то безопасному
(3dc4adddc28d3c72c5e8db251c04190731465d11). Иллюзия безопасности -- хуже
чем осознанное и явное отсутствие безопасности.
У многих людей были ящики на @riseup.net. Его web-интерфейс недоступен
уже давно, хотя SMTP/POP3 работает без проблем. Но ящики многих людей
уже удалились.
Sergey Matveev [Thu, 8 Aug 2024 09:17:47 +0000 (12:17 +0300)]
YouTube всё
https://habr.com/ru/news/834706
Действительно, по IPv4 YouTube более не скачивается через yt-dlp.
По IPv6, даже с российских сетей, работает без проблем.
Единственная причина почему я если и искал видео какие именно на нём,
то только потому что он индексируется в поисковиках. Сам сайт YouTube
в броузерах у меня давно не открывается никак, но если в поисковике
вводить "youtube бла-бла-бла", то будет много ссылок на него, которые
можно скопировать для yt-dlp. Всякие VK, которые вроде как основная
альтернатива YouTube, или плохо индексируются (закрытые группы?) или
плохо ищутся. Всякие Boosty -- на нём ничего не скачивается из видео.
Закрытые экосистемы. Может быть есть что-то открытое, downloadable, но
я не пытался толком искать, ибо в моей жизни это всё из серии "жвачки",
чисто развлечение, отсутствие которого почти незаметно.
Меня то это всё не парит. "Учебные" материалы, про которые многие
упоминают: не могу сказать что одобряю факт их существования, ибо люди
(речь про ИТ) не пытаются разобраться в вопросе/задаче, а просто, так
сказать, copy-paste-ят что там увидят. Стажёры не раз сказали что надо
на YouTube посмотреть как ставить тот или иной софт. Даже не мог бы
придумать почему и чем это может быть адекватно в видео-формате, чем в
формате статьи.
Ну и извините, но это платформа с жёсткой цензурой, где если ты
выступаешь против поддержки геноцида россиян, против поддержки
терроризма и нацизма, то тебя оттуда убирают. Остаются только
про-террористические, про-нацистские, профашистские материалы, если речь
не про технические или развлекательные вещи. Как тот же Facebook вообще
открыто в своих правилах поддерживал любые призывы к уничтожению россиян
(военнообязанных, то бишь почти всё мужское население). Разделением
материалов они там не занимаются.
Sergey Matveev [Wed, 7 Aug 2024 05:35:49 +0000 (08:35 +0300)]
Десять лет съёмок Млечного пути
https://www.youtube.com/watch?v=vX6p1H7F9as
https://naked-science.ru/community/979230
Вот с таким видео становится понятно зачем нужны 4K и большие
разрешения монитора. Подобное можно смотреть бесконечно!
Sergey Matveev [Tue, 6 Aug 2024 12:47:37 +0000 (15:47 +0300)]
Всратость софта
https://habr.com/ru/articles/596517/
Статья про то, что в софте всё становится семимильными шагами хуже.
Таких статей -- море. Про то, как приложение фонарика или драйвер для
мышки будут занимать половину компакт-диска и ставиться не одну минуту
(грубо говоря).
Понравилось, что автора бесит "input lag". Я со стороны когда у людей
вижу или Windows или смартфон или любой (desktop/smartphone) web-обозреватель,
то офигеваю от него. Я в zsh даже постоянный вывод текущей ветки Git-а
выключил первым делом из-за input lag-а возможного. Но каждое КАЖДОЕ
действие, каждый щелчок в броузере приводит к задержке видимой, то я
просто отказываюсь даже пытаться это использовать, ибо себя не уважать.
Это реально лютое безумие. "Экономика" -- скажут другие. Но, как
минимум, современный web и связанные с ним технологии идут жёстко нафиг,
как и аргумент "web-приложение зато заработает везде".
Sergey Matveev [Tue, 6 Aug 2024 09:04:51 +0000 (12:04 +0300)]
Lua вместо Rust в FreeBSD
В рассылке всё продолжается обсуждение внедрения Rust в общую систему.
Опытные разрабы не видят ни в этом, ни в Rust смысла. А один прислал
предложение переписывать кучу всего на Lua, который и так уже есть в
базовой системе (для загрузчика), ибо к нему применимы все те же самые
аргументы, что и для Rust:
Most user space tools could be written in lua. This already is in
base, it is memory safe, it is very small and pretty fast, allows
easy C integration for cases most FreeBSD system tools never need.
It can be learned pretty easily, and it is very productive.
It also has the coolness factor of Unix, for example
implements two basic system tools in lua. (They are portable!)
One could also imagine that a basic FreeBSD lua library, one that
makes access to ioctls, sysctls and basic C constants easy, would
benefit FreeBSD, as it seems a not small number of projects /
companies use lua for certain parts of "their thing", like user
interfaces or whatever.
А вообще там самая большая проблема это в том, что Rust это не просто
язык/компилятор, а целая экосистема. И она меняется там чуть ли не
каждый месяц. Если в базовой системе будет Rust, которым можно будет
собрать только софт из /usr/src, но будет бесполезен для системы портов,
то толку от него не много. Говорят, что и Perl из-за этого был убран из
базовой FreeBSD (что ломает мой частый аргумент о том, что Perl из
коробки де-факто есть в любом уважающем себя дистрибутиве).
Sergey Matveev [Mon, 5 Aug 2024 09:05:56 +0000 (12:05 +0300)]
Signal vs XMPP+OMEMO
https://soatok.blog/2024/07/31/what-does-it-mean-to-be-a-signal-competitor/
https://soatok.blog/2024/08/04/against-xmppomemo/
Автор много критики говорит в адрес XMPP+OMEMO решения, противопоставляя
его Signal-у. Не знал что у OMEMO не одна ревизия и многие клиенты
поддерживают только старые. С совместимостью всё не очень хорошо. Да и
есть вопросы к самим криптографическим решениям в протоколе.
Всё это, конечно же, не отменяет централизованную природу Signal.
Но вчера люто посрался с отцом. Как-то я одну штуку ему прислал. Он её
не смотрел, но сказал что ему два последних дня подряд снилось, что со
мной спорит по этому поводу. И так уж вышло, но мы и правда, как никогда,
на повышенных тонах.
Сегодня даже на работу не хотел идти (а удалённо работать), ибо уже не
знаю как и на что отреагирую.
Sergey Matveev [Sat, 3 Aug 2024 12:09:51 +0000 (15:09 +0300)]
Знакомство с "курсом дизайна сетей ЦОД"
https://otus.ru/lessons/network_design/
Наш кадровик, с кем не мало пообщался на днях
(b9213c9adc216169c73fa3e0e2feb79b3b6d1e5e), предложил/посоветовал
подумать о курсах для саморазвития какого-нибудь. Вообще у нас ежегодно
собираются списки кто где хочет чему поучиться и ему могут оплатить это.
Но, предполагая, что это может пригодится на работе. Единственные курсы
о которых я в теории думал, так это что-то про сети уровня ЦОДов. Но их
даже не искал, ибо... ну я и ленив и не работе это не пригодится, ибо у
нас не бывает задач где хоть сколько-то сложные сетевые решения
приходится проектировать или применять.
Но тут всё же решил углубиться в эту тему. Вообще ничего нигде не нашёл,
кроме как вот курс на otus.ru, который прям так и называется "дизайн
сетей ЦОД". И на все темы у них уже есть выложенные на YouTube
лекции/семинары. Сети и вообще тема связи меня люто интересует, но вот
притрагиваться к ужасающим (с моей, программерской, точки зрения)
интерфейсам всяких Cisco/Juniper/whatever решений проприетарных не
хочется ни сколько. Но я прекрасно понимаю, что просто на обычных
серверах и не выжать то, на что способны эти специализированные решения,
да и не дешёвое удовольствие. Это главная причина почему не рвался к
курсам. Ну а другая сейчас -- то, что их вроде толком нигде невозможно
пройти без установки различного проприетарного ПО, что идёт лесом.
В общем, посмотрел вот абсолютно все их лекции по этому курсу.
Ещё до них, я задавался вопросом "а зачем нужен тот же MPLS?". Которого
в FreeBSD например нет вообще, в OpenBSD недавно добавили. Я безусловно
получал массу примеров где и как это используется, но всегда недоумевал:
"неужели просто другим дизайном сети нельзя обойтись без этого?". В этом
курсе лекций было много и про VxLAN. И про него у меня аналогичные
вопросы и не понимания чем решаемые им задачи кардинально отличаются от
заявленных для MPLS. Так же как и вообще вся тема с адом связанным с
L2-related технологиями.
Я был убеждён, что кучу задач/проблем можно бы было решить просто
маршрутизацией. И конечно же IPv6, где нигде не приходится ютиться в
узком адресном пространстве. Да, понимаю когда клиент просто ставит
перед фактом, что надо его текущую инфраструктуру соединить с чем-то
другим. Но я рассматриваю только случаи, когда ты сам делаешь свою
инфраструктуру и тебя никакой legacy или убогие ОС/софт не сковывают.
И просмотр курсов точно не прошёл даром. Ибо все эти профессиональные
сетевые инженеры и архитекторы прям открыто говорят что по сути весь
этот адов стэк технологий это нечто иное как сплошные костыли и
подпорки, вынужденные существовать из-за массы софта/клиентов, которые
ничего не хотят поменять. И много раз они повторяли про то, что в идеале
всё можно бы было сводить к простой банальной маршрутизации настроенной.
VxLAN, как я и предположил, это по сути некая очень удобная замена MPLS
для IP/L2 сетей, с которым удобнее работать из-за его UDP/IP природы.
То бишь, если что-то делается полностью без оглядки на legacy, то в
общем и целом никакие эти MPLS/VxLAN/STP и многое подобное просто нафиг
не нужно.
Смотрел также и за рамки выходящее выступление сотрудников из QRATOR,
рассказывающих про устройство Интернета, BGP и anycast тему. Очень
порадовался тому, что я ничего нового оттуда не узнал, ну кроме забавных
и любопытных фактов о самом неожиданном зоопарке всего что есть в Интернете.
А они там начали с того, что даже далеко не все сетевые ЦОД инженеры
вообще понимают как устроен Интернет и какие особенности в нём, о которых
они и будут рассказывать. Я в теме оказался.
Я не мало же ведь посмотрел видео про hyperscaler-ов, типа Яндекса и
Facebook. Где, как-раз, всё делается на IPv6 и существенно более
простыми методами, чем про рассказываемые в курсах (в том числе
Cisco-вских). И от L2 в этих ЦОДах избавляются нещадно, ибо, в том
числе, могут позволить и софт какой угодно ставить без проблем хоть на
каждый сервер. Руки развязаны, никакого legacy или обратной
совместимости не надо. На курсах otus.ru подчеркнули, что всё это так и
надо, всё зашибись, существенно проще, гибче, надёжнее. Но большинство
остальных вынуждены со старьём неизменяемым иметь дело, просто навсего.
Так же, как где-то (то ли Яндекс, то ли Сбер, то ли что-то такое очень
крупное) я видел про IP-IP overlay туннели поверх BGP-driven underlay,
на тот момент не понимая зачем "VPN" нужен в таких сетях. Но сейчас у
меня и дома аналогичное же устройство, сам додумался/дошёл до удобного
решения.
А вот больше деталей про hyperscaler-ов уже ни на каких курсах не
показывают. Их и не много и они же сами тут первопроходцы и у кого какие
придумки и задумки. Да и в целом у них больше головной боли о конкретно
топологии сетей (чистые сети Клоза же у них реже применяются), чтобы
минимизировать расстояния, кол-во кабелей/портов. Тогда как то, что
бегает по проводам уже сильно проще устроено чем в более простых ЦОДах.
Очень приятно, что моя голова всё это время делала логичные выводы и в
правильном направлении придумывала решения. Всё больше на своих местах в
ней.
Теперь надо бы начать побольше читать и погружаться в SRv6 тему:
https://www.segment-routing.net/
Sergey Matveev [Fri, 2 Aug 2024 20:01:05 +0000 (23:01 +0300)]
История Duke Nukem 3D
https://www.youtube.com/watch?v=F9LgU73psJU
Когда я был маленьким, то Duke Nukem 3D впечатлял наверное как никто.
Doom, Quake -- всё это про какие-то вымышленные миры. Heretic, Hexen это
fantasy миры. Blood я сильно позже познал. А DN3D это про современный мир,
так сказать. В ролике говорится, что на первый уровень потратили уйму
часов дизайна. Но это же реально крутейший уровень, где только от одного
него, будучи ребёнком, я получал уйму удовольствия. Лучшего intro игры
просто и быть не может. Правда, я всё же считаю, что Blood
(6608209ea8cda8b3e8a08cd876e72ccce39f82a9) является лучшей стрелялкой
созданной в 1990-х.
https://lenta.ru/news/2024/08/01/lebedev-v-intervyu-dudyu-raskritikoval-mizulinu-ona-poobeschala-zasudit-oboih/
Раз вчера был день срачей и всякого негатива
(1b10e619927014234e2dd059e1269e74a794e69d), то почему бы не посмотреть
на интервью Лебедева Дудю, о котором услышал из новости о том, что
Мизулина их собирается засудить.
Вообще, несколько недель назад я одним вечером решил посмотреть на Отара
Кушинашвили. Он попал в больницу. Я знаю как он выглядит, какой голос,
но не видел ни одной передачи. Только отзывы. Решил понять, о чём же
столько шума с ним. Ok, увидел, понял чем он отличается от остальных,
как говорит, как преподносит информацию. Негатива не вызвал, но,
конечно, не каждому понравится.
Затем напоролся на ролик, где он в гостях у Басты. Он упомянул, что его
отмудохал в pop-MMA Джигурда. Пошёл смотреть и это. И как он Милонова. И
их разговоры перед боем. Там был Паша Техник. Вспомнил про Инстасамку,
постоянно тоже маячущую в новостях.
В общем и целом, стадно даже писать об этом. Коллега на работе сказал,
что это называется "guilty pleasure". Но затягивать подобное может ещё
как, я ж тоже человек.
Инстасамка не вызвала какой-то бурной реакции. Понравилось, что она,
пускай и по слогам, как ребёнок, но хотя бы выговаривает буквы и слова,
в отличии от, как показалось, тьмы других артистов, которым прям лень
раскрыть рот, еле мямлят. Тексты такие же тупые как и у Моргенштерна
(как мне показалось). Но у него настолько всё гиперболизированно, что
даже с юмором можно воспринимать этот тупой треш. По приколу послушать
пару "песен" -- ну можно, почему нет. А дальше, по моему, это уж пустая
трата времени.
Впечатлил Паша Техник. Если некоторым артистам просто лень говорить, то
у него, как показалось, просто нет физической возможности это делать. Я
наркоманов наверное никогда в жизни не видел, но тут яркий представитель
обколотого героином/whatever нечто, у которого и язык не ворочается, и
мозги отсохли, и среди потока константного перманентного паршивого
безынтересного мата, нет ни толики полезной информации.
Аж в 2018-ом (4ad217080b68f58b45995ae2622e33bc0fb2df8e) на работе дали
послушать Face. Лютое мерзкое говно, которое невозможно дослушать до
конца. Мне наверное только пару трэков и поставили. Позже я вроде понял:
кого что задевает и у кого на что идёт реакция. Для меня лютейшей
парашей, которую хотелось выключить/переключить (один раз в кино и
посмотрел, но оставался из-за интереса "неужели ещё хуже что-то будет?")
был Movie 43. Однако, от "Зелёного слоника", который считается одним из
самых трэшовых фильмов, я получил удовольствие, досмотрел до конца, даже
и пересмотреть бы надо, чтобы освежить память. Не все коллеги, как
оказалось, попытавшись когда-то посмотреть, осилили. Вот и Face -- он
для каких-то других людей может быть приколен, как для меня "Зелёный
слоник", порнограйнд, копрограйнд и прочая фигня.
И для молодёжи нормально всякую дрянь слушать/смотреть. Протест же.
Вызывает же эмоции у старпёров всяких. Всегда так было.
Но больше я наверное впечатлился тем, что на встрече Кушинашвили и
Басты, почти всё вокруг в молодёжи, лет на 10-15 моложе меня. Лексикон
у многих как у Инстасамки. Про него я уже упоминал в ca23bc85781a099a3f61719c1714957ac20c8e6c. У Инстасамки, как мне
показалось, чуть ли не половина всех слов -- это вот перековерканный
русский и сплошные замены на иностранные слова. У молодёжи не редко
тоже такое слышу. Это неприятно, ибо уничтожает самобытность, язык,
культуру, скорее показывает безграмотность.
Бросилось в глаза что все одеты очень отлично от людей моего возраста с
кем пересекаюсь. Вот смотрел на всё это как на некий параллельный мир,
где вроде бы оно и у нас, всё наше, но как-будто всё по другому. Не хочу
сказать что у меня неприятное впечатление о молодёжи этой (nowadays
"rap"-related?) сложилось, никакого негатива, но очень необычно.
На pop-MMA запомнилось ещё то, что как-будто там не было ни одной
женщины, не состоящей на 20% из силикона. Ни одних "оригинальных" губ --
только и только накачанные утки. И сплошная стереотипная манера общения
типа "тупой блондинки", как когда-то подобных показывали в телесериале
по СТС. Прям почти физически противно было смотреть и слушать.
Специально ли это они так делают или всерьёз по жизни общаются? Даже
знать не хочу, фу.
А вчера вот Дудь. Знаю как он выглядит, сколько нелестных комментариев в
его сторону, что он иноагент и всё такое. Но ни одной передачи не видел.
Посмотрел два интервью с Лебедевым. Опять же, с последним я видел пару
выпусков какой-то передачи. Знаю как ИТшник о теме дизайна и его
путешествиях. Видел в mail.ru в живую, когда ждал начала одного
meetup-а, где выступал. И негатива не было, скорее симпатия.
В это сложно поверить, но день меня так вывел из себя, что я ел пиццу,
захватив по пути домой назад, и просто смотрел всё это (конечно же в
ускоренном воспроизведении, ибо это не один час). Дудь, на фоне рэперов
и "тупых блондинок", понравился тем, что говорит чётко, ясно и быстро,
без тормозов и слов паразитов. Как человек и собеседник -- неприятен,
ибо только и занимается тем, чтобы подловить на слове, исковеркать и
вывернуть всё так, чтобы тебя в некий капкан поймать и типа переспорить.
Но явно голова должна очень хорошо варить, чтобы в real-time такое
проворачивать. Профессионал своего дела.
Лебедев же очень понравился! Посмотрел я интервью или нет -- ни на йоту
ничего не получил полезного. Ну кроме разгрузки и некоего отдыха.
Понравилась призма восприятия Лебедева. Очень понравилось как он
отвечает. Как он использует (и не мало) мат, но в нужных дозах и нужных
местах. Нравится как он парирует Дудя. Нравится его позиция и отношение
почти ко всему что там затрагивалось. Кроме, разве что, пацифизма. Но
при этом Артемий понимает, что если тебя пришли убивать, то это
абсолютно естественно защищаться и убивать для выживания и защиты. Так
сказать, адекватный пацифист. Зауважал ещё больше и рад, что его много
кто у нас смотрит и "читает" новости через его призму интерпретации и
подачи. Не спроста его поэтому заблокировали на YouTube.
Понравилось, что он впечатлился храмом ВС РФ. Вот у меня аналогично: ну
не восторгают никакие меня храмы и церкви где я бывал, ну кроме
колоссаальной Sagrada Familia. А храм ВС РФ очень впечатлил и понравился
(b4bd21722bc26f48f9464cfe43c35fd0e0ccf323). Вот и Лебедев его одобрил. А
уж он то понимает в этих делах поболее моего.
На работе, при обсуждении Дудя, упомянули его интервью с Цыгановами.
Типа это то, что не все в состоянии вообще досмотреть, мол, лютая жесть.
Ну что ж, раз такая пьянка, и я решил посмотреть и это длиннющее интервью.
Ух, действительно, это лютая жесть. Цыгановы -- полностью на голову
"православнутые", как я бы их назвал. С которыми совершенно не понятно
как что-либо можно обсуждать. Мне кажется более точного термина как
"невменяемость" невозможно применить. Я шокирован подобными людьми
больше чем обдолбанным Пашей Техником.
Они реально даже пугают, ибо у них вообще никакой логики, никакой
стройности мыслей, уживаются любые противоположности -- ты просто вообще
не знаешь что он них можно бы было ожидать. Невменяемый человек. Кто не
дружит с головой. Больной. Опасный тип из-за непредсказуемости бардака в
голове. Видимо, ведь и религиозные фанатики, точно такими же подобными
людьми и являются и поэтому они и творят ужасные поступки, на которые у
здорового человека просто не выстроились бы нейроны в мозгу. А по
Цыгановым видно, как Дудь их люто выводит из себя. Сравните с Лебедевым.
И прям офигеваешь, как они говорят много, казалось бы, красивых и
правильных добрых слов, но за ними кроется то такое... Слов нет. И
насколько же это всё ужасно и невыносимо было слушать после Лебедева.
Его на одном дыхании. Их же только за два прихода, как и Movie 43, чтобы
офигеть от того, что это может реально не прекращаться, а у Дудя хватает
терпения, хоть и как-будто бьётся головой об стенку.
В конце от них такое лицемерие... просто не веришь. Какие же они
невероятно осуждающие люди, хотя и говорят без умолку что нельзя
осуждать. "У кого что болит, тот о том и говорит". Страшные люди.
В общем, много впечатлений. Зачем на всё это я тратил время? Не знаю,
развеяться. Но пара-тройка вечеров у меня всё-равно могла бы на FreeCiv
потеряться.
Sergey Matveev [Fri, 2 Aug 2024 12:51:32 +0000 (15:51 +0300)]
Бомбящий август
За считанные дни на этой неделе у меня то одно, то другое накипает,
бесит и выводит из себя. Речь про коллег и работу. И дошёл до того,
что просто тупо смотрел 20мин на ошибку сборки под Астрой (да, она
уже порядком достала корявостями и странностями), знал как исправить,
но рука не поднималась. Всё задолбало в основном проекте где я участвую.
И трясёт. Понял, что дальше или я жёстко со всеми разосрусь, так что
продолжать будет нельзя. Сложилось такое впечатление, что многие коллеги
даже не собираются что-то делать, ибо "stargrave всё равно же сделает и
без нас". И перешли уже границы воспитанности, так сказать.
В ivi, который был более чем десять лет назад, директор, судя по всему,
очень хорошо понимал людей и их состояние и он меня насильно выгонял в
отпуска. И всегда, насколько помню, это было в августе. Каждый раз когда
меня окончательно всё задалбывало и хотелось увольняться, то это, опять
же, август. И вот и сейчас: первое число, как по расписанию, я иду к
начальству с тем, что я хочу уйти на месяц в отпуск, полностью забыть
про работу на месяц (все отпускные дни что есть).
Меня уговорили всё же просто переключиться на совершенно другой проект,
не совсем уходить на месяц. Кадровик позже порекомендовала всё же и в
отпуск пойти, хотя бы на неделю. И вот в планах съездить в Новосибирск.
Но ещё не смотрел как там чего по билетам, гостиницам и прочему.
А ещё вчера форсировал процесс увольнения стажёра, про который упоминал
в 4a587229a702eb5f4db9bde58f1cb60cb8fdfad6. После моего ревью, ещё пары
встреч и парного программирования, более чем месяц никаких результатов
не присылал. По сути даже самая первая задача не выполнена (junior
программист бы выполнил от силы за час, со всеми тестами). И кормит
завтраками, врёт что сделал. Неприемлемо.
https://www.hezmatt.org/~mpalmer/blog/2024/07/31/healthcare-company-sues-to-stop-certificate-revocation.html
DigiCert обосрался, и в спешном темпе должен отозвать кучу сертификатов.
Однако на них другая крупная компания подаёт в суд, препятствуя отзыву,
ибо для них это будет большим геморроем. И вот если он не отзовёт, то
рискует быть выкинутым из всяких ОС/броузеров, будучи вторым по величине
удостоверяющим центром. А если отзовёт, то его больно засудят.
https://www.youtube.com/watch?v=eEvB7sT6BpA
Был на выходных на даче, как-раз когда сабж открывался. По ТВ много раз
упоминали о том, как там сплошные пидарасы и трансвеститы везде маячили
со сцен. Ну дык, Европа же.
Где-то в новостях я слышал, что и Gojira там должны были быть. Нигде не
нашёл просто записи их выступления, но только видео с комментариями.
Gojira, конечно, всегда и везде одинаково звучит, но круто же вышло.
Здорово!
А отрубленные головы, кровища во все стороны -- ну так это же история
Франции, куда деваться то. Всё нормально.
https://nocoffei.com/?p=202
https://nocoffei.com/?p=247
Вот, человек пишет, на практике всё это так себе работает, на соплях.
Даже у всех из себя (по их заявлениям) качественных и стабильных Apple
(c75df148fc3c98f8f102d9c3a8c096e60f7b1a8d). Всё аналогично USB: по нему
и Ethernet адаптеры же тоже можно подключить, но всё это работает,
просто навсего, ненадёжно. У меня не было ни одного компьютера (ПК,
сервера, ноутбука), где бы временами USB устройства но не
"отваливались", не переподключались. В большинстве случаев это
устройства ввода и это не заметно остаётся. Или же устройства типа
принтера/сканера работают относительно непродолжительное время, чтобы
попасть на внезапную проблему.
Но держать root ФС на флешке, если речь не про загрузку в память, или
начальную (bootloader, /boot, а дальше уже нормальные массивы и ФС), я
больше не хочу. Ethernet USB -- тоже, спасибо, но нет. Если это только
не интерактивное использование и ты физически можешь подёргать,
перевоткнуть, переконфигурировать интерфейс, когда что-то пойдёт не так.
USB ещё со временем полностью массово перешёл на недолгоживущие разъёмы
хлипкие. Где-то читал и слышал, что на самом деле они вполне себе
надёжны. Ну не надо мне вот заливать этого -- я же сам воочию на
практике вижу как старые "полноразмерные" A/B разъёмы живут, какой у них
контакт, в отличии от mini/micro USB версий.
А Thunderbolt я кстати ведь прямо сейчас использую: через type C по нему
у меня DisplayPort до монитора (447cdfbb145f6597c7df2be1bec8d15a5d36237c)
идёт. И работает это гораздо лучше, чем по HDMI. На работе кабель
контакт стал плохо контачить и надо в определённом положении его
держать. Дома из-за контакта могло 30Hz, вместо 60, включится. Просто
бывает изображение пропадёт, потом появится. Но об HDMI только ленивый
плохо не говорил.
Как-то меня удивило, что коллега на работе принципиально именно
Thunderbolt NAS хотел себе. Искренне не мог понять. Уж лучше SATA HBA
PCIe карту вставить, с каким-нибудь eSATA разъёмом -- это не шибко
дорого, зато надёжно. С eSATA я много поработал в ThinkPad ноутбуках,
приятно иметь дело с надёжной штукой.
https://old.reddit.com/r/TMNT/comments/11logyw/thoughts_on_tmnt_mutant_mayhem_and_the_april/
https://en.wikipedia.org/wiki/Teenage_Mutant_Ninja_Turtles:_Mutant_Mayhem
Шиза в США конечно лютая, но не перестаю удивляться творящемуся там.
Внезапно тут вот узнал, что в прошлогоднем фильме о Черепашках, Эйприл
это не секси блондинка/рыжая пышноволосая аппетитная белоснежная девушка
с ляхами как-надо и завидным бюстом, а... негритянка с дредами и фигурой
полностью противоположных стандартов, так сказать. Я в целом равнодушен
к Черепашкам, хоть и видел разные серии в детстве по ТВ, но это просто
дичь. Как и у Disney (9053f799dc6435fd7bb3c84af777b3dfedf9fc02), как в
играх (67739f2dd2e3d1025297ce85f9087ff79f5e2bd1).
Уже упоминал (77c003ddebddbb19b0bad3c5ce571971042d85ac), что
зарегистрировал cypherpunks.su. Пока нет срочной, отъедающей весь день,
работы, то начал переносить со старого домена на новый сильно заранее
его срока (декабря). Изменение ссылок в коде, HTTP permanent redirect на
сайтах, новые UID-ы в PGP ключах и всё в таком духе.
В рассылках имеющихся опубликовал новость о переезде. Просто упомянул,
что ожидаются проблемы с продлением доменов, поэтому и переезд заранее.
Несколько людей мне написали вопросы "а почему?". И абсолютно все
посчитали, что я от нашей юрисдикции хочу подальше, за бугор, грубо
говоря, вынести это всё. Отметили что ведь и .su под "нашим" управлением же.
Тут я уже писал, но ещё раз: у нас планируют обязать авторизацию через
Госуслуги для осуществление действий с .ru и .рф. Вот и вся причина. 9656f8631da287a2bc0ea60574ae7489433c5022
Нигде про .su или другие домены не упоминают. Возможно это всё
отложится. Возможно передумают. Но задолбали брехать и бредить.
А регистрировать я это всё наоборот хочу в нашей юрисдикции. Даже до
СВО, до того, как явно Запад открыто признаётся в задолгом желании
нашего уничтожения, уже имел дело с их регистратором, их VPN-ами (для
статического IP с PTR записью для почты), VPS и зарёкся продолжать.
Здесь же, если будут проблемы/косяки/непонятности, то можно будет
разобраться.
6+ лет назад мне понравились чашки большого размера. Не помню точный
объём, но больше стандартных, меньше полулитровых. Стандартных мне было
мало, а заваривать две -- многовато. Но за эти годы я перебил уже пять
штук онных. Во время мытья посуды умудряются не удерживаться в руках.
Приобрёл одну красивую на замену, оценивал объём на глаз и прогадал:
оказалась стандартного размера. И битьё посуды прекратилось. И привык
снова к стандартным размерам.
Но зато вчера компенсировал длительное время тишины. Достал трёхлитровую
банку компота из холодильника, а из-за холода она сконденсировала на
себе кучу влаги. И по пути назад вылетела из рук. Как минимум, два часа
пришлось драить кухню.
https://www.youtube.com/watch?v=bgj-LdE3DB4
Интереснейший ноутбук! Современные компоненты, полностью открытая схема.
Но 386SX 40MHz процессор, 8MB RAM. Есть возможность подключения COM,
LPT, PS/2, GPIO, ISA, CompactFlash. Столько ностальгии, пока смотрел это
видео! Я же ведь когда-то использовал Windows 95. Последним у меня был
Windows 98 SE. Правда на более мощном (486) железе.
Вот на чём нужно проводить Old Computer Challenge
(d164bb5029a2ccdafb7bc958ff27d060675e4058), а не на мощнейших зверях с
сотнями мегабайт RAM. У меня, помню, работал вполне себе GNU/Linux на
двух дискетах загружаемый, на 386-ом с 4MB RAM. Я на нём мог
подключиться к Интернету, использовать почту и броузер (Lynx). Был и
NNTP и IRC клиент, но я их не пробовал.
https://www.youtube.com/watch?v=xnErgUBnj-0
Посмотрел прохождение части сабжевой игры. Очень забавная конечно. И
динамики в ней, похоже, хоть отбавляй, если challenge хочешь выполнять.
Не многие из современных игр, на которые смотрю, хочется потрогать.
Озвучка, музыка, картины, оформление, танцы, разговоры, анимации радуют.
Почему strlen+memcpy быстрее чем один цикл копирования в strlcpy
https://nrk.neocities.org/articles/cpu-vs-common-sense
Статья поясняет почему, казалось бы, двойной проход по строке для
выяснения её длины, а дальше уже для копирования, может быть быстрее
чем просто ровно один цикл прохождения по строке с копированием. И
видна разница в подходах в коде OpenBSD и GNU, со своими за и против.
https://openssl-mission.org/
https://openssl-library.org/post/2024-07-24-openssl-new-governance-structure/
https://www.opennet.ru/opennews/art.shtml?num=61603
https://dxdt.ru/2024/07/25/13464/
Недавно OpenSSL лихо поменял свой сайт. Под ними теперь и cryptlib и
Bouncy Castle. А также появился mission statement, прям на главной
странице, гласящий:
We believe everyone should have access to security and privacy
tools, whoever they are, wherever they are or whatever their
personal beliefs are, as a fundamental human right.
Но при переходе на сайт cryptlib-а получаем 403. Кто-то ещё не верит,
что Запад нас не считает за людей, что он упорно старается сделать всё,
для буквального уничтожения и истребления, или хотя бы порабощения? И,
конечно же, всё обмазано "open source" терминологией, которая тоже
показывает свою природу. Но и чисто технически, OpenSSL это вещь с
которой лучше бы ни при каких обстоятельствах не связываться.
А я решил посмотреть на cryptlib (доступный по старому сайту) поближе. И
в его README написано, что TLS 1.3:
TLS 1.3 support has been added but is disabled by default. Despite its name,
TLS 1.3 is a completely new protocol that runs alongside standard TLS and
doubles the size of the TLS stack if enabled. In addition since a primary
design goal for TLS 1.3 was to make the operations of large content providers
easier (for example it relies on the client guessing a number of
characteristics of the server, which works fine for Google clients connecting
to nonstandard configurations in Google servers but less well for non-web-
client cases) it can lead to performance issues or interoperability problems
where the client is unable to guess in advance what the server requires.
Unless there's an external requirement for TLS 1.3 use it's recommended that
users continue with TLS 1.2.
Честно говоря, я не понял про какие угадывания параметров клиентом идёт
речь (про алгоритм публичного DH ключа?), но в целом тут бред написан.
Причём тут большие CDN-ы? TLS 1.3, в кой да веки, спроектирован грамотно
с привлечением толковых криптографов, state-of-art. А не как постыдное
дерьмо что было прежде. Но cryptlib не рекомендует использовать куда
более простой и грамотный протокол.
https://pubs.opengroup.org/onlinepubs/9799919799/
Стандарты ISO, ГОСТ, многие другие, включая POSIX, зачастую не легко
достать бесплатно. Но The Open Group опубликовали в HTML виде недавно
вышедший (a139c1389ea7f80d65cb80094a3901ec443ab278) POSIX. Скачал так
(какие-то опции наверное лишние, лень вспоминать/выяснять):
https://letsencrypt.org/2024/07/23/replacing-ocsp-with-crls.html
Сегодня утром в одном письме написал о том, что за последние 10-15 лет в
экосистеме web-броузеров, которая диктуется CA/Browser Forum-ом, всё шло
только в сторону меньшей безопасности и большей открытости для MitM-а.
Выпилили всех бесплатных CA, которые не под юрисдикцией США. Выпилили
HPKP, который вообще-то даже присутствовал в Chrome/Firefox/Opera.
Противятся DANE. Убрали (хотя бы) цветовую дифференциацию между DV и EV
сертификатами. Яро против квалифицированных сертификатов в ЕС
(3529cf4ce9a96e399aaf63b426bd320dc082cf68). Ограничивают срок жизни
сертификатов (сейчас до года, ходят речи о ещё в разы меньшем). Не
разрешают ed25519 сертификаты. Всё для того, чтобы Let's Encrypt (и
другие США/НАТО-approved) был единственным (что уже произошло) и
неповторимым и чтобы мешать как можно больше любым идеям certificate
pinning-а, как минимум.
И теперь вот хотят убрать OCSP. Не то чтобы я поддерживал и был за эту
технологию, ибо в своём чистом виде она, действительно, мешает
приватности. Но многие же применяют OCSP stapling. Как минимум, OCSP
ощутимо сужает временное окно, когда сертификат отозвали (возможно из-за
компрометации), но он ещё продолжает использоваться. CRL-и же
относительно редко выпускаются. Да и... много кто встречал экосистем
готовых к периодическому обновлению имеющихся CRL-ей и их долговременном
хранении? Минус ещё одна защита, которая всё же заноза для MitM.
В последние годы участились случаи отправки снимков экрана, вместо
текста размещённого на нём. Тут в рассылке OpenBSD некто отправил 4.5MB
фотографию экрана, на котором всего 21 строчка вывода ядра (менее
килобайта). И при этом люди просто дописывают "извините за jpeg". Также
как некоторые дописывают "извините за top-posting, пишу со смартфона".
Типа как-будто он извинился и поэтому всё нормально. В рассылке OpenBSD
верно заметили, что его 21 строчка в виде фотографии -- означает
отправку 19 GB трафика, учитывая количество подписчиков.
На работе недавно было общение с одним человеком, который упорно только
снимки экрана посылал. И не по почте, а через IM, где мне приходится
отдельно брать и скачивать его attachment, распаковывать, а затем уже
только просматривать, чтобы увидеть там обычный plain text.
Вот что, сложно хотя бы мышку/trackball/trackpad взять в руки, выделить
текст и нажать третью кнопочку, чтобы вставить текст? Я уже был на
грани того, чтобы послать такого коллегу. Понимаю, скопировать вывод
ядра при загрузке на физической машине -- не то чтобы легко возможно. Но
сложно потратить несколько минут своего времени на перепечатывание (в
крайнем случае) строчек на нём? 19GB трафика, уйма сожжённого
электричества для отображения огромной по размерам фотографии, полное
неуважение ко времени и удобству восприятия информации людей, которых
человек просит о помощи.
Хотя это уже ни в какое сравнение с аудиосообщениями, о которых мне уже
не раз говорили коллеги и знакомые. Которые, к сожалению, просто за@бали
уже в общественном транспорте. Ну а точнее люди, которые не могут
потратить 100₽ на наушники для своего мега-навороченного смартфона.
Во второй раз стал крёстным отцом. Когда-то стал для дочери двоюродного
брата. Теперь для дочери двоюродной сестры. Поэтому ездил в Нижегородскую
область в эти дни.
https://www.youtube.com/watch?v=uASUHbFEhWY
Серия Футурамы вышла давным давно, но и тогда и сейчас актуальна
касательно apple-fan-boy, вообще продукции Apple (у которой очки
дополненной реальности появились) и современных пользователей
соцсетей типа TikTok. Плюс отсюда же и "shut up and take my money!".
https://habr.com/ru/companies/yandex/articles/828956/
Показано много чего было добавлено в современные версии Python. Про кучу
могу сказать что нафиг нужно -- очередной сахар ради сахара. Про многое
другое могу только негативно отозваться, что это только вновь и вновь
позволит усложнить понимание кода. У меня прям почти физическое
отвращение проявляется, когда раз в n-месяцев приходится открывать тот
или иной Python код. В основном это, как минимум, из-за его полностью
поломанной экосистемы PyPI, где почти ничего нереально установить просто
так из исходников.
Но больше негодования у меня вызвало оформление статьи. Прилично текста
оформлено просто в виде картинок, где ничего кроме картинки бесполезной
и текста на ней. Web обезумел. В очередной раз вижу, что проще, удобнее
и куда эффективнее PDF-ку выложить (да, Хабр не для этого). Казалось бы,
такую простую чисто текстовую статью, но на модеме или моём первом
проводном Интернете (160Kbps на вход) это замучился бы ждать.
https://cedardb.com/blog/german_strings/
Некоторые DB-related решения используют "German-style" строки. В
противовес Си-шным (которые типа аналогичны Go-шным slice-ам), в
которых 64-бит идёт на длину, 64-бит на ёмкость, 64-бит указатель
на содержимое. Но во многих задачах строки не часто меняются, как
правило они immutable. Частенько они довольно короткие (считанные
байты). Нередко нужно прочитать только их начало (префикс): сравнение
строк, лексикографическая сортировка, и т.д..
Предлагают такой вариант: 128-бит структура, в которой 32-бита отводят
под хранение длины, а в оставшемся месте или вся строка целиком (если
она не длиннее 12 байт). В противном случае, идёт 32-бит префикс строки,
а дальше указатель на содержимое.
В GnuPG появилась поддержка пост-квантовой криптографии
https://ntruprime.cr.yp.to/faq.html
В 2.5.0 версии, в качестве эксперимента, можно использовать для
шифрования PQC ключи. Пока это по сути gpg --quick-gen-key test pqc,
который сгенерирует вот такой ключ:
По умолчанию Brainpool кривые используются, что для меня необычно.
Размер зашифрованного "hello world" почти под полтора килобайта. Но
можно указывать и алгоритмы типа "Ed448/cert,sign+kyber768_X448/encr"
для использования других кривых. Но не верю что есть смысл в *448
(34b51c3068ae1f6d1beb2d65b678923f4821c6a4), если что.
Между тем, DJB поднимает в своём FAQ вопросы о патентной чистоте Kyber-а
и вообще есть ли у него плюсы. Мол, в Streamlined NTRU Prime всё чисто и
хорошо. Видя как относятся NIST к его алгоритмам, и насколько они лучше
преобладающего количества остальных -- внушает доверие его отношение к
Kyber, особенно после (02211b33b7ccd987535b0a9599b17e715cab70cb) наезда
на Kyber-512.
В новой (5.15.0) версии GoGOST более чем в три раза Стрибог стал
производительнее. Раскрытие одного цикла, убирающего поиск по таблице,
повысило почти на треть скорость. Ещё на треть увеличило скорость
использование предвычисленных таблиц для LPS преобразования. Кроме того,
без дополнительных аллокаций в куче, избавился от множества буферов в
состоянии хэша.
Оказалось, что оно сравнялось по скорости с Nettle реализацией -- самой
быстрой из свободных мне известных. Знаю что можно, как минимум, ещё в
два раза повысить её, за счёт SIMD-а, но этого в планах нет.
С удивлением сегодня обнаружил, что в Astra SE нет Postfix! По моему это
первый дистрибутив на моей памяти, где бы его не было в пакетах. Ну ради
интереса решил впервые потрогать Exim. Его конфиги пугают, в том числе
размером. Возможно это особенность Debian/Astra. Но через интерактивное
конфигурирование указал ему relay (smarthost), и отправка почты сразу же
заработала. А так я всю жизнь на Postfix-е. Кроме одной недели, когда я
пытался сконфигурировать Sendmail и плюнул на это дело.
https://naked-science.ru/article/psy/sotsiologi-vyyasnili-pric
Я не зумер, но тоже его вообще не употребляю. И на то несколько причин:
* нет никакого желания пьянеть (собственно, я никогда и не был пьяным,
так что на практике не знаю какого это), ибо вижу со стороны во что
превращаются выпившие люди. Не то чтобы это всегда что-то ужасное,
наоборот может стать веселее, но у кого как, у кого как
* банально не нравится этот вкус/привкус. Как и кофе. Вот зачем его
употреблять, если не получаешь удовольствия от вкуса? И пиво для меня
аналогично -- неприятен даже запах. Немного даже завидую людям,
которые так тащатся от его употребления, получают удовольствие. Но
вспомнив множество фраз о том, что в Иран туристом ни ногой, ибо там
выпить негде будет, то наоборот становится чуть ли не жалко
* ну и в детстве (1990-е же) насмотрелся на тьму семей, где из-за
пьянства рушились жизни. И отношения портятся и деньги улетают. Будучи
маленьким, я уже знал, что алкоголь это зло, до добра не доведёт. Да и
родители к нему почти равнодушны, только по праздникам
Ещё не раз слышал аргумент от мужчин: напоишь девушку, расслабишь, так
сказать, он тебе, глядишь, и даст. И, действительно, со стороны я видел,
как женщины могут заметно раскрепощаться и переставать быть стесняшками.
Возможно это социально принятая норма в обществе, норма в поведении. Но
по мне это и глупо со стороны женщин терять голову настолько, что потом
будут жалеть, а то и не помнить что с ними было, и низко со стороны
мужчин пользоваться этой их слабостью. Но вся эта тема очень не редко
упоминается в плюсах употребления бухла.