]> Sergey Matveev's repositories - stargrave-blog.git/log
stargrave-blog.git
4 years agoВ Европе запретили использовать "стену cookie"
Sergey Matveev [Mon, 11 May 2020 13:22:22 +0000 (16:22 +0300)]
В Европе запретили использовать "стену cookie"

https://nag.ru/news/newsline/106921/v-evrope-zapretili-ispolzovat-stenu-cookie-.html
Меня терзают смутные сомнения насколько вообще такие законы
работоспособны, но после относительно недавних их последних законов,
действительно, я много на сайтах вижу предупреждений о cookie. И,
действительно, я много раз видел эту "стену". Ну, то бишь, это
безусловно хорошо что стали предупреждать о том, что они используют
cookie, но пользователь, получается, всё равно должен дать на это
согласие и закон ни капли не помогает против слежки, а только
предупреждает о ней. Посмотрим что выйдет с запретом "стены".

4 years agoСоздал сайт для SGBlog
Sergey Matveev [Mon, 11 May 2020 10:45:51 +0000 (13:45 +0300)]
Создал сайт для SGBlog

http://sgblog.stargrave.org/
То он размещался просто в git-е, а теперь будет полноценный сайтик для
этого движка.

4 years agoИспользую ли я цифровой блок на клавиатуре?
Sergey Matveev [Mon, 11 May 2020 09:24:50 +0000 (12:24 +0300)]
Использую ли я цифровой блок на клавиатуре?

https://habr.com/ru/post/501142/
Дома и на работе у меня Filco Majestouch 2. Вот только дома с цифровым
блоком, а на работе без. И я домой собирался без него покупать, но их
просто тупо не было в наличии. И я вообще абсолютно полностью никогда
его не использую. Мне кажется что только если нужно включить NumLock,
то тогда бы и прикоснулся к нему, но я уже не помню когда мне такое
могло бы понадобится. Первое что во всех магазинах мне бросается в
глаза, так это как-раз то, что продавец тянется к цифровому блоку для
ввода.

4 years agoHISTORY_IGNORE в zsh
Sergey Matveev [Mon, 11 May 2020 09:21:50 +0000 (12:21 +0300)]
HISTORY_IGNORE в zsh

Некоторые команды я не хочу сохранять в истории интерпретатора. Как
минимум, просто чтобы не спалиться на том, что я качал какой-нибудь
видеоклип или прочее. Достаточно поставить пробел в начале и она не
будет сохранена. Но годы спустя я заметил что например команда ytdl
вообще всегда у меня набирается с пробелом. Как оказалось,
HISTORY_IGNORE переменная в zsh спокойно позволяет задавать шаблоны
чего надо игнорировать. zsh нарадоваться не могу всё же -- крайне
удобнейший shell 100% стоящий перехода на него.

4 years agoПосмотрел "Разрыв"
Sergey Matveev [Sun, 10 May 2020 12:59:32 +0000 (15:59 +0300)]
Посмотрел "Разрыв"

https://ru.wikipedia.org/wiki/%D0%A0%D0%B0%D0%B7%D1%80%D1%8B%D0%B2_(%D1%84%D0%B8%D0%BB%D1%8C%D0%BC,_2003)
Офигеннейшая комедия! Как-будто посмотрел фильм такого же уровня как
какие-нибудь "Карты, деньги, два ствола". Вроде весь фильм просидел с
улыбкой, хотя... Колин Фаррел играет конченого отморозка. Однозначно
рекомендовать могу каждому!

4 years agoПосмотрел "Убийство священного оленя"
Sergey Matveev [Sun, 10 May 2020 12:56:19 +0000 (15:56 +0300)]
Посмотрел "Убийство священного оленя"

https://ru.wikipedia.org/wiki/%D0%A3%D0%B1%D0%B8%D0%B9%D1%81%D1%82%D0%B2%D0%BE_%D1%81%D0%B2%D1%8F%D1%89%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BE%D0%BB%D0%B5%D0%BD%D1%8F
Очень страшный и стрёмный фильм! Причём пугало в нём больше не то, что
происходит, а то какие вещи говорят все эти дети и как говорят. Затянут
правда, на мой взгляд, но как страшилка офигеннен.

4 years agoВспоминая установку Quake3 под FreeBSD
Sergey Matveev [Sat, 9 May 2020 13:34:00 +0000 (16:34 +0300)]
Вспоминая установку Quake3 под FreeBSD

В Quake3 я очень много в своё время и однозначно и точно мог считаться
"отцом" в нём. Но по началу происходила игра у меня под Windows. Позже я
образумился и у меня появилась FreeBSD. Помню что это был AMD K6-2 233Mhz
компьютер. Quake3 на CD-ROM купить то можно было без проблем, но для
Windows. Для FreeBSD версии официально не было, но эта ОС вполне себе
хорошо умеет эмулировать Linux, для которого существовала версия q3.
Высокоскоростного Интернета штатно дома ни у кого не было и попасть в
него можно было через dialup. Сам q3 для Linux занимал 20 с чем-то
мегабайт -- это сам исполняемый файл, движок игры, к которому
самостоятельно надо было подкладывать карты, текстуры и тому прочее, но
это уже можно взять из Windows версии.

Телефонная линия у меня тогда была ужасна. Но всё же карточки РОЛ я
приобретал время от времени. В итоге пришлось качать этот q3 почти всю
ночь: тогда и качество связи получше, и дозвониться проще. Но сидеть
приходилось рядом и наблюдать, так как могли быть обрывы, timeout-ы
довольно большие чтобы человек раньше мог понять что всё обломалось и
проще перезапустить ftp скачивание (докачивание). Тогда я ещё в школе
учился и уже пора было выходить, уже утро наступило. И как-раз за минут
десять до выхода этот файлик в 20+ метров у меня докачался. Особо я
иллюзий не питал что оно просто так возьмёт и запуститься под FreeBSD,
но оно именно так и произошло без проблем -- радости не было предела. А
потом ещё и обнаружил что эмулированный Linux файл под FreeBSD выдаёт
где-то на 10% больше FPS-ов (уже тогда Linux был какахой).

Годами позже я и в Doom3 играл тоже в Linux версию. Когда я приобрёл
ThinkPad T420, то в нём был процессор с интегрированной графикой,
которой по мощности хватало для этой игры. В день покупки я всю ночь до
самого утра просидел проходя этот Doom3. Чуть ли не спустя десять лет
после его выхода я всё же поиграл :-). Видеокарты отдельной мощнее чем
GeForce MX200 у меня никогда не было, но её хватало для GTA3 и Half-Life 2:
одни из последних игр в которые я вообще играл у себя. А потом желание
во всякие новинки играть как-то пошло на убыль, да и на железо тратиться
дорогущее жалко было. Были мысли чтобы сделать себе отдельный ПК чисто
для игр, но в 0c3bab7434eb5c44e921932e6b22169622f99267 уже поминал что
поиграв как-то у друга в GTA5 и Doom4, получив удовольствие, я всё же
понимаю что мне хватает несколько раз в них поиграть, а дальше уже не
захотелось бы.

4 years agoОгромный список откуда взялись различные имена для софта
Sergey Matveev [Sat, 9 May 2020 13:30:49 +0000 (16:30 +0300)]
Огромный список откуда взялись различные имена для софта

https://wiki.debian.org/WhyTheName
Интереснейшее чтиво! "caca", как и ожидается, действительно означает
какаху по французски. Описания очень забавные у многих в списке!

4 years agoxz не всегда сжимает лучше gzip
Sergey Matveev [Fri, 8 May 2020 13:58:22 +0000 (16:58 +0300)]
xz не всегда сжимает лучше gzip

Есть тут один сертификат, который хочется компактно сохранить (хотя он и
так не шибко большой). xz сжал (-9 и всё такое) чуть чуть хуже. bzip2
ещё хуже. Zstd лучше:

    614 cer
    533 cer.bz2
    436 cer.xz
    408 cer.gz
    395 cer.zst

В общем, не всегда стоит слепо использовать xz. Хотя я почти везде уже
перехожу на zstd, ибо уж очень хорош и у меня реально полно мест где я
прям замечаю разницу по скорости декомпрессии.

4 years agoУказание профилей для mpv
Sergey Matveev [Fri, 8 May 2020 13:29:55 +0000 (16:29 +0300)]
Указание профилей для mpv

https://git.stargrave.org/cgit.cgi/dotfiles.git/commit/?id=e4ad1f1ad2808104f569c2e8ecb20f3c33af9a75
Со времён mplayer у меня было три use-case для многих вещей которые я
проигрываю: вывод на внешнюю звуковую карту, включение нормализации
громкости звука и включение аппаратного ускорения видео.
Для mplayer я в итоге делал: mplayervo.sh, mplayervoaf.sh скрипты
которые запускали mplayer с ускоренным видео и тоже самое, но с
нормализацией звука. В основном вывод на внешнюю звуковую я использую
для музыки и просто в zsh истории у меня сохранялся вызов mplayer -ao ...

В mpv появились работающие профили (в mplayer то ли не работало, то ли я
криворук и нетерпелив) и все эти случаи можно включать как --profile=...
Видеоускорение случай отпадает: mpv автоматически его сам включит. Но
вот задавать --profile=volnorm, --profile=extaudio геморройно. Писать
скрипты .sh как я делал для mplayer тоже как-то не трушно совсем.

В итоге написал простую обёртку ("mp"), которая заглавные двухбуквенные
аргументы заменяет на --profile=...:

    #!/usr/bin/env perl
    exec "mpv", map { s/^([A-Z][A-Z])$/--profile=$1/ ; $_ } @ARGV;

И я могу написать mp AO ... и будет вывод на внешнюю звуковуху, хочу при
этом нормализацию звука: mp AO VN ... Идея тупейшая, но я не понимаю
почему я за столько лет не додумался до неё сразу же. Да и "mp" набирать
куда быстрее.

4 years agoGoing NoPhone
Sergey Matveev [Fri, 8 May 2020 08:23:47 +0000 (11:23 +0300)]
Going NoPhone

https://libreplanet.org/wiki/Going_NoPhone
https://replicant.us/freedom-privacy-security-issues.php
Вот такое вот движение/проект есть -- перестать носить с собой
радиопередатчики с проприетарными прошивками. А страница на Replicant
очень хорошо поясняет про проблемы даже если установлена СПО ОС.

4 years agoМоя жизнь в институте и движение свободного ПО
Sergey Matveev [Thu, 7 May 2020 17:53:06 +0000 (20:53 +0300)]
Моя жизнь в институте и движение свободного ПО

Разбираясь в документах, увидел фотографию со Столлманом
(сфотографировал в 33195d60e850934e49f0d4514a08df544ce40257).
Вспомню свою историю учёбы в институте как борца за свободное ПО.

К продвижению СПО это не относится, но свою первую курсовую (не уверен
была ли это курсовая, так как первый семестр) делал в Groff (GNU troff),
используя и eqn, и tbl (до сих пор отличнейшая штука:
f445f28611aafab4883fd15795498f45bf5ca239) и pic. В итоге запомнилось что
я не смог подключить/сделать не моноширинный шрифт кириллический в нём и
сдавал моноширинным, что выглядело уж очень old-school, но я не специально.

Следующая курсовая уже содержала кучу формул (теормех). Я взялся её
делать в OpenOffice, но довольно быстро рехнулся от набора математики в
нём. Тогда я слышал про TeX/LaTeX, но, как и полагается классическому
студенту раздолбаю, начинал делать я её запоздало и времени на изучение
новой системы у меня не было. Поэтому я в TeX набирал только формулы,
рендерил это, делал screenshot страницы с кучей формул и в виде картинок
вставлял в OpenOffice документ. Ад, но это реально было быстрее чем
набирать по "родному" в OpenOffice. Благо, так я обосрался только один
раз. До конца института дальше я делал всё только в LaTeX полностью.
Диплом мой состоял из кучи Makefile-ов, каких-то скриптов и вовсю
используемого LaTeX со всякими BibTex и прочим. За всю свою жизнь я не
сделал ни одной презентации не в Beamer, не считая плагинов для Vim-а
где я сделал несколько работ:
https://git.stargrave.org/cgit.cgi/vimslides.git/tree/README.slides

Само собой, я не сдал ни один Word или Excel документ. PDF-ки и исходный
текст который я показывал особо любопытствующим преподавателям, поясняя
что если им надо что-то отредактировать и поправить -- пожалуйста. Кроме
того, в МАИ есть своё издательство, в котором официальным форматом в
котором принимаются книги для печати был (La?)TeX. К сожалению, в 2000-х
начали принимать и в Word формате.

Так как я инженер-технолог, частично и конструктор, то у нас была тьма
чертежей (и два года инженерной графики!). На инженерной графике нужно
было делать всё от руки. Но вне неё, безусловно, любой человек будет
делать на компьютере. Абсолютно все чертежи делал в QCad. Открывать DWG
файлы, штатно производимые AutoCAD-ом он не мог, но поддерживал DXF, в
который AutoCAD мог экспортировать. В итоге особо проблем с обменом
чертежей не было.

Программирование было только на первом курсе (вроде) и это был Fortran.
Вообще язык для своей задачи неплохой: инженер, не особо смыслящий в
ЭВМ, должен мочь с его помощью сказать какие расчёты (численные методы
например) он хочет произвести, чисто инженерные числодробления. И
Fortran реально очень здорово подходит для этой задачи. C не вариант --
слишком низкоуровевый. Если кто-то считает что так можно и про Python
было бы сказать что он хорошо подходит инженеру, но его не выберут
потому что он в тысячи раз медленнее C, то к Fortran-у этот аргумент не
относится: тупейший простейший код перемножения матриц (несколько
циклов, простая арифметика) GNU Fortran-ом компилируется в программу
которую я не смог обогнать написав её на чистом C. Безусловно мои
познания и сейчас в C не очень велики, но как бы я не пытался что-то
сделать, но gfortran всё равно уделывал по скорости gcc программу.
Причём нам конечно же рассказали про F77, где фиксированные отступы и
заточенность под перфокарты, но в основном потом писали на куда более
человеческо удобоваримом F90. Серьёзно, если бы сейчас мне нужно было бы
сделать быструю (и это главное) числодробилку, то я бы снова взял в руки
Fortran, хотя с первого курса и не брав его в руки, но меня это не
пугает ибо он простой.

Дальше нас учили и показывали Mathcad, Maple, Matlab, Simula (если
правильно помню название). Mathcad с самого начала не понравился. Maple
с самого начала понравился, ибо нормальный ввод хотя бы, а не вовсю
визуальный как в Mathcad. Насколько помню, Maple штатно вообще в
программу не входил и это личное желание расширить кругозор студентов
преподавателя Алябьева было. Имени не помню (я вообще на имена плох),
все его по фамилии называли между собой. Безгранично уважал этого
человека, поклон ему! Maple умел символьно решать интегралы и нам,
студентам, это было очень кстати.

Но тогда я уже заразился движением СПО! Использовать всё вышеназванное
не мог по двум причинам: у меня не было Windows, оно всё не свободное.
Как и AutoCAD аналогично и всё остальное. В итоге для Maple была
отличная СПО замена в виде Maxima. Полноценной замены на тот момент
современному Matlab не было, но GNU Octave даже обратно совместим с его
более старыми версиями. Вся работа по Mathcad проходила в классе и дома
ничего по нему выполнять не надо было -- поэтому у меня проблем с его
сдачей не было. Maple вообще чисто факультативный и тоже вроде только в
классе достаточно его было использовать. А вот по Matlab были задания.
Делал я всё в GNU Octave и какого-то функционала там не хватало и
приходилось самостоятельно писать из её компонентов (на самой Octave)
недостающие части. Выполнение работы занимало гораздо больше времени чем
у одногруппников, но я принципиально, используя только СПО, делал нужные
работы (в принципе, являющиеся Matlab-compatible).

Был курс по какой-то экономике и там были задачи оптимизации. Нам
выдавали на дом их решать с помощью Excel-а, в котором какой-то
функционал для этих задач имелся. В OpenOffice я уже не помню, но вроде
функционала не было такого. Но мне же надо выполнить задание? В Excel
оно выполняется быстро: нужно просто грамотно составить таблицу исходных
данных, запустить оптимизацию, дальше правильно интерпретировать
результат -- за полчаса вроде всё спокойно делалось. Я же писал
программу на Python (одна из первых на этом языке) со всякими numpy
(scipy?). Заняло это не один день в итоге, но задачу выполнил. А кроме
этого, ещё написал на несколько страниц документ о том, почему
заставлять (хотя он и не заставлял, просто предлагал, но у меня и не
было наезда как такового) использовать проприетарное ПО в учебных
заведениях не есть хорошо. Думал что будет срачь с преподавателем
немолодым (выскочек то они особо не любят), но... он с интересом
прочитал его, уважил мою мнение и в целом согласился, не знал про всю
эту тему свободного ПО.

Причём, для этой задачи оптимизации надо было визуально построить...
даже не знаю как это называется, но какие-то схемы с кучей
кружочков/квадратиков с заполненными рассчитанными значениями. Что тоже
требовало время. Я этой программой генерировал исходник для GraphViz-а
который это отлично рисовал. На вход программа принимала CSV. В итоге в
него достаточно было внести значения любого человека, через секунды
получить картинку на экране которую перерисовать и сдавать работу.
Одногруппникам и делал их задачи ею.

Был у нас курс по аэрогазодинамике. Интереснейший предмет! В конце надо
было сделать курсовую с расчётом какого-то момента для спускаемого
аппарата: вроде бы понять под каким углом он должен заходить в атмосферу
чтобы всё было тип-топ. Уж тупо не помню под каким софтом преподаватель
это предлагал нам сделать, но вроде бы Ansys Fluent. Задача в следующем:
нужно сделать модель аппарата, дальше итеративно рассчитывать для неё
какие-то параметры (ух, совсем не помню какие) в зависимости от того,
под каким углом он как бы войдёт в атмосферу. Ну и проанализировать
результаты и сделать вывод как его надо вводить в атмосферу. Цифровую
модель аппарата нам дали. В общем делать расчёты красивые как вот на
этих картинках в статье: https://en.wikipedia.org/wiki/Computational_fluid_dynamics

Ну не буду же я это делать в богомерзком несвободном ПО? Хотя задача уже
совсем узкоспециализированная -- это не замена какого-нибудь там Matlab
или Word. Но нашёл я OpenFOAM, ParaView. 3D модель аппарата в каком-то
проприетарном формате, поэтому мне пришлось ещё и как-то её "рисовать",
да ещё чтобы это можно было в этот OpenFOAM засунуть для расчётов. А ещё
у меня не было всех этих параметров атмосферы, которую преподаватель в
виде некоего preset-а (насколько помню) выдал. Это тоже пришлось с нуля
в ручную моделировать. Это не очень правильно, но вообще сдать курсовую
было легко, просто введя данные в некую выданную blackbox-программу и по
результатам построить графики в Excel. Мне же пришлось реально понимать
и вдаваться в подробности работы всего этого, ведь OpenFOAM это очень
такая низкоуровневая штука которая не является софтом для расчёта
спускаемых аппаратов, а софтом для расчёта аэро и гидродинамики в целом.
Это была САМАЯ адовая с точки зрения потраченного времени а нагрузки
работа! Мне приходилось писать тысячи строк на Perl, сколько-то на C++,
чтобы выразить в этом OpenFOAM что я от него хочу, чтобы смоделировать
вход СА в атмосферу, указать как его разбить на сетку, как производить
вычисления, что из себя представляет газ и как он воздействует на
аппарат. Дикое количество расчётов я делал на Perl, конвертирования
данных, преобразования и прочее. Штатно вообще многое можно и нужно было
делать на C++, но для меня это чересчур было большим порогом вхождения и
если я мог хоть какие-то тучи чисел получить для каждой "клеточки" сетки
аппарата, то я делал кучу postprocessing-а уже на Perl-е. И ещё мне
запомнилось что сам по себе OpenFOAM штука ресурсоёмкая и у меня
некоторые операции занимали по паре суток расчётов.

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

Это всё было до четвёртого курса включительно. Дальше аэрогазодинамики
или подобного не было, ибо всё больше уже по специальности технолога.
Тогда я открыл такой замечательный софт как SAGE (он тогда относительно
недавно только и появился). Это такой комбайн из десятка самого разного
софта математического и связанного между собой Python-ом. Я могу на
Python этому SAGE задать какие-нибудь вычисления для проделки в Octave,
её результаты засунуть в Maxima (а на самом деле я могу и не знать что
именно там внутри будет запущено), потом как-то визуализировать и ещё
постобработать где-нибудь, а между всем этим и на самом Python с данными
что-нибудь поделать. Кроме этого, SAGE умел интегрироваться с LaTeX. В
итоге, штатно многие курсовые (например по строймеху, сопромату) это
было очень очень много вычислений, формул, уравнений, интегрирования и
прочего. С SAGE-ем я мог абсолютно всё всё всё проделывать прямо внутри
LaTeX документа. То есть я прям буквально в LaTeX ввожу какие-то
формулы, данные, а когда напишу "в результате получаем", то SAGE сразу
же мог подставить результаты в это место. Причём можно было выводить и
промежуточные результаты. И речь не просто про числа, а про
промежуточные результаты решения уравнений или символьного
интегрирования -- и все эти интегралы и диффуры выводились в LaTeX
формате, красиво, символьно. Это было потрясающе круто и удобно.

Помню что было и много чертежей или эпюр для сопромата на которых всякие
эти результаты надо предоставить. По сути они очень похожи и однотипны.
Я делал SVG внутри которого прям буквально менял геометрию на основе
результатов вычислений SAGE-а. Помню что строймех в итоге моя программа
делала для многих одногруппников: достаточно было внести какие-то
начальные данные (числа), ФИО студента, а дальше через минуту на выходе
получить PDF-ку со ВСЕМИ расчётами, даже символьными, графиками,
картинками (и все они для каждой своей задачи правильно отрисованы) и
прочим. Преподаватель удивлялся чего это куча работ выглядит прям
слишком уж одинаково (именно выглядит -- расчёты то везде совершенно
разные).

Ноутбук очень помогал со всем этим делом! Всегда и везде будут придирки
к работам, и их прямо на месте или в библиотеке можно всегда было
поправить. Когда я учился, то у нас были люди которые в Word только
текст вводили, а дальше оставляли много пустого пространства для того
чтобы от руки там математику написать. Многие работы вообще от руки
делались полностью. Я уже тогда ненавидел что-либо делать от руки и
только всё в цифре. Сколько я чертил Thinkpad R60e, eeePC, и Lemote
Yeeloong ноутбуках! Последней штукой я особо гордился: ноутбук с
полностью свободным ПО, MIPS64 процессором -- SAGE, LaTeX, QCad всё на
нём отлично работало! Но для черчения мышку с собой главное было не
забыть. Но я после первого курса, с лета, уже полноценно работал и мог
себе позволить покупать эти дорогостоящие штуки, тогда как ноутбуки у
немногих были.

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

Один семестр у нас был AutoCAD где-то на начальных курсах. И в конце
нужно было именно в AutoCAD сдать какую-то работу. Преподавали нам его в
учебных компьютерных классах конечно же. Но работу для сдачи делать
предполагалось делать дома. У меня тогда что-то типа конфликта возникло
(что у меня нету AutoCAD дома и точка), но мне выделили один раз время
после занятий в учебном классе, чтобы я там на их компьютерах выполнил
задание. Ведь, в общем случае, я и компьютер не обязан иметь дома. Тем
более i386 архитектуры. Тем более с Microsoft Windows. Тем более с
Microsoft Office, AutoCAD и прочим. Для студентов у Microsoft были вроде
программы по бесплатному получению их софта для образовательной цели. Но
компьютер же мне бесплатно никто не выдаст. Да и AutoCAD у меня сомнения
что можно было бы получить бесплатно студенту. То бишь, я же не
отказывался выполнять задания в проприетарных программах, раз этого
хотят -- просто у меня нет этих небесплатных (и вообще очень недешёвых)
проприетарных программ. Но требование показать умение работы именно в
конкретной программе было лишь один раз с этим AutoCAD-ом.

Один знакомый вкинул как-то конкурс на создание виртуального музея...
чего-то там, уже не помню чего. Мне не понравилось что этот конкурс
требовал приёма документов в виде (вроде бы) Photoshop файлов. Я им
письмо что это типа неправильно требовать для такого дела использования
несвободного ПО. Мне ответ. От меня ещё письмо. В общем, дошло до того,
что я со своим другом (а он любит и шарит в дизайне и всём таком)
приняли участие в конкурсе, сделали что-то на Plone CMS и получили призы
за "лучшее решение по наполнению сайта", за техническую реализацию (или
что-то типа того). В качестве приза я получил ноутбук нехилый, который
продал (у меня был свой ThinkPad получше) другу: в прошлом году он
сообщал, что ноутбук до сих пор используется и жив.

Одна знакомая предложила подработку по написанию каких-то сайтов. Ну а
для начала надо было написать CMS под ним. Тогда я трогал PHP и...
говорил что за AJAX технологией будущее и сайт активно использовал этот
AJAX, а также какой-то XML движок/парсер броузера. Я этот движок даже
выкладывал на SourceForge и у меня возник конфликт потому что заказчик
не думал что это будет свободным ПО. Короче два часа (насколько помню) у
нас были переговоры где он упрашивал меня не делать его свободным. Ибо
вообще-то ему нужны готовые сайты, а как уж они там будут созданы,
используя уже имеющиеся CMS, свою наработку или ещё какие инструменты,
его не должно было волновать. В итоге работа продолжилась, но оказалось
что нас в любом случае хотели с другом кинуть (не заплатить за работу),
так что тот человек остался ни с чем, а мир получил крайне быстрый и
эффективный по трафику движок CMS, а я с другом много опыта. Даже не
помню использовал ли его кто, кроме меня, но сейчас движок я конечно уже
удалил за неактуальностью.

На работу меня заставили пойти из-за того, что на первом же курсе сдал
матан на два. Предполагалось что я поработаю только лето. Когда
устраивался, то договорился о зарплате в $300. В итоге я за месяц
написал (m0n0wall проект был в основе web-интерфейса) прошивку для
криптомаршрутизатора, который в итоге активно продавался и был
сертифицирован (ФСБ/ФСТЭК/whatever для криптографии). Но свои $300 я не
получил -- видя как идёт у меня работа, мне сразу же стали платить $700.
Само собой, на работе я остался и проработал и после окончания
института, став под конец начальником отдела RnD. При этом, гендиректор
очень уважал open-source и хотел вносить вклад в него: почти всё что
было разработано в компании становилось свободным ПО, что мне тоже
крайне радовало что я вносил в СПО вклад.

Вообще время в институте -- лучшая часть моей жизни! И успешная работа
программистом, и любимая девушка (с начала второго курса и до получения
диплома я с ней был) и десятками посещение грайндкорных концертов, и
попытка поступления на службу в ФСБ (а это уйму времени!), борьба за
использование свободного ПО, куча времени проведённого с друзьями
одногруппниками (куда с ними только не ходил и не проводил досуг
(нередко и прогуливая работу)!). Мне кажется я был на порядки добрее,
веселее и интереснее как человек. Хотя... написав всё это, может я и
прежде был всё таки, в первую очередь, дичайшим занудой и упёртым
беспринципным бараном :-)? А да и ладно -- я себе тогда нравился!

4 years agoСон в режиме самоизоляции и wavelet-ы
Sergey Matveev [Thu, 7 May 2020 17:37:39 +0000 (20:37 +0300)]
Сон в режиме самоизоляции и wavelet-ы

Больше месяца я вот считанное количество раз выходил из дома только до
магазина и банкомата. То бишь вне квартиры был суммарно наверное меньше
часа времени. Отметил что вот последнее чем занимался перед сном, то и
снится. Причём это мог быть сущий бред мелочной какой-нибудь, но
впечатление что мне всю ночь снится как я в FreeCiv делаю торговые
маршруты, или расставляю assert-ы в C коде. А недавно перед сном я читал
кучу статей про wavelet сжатие изображений (особенно
https://habr.com/post/168517/ понравилась понятностью и простотой) и
мне, как будто, всю ночь снилось что я занимаюсь расчётами этого
преобразования Хаара. Даже грустно стало: неужели при самоизоляции
настолько мало что ли поступает в голову информации что ему нечем больше
заняться как об этом думать и вертеть в голове?

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

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

4 years agoПродолжение зависания сетевухи
Sergey Matveev [Thu, 7 May 2020 16:02:49 +0000 (19:02 +0300)]
Продолжение зависания сетевухи

Очередное продолжение b323c605bb9e31b2807dc3769ddb208c5032dbb4. Сейчас у
меня уже не было большого трафика, но было много параллельных HTTP
запросов наружу. Ну и начал re0 DOWN/UP с link-ом делать. А ведь
буквально вчера меня посещали мысли какие же всё таки клёвые сервачки у
меня: сколько им уж лет, работают постоянно 24/7, но ВООБЩЕ никогда
ничего ни разу с ними не происходило нештатного. Ok, кроме плохих
контактов SATA backblane (или кабелей до них), но это, так сказать,
штатное и я туда не раз лазил в эти места.

4 years agoОбновил irssi и добавил пару скриптов
Sergey Matveev [Thu, 7 May 2020 15:59:25 +0000 (18:59 +0300)]
Обновил irssi и добавил пару скриптов

В новом irssi OTR плагин идёт уже из коробки. Хотя... я не помню уже
когда последний раз (было ли это за последние два года то?) с кем-либо
переписывался с его использованием. Ещё добавил скрипт:
https://github.com/irssi/scripts/blob/master/scripts/go.pl который очень
просто позволяет по названию окна (хотя бы части) прыгнуть сразу на него
(у меня окон бывает более 20 открыто иногда). И ещё
https://github.com/irssi/scripts/blob/master/scripts/logresume.pl
который показывает из лога с жёсткого диска последние строки истории.

4 years agoУзнал новое слово: теледильдоника
Sergey Matveev [Thu, 7 May 2020 15:22:55 +0000 (18:22 +0300)]
Узнал новое слово: теледильдоника

https://www.linux.org.ru/news/opensource/15688667

4 years agoФотографии подписей Брюса Шнайера и визитки Ричарда Столлмана
Sergey Matveev [Thu, 7 May 2020 14:23:06 +0000 (17:23 +0300)]
Фотографии подписей Брюса Шнайера и визитки Ричарда Столлмана

http://www.stargrave.org/photoes/sign-liars.webp
http://www.stargrave.org/photoes/sign-goliath.webp
http://www.stargrave.org/photoes/card-rms.webp
http://www.stargrave.org/photoes/sign-rms.webp
Книжки Шнайера у него же прямиком и заказывал. Столлмана перехватил в
одном месте, дал ему свою визитку (с OpenPGP отпечатком) ну и он вскоре
подписал мой PGP ключ.

4 years agoНашим военным запретили пользоваться гаджетами на службе
Sergey Matveev [Thu, 7 May 2020 09:16:03 +0000 (12:16 +0300)]
Нашим военным запретили пользоваться гаджетами на службе

https://habr.com/ru/post/500790/
https://roskomsvoboda.org/58084/
Так и хочется сказать: "давно пора!". Я воспринимаю все эти смартфоны
(или другие устройства в которых тот же самый Android может стоять),
как некий акт предательства, когда набортный Android с кучей софта
упорно занимается передачей всего чего только можно. А в довесок к
этому, пользователи ещё и всяких WhatsApp-ов и Telegram-ов наставят, где
уж вообще кирдык в плане безопасности.

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

4 years agoЦелый сайт посвящённый Lenna -- самой узнаваемой девушке в ряде кругов
Sergey Matveev [Tue, 5 May 2020 15:18:44 +0000 (18:18 +0300)]
Целый сайт посвящённый Lenna -- самой узнаваемой девушке в ряде кругов

http://www.lenna.org/

4 years agobpfTrace -- наконец, полноценная замена Dtrace в Linux
Sergey Matveev [Tue, 5 May 2020 13:20:24 +0000 (16:20 +0300)]
bpfTrace -- наконец, полноценная замена Dtrace в Linux

https://habr.com/ru/company/oleg-bunin/blog/500456/
Даже в статье написали что это всё спустя 15 лет появилось (наконец то)
в GNU/Linux. В FreeBSD DTrace с начала 2008-го года уже есть. В
GNU/Linux... ну ждать ещё несколько лет пока оно (bpfTrace) прососётся в
дистрибутивы и станет хоть как-то популярным.

4 years agoКритика статьи с "подвальчика хакера"
Sergey Matveev [Tue, 5 May 2020 12:52:53 +0000 (15:52 +0300)]
Критика статьи с "подвальчика хакера"

https://hacker-basement.ru/2019/08/23/kryptografia-dlay-hakerov-algorytmy-shifrovaniy/
Написал тут письмо автору лживого вброса на тему Кузнечика:

    Увидел вашу статью: [...]
    и бросилось в глаза ваше описание алгоритма Кузнечик, с явно искажённым
    и не достоверными фактами.

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

    Что такое "метод обратного проектирования" я, как хоть как-то
    разбирающийся в криптографии человек, не знаю, но наверное речь про то,
    что таблицы перестановок (Sbox) не были сгенерированы случайным образом,
    как заявлялось. Это действительно так. Но... какое это имеет отношение к
    безопасности шифра и было ли хоть где-то доказано что оно негативно
    сказывается на безопасности? Более того, Sbox-ы в общем случае и не
    обязаны быть случайными -- это просто часто удобнее, но не более, а
    часто даже будет вредить безопасности (подробнее можно в книгах Брюса
    Шнайера про это прочитать). Почему метод генерирования Sbox-а не был
    открыт и сообщён? Да, неприятно, косяк/раздолбайство, но какое это имеет
    влияние на стойкость шифра?

        алгоритм генерации S-блока перерисован с Белорусского шифра BelT разработанного в 2007 году

    На что влияет данный факт? Огромное количество блочных шифров использует
    сеть Фейстеля. Огромное количество хэш функций строится на основе
    Merkle–Damgård, у которого есть неприятные особенности и при не
    правильном обращении будут проблемы (поэтому есть HMAC конструкция из-за
    этих особенностей), но это не мешает столь распространённым SHA1/2 его
    использовать. Но ведь к безопасности SHA2 нет нареканий?

        Ещё чуть позже его же взломали атакой “встреча посередине”.

    А это уже сильнейшее искажение фактов. Во-первых, просто даже судя по
    странице Wikipedia, взломали не его, а 5 раундов. Из 10. При этом
    сложность 2^140, требующую памяти 2^153 и 2^113 данных. У кого-либо
    могут возникнуть опасения что любое из этих чисел достаточно мало чтобы
    сомневаться об уровне безопасности этого... 5-раундового шифра? Напомню
    снова, что в Кузнечике 10 раундов.

    А то ваше описание этого алгоритма выглядит как: создали какое гос-говно
    которое за пару лет вообще сломали, что, мягко говоря, далеко от
    истины и плохо пахнет. Почему вы не упоминаете тогда о тьме атак на
    AES, Blowfish, Twofish? Практически все блочные (тем более
    потоковые!) шифры взломаны. С точки зрения криптографии они именно
    взломаны -- существуют атаки более быстрые чем простой brute force.
    Насколько помню для AES (опять же, лень искать) есть атака которая в
    несколько раз позволяет быстрее атаковать 128-битные ключи, то есть...
    уровень безопасности вместо 128-бит становится 126.5 бит (насколько
    помню). Взломан? Да. Стоит ли об этом париться? Очевидно что при таком
    уровне атаки -- нет.

    Почему упомянули Кузнечика, но не упомянули Магму, которая в том же
    самом стандарте вместе с ним сразу же и идёт (Кузнечик обзывается
    128-бит шифром, а Магма 64-бит)? Она по сути тот же самый ГОСТ 28147-89
    шифр, который ещё в 70-х годах был разработан. Подчеркну: 70-80-е года,
    когда в США ещё и 3DES не было, а Магма/28147-89 имела 256-бит ключ.
    Взломана ли она? Безусловно! Насколько помню, лучшая атака имела
    сложность более чем 2^200 (про требования памяти и прочего не помню). До
    сих пор Магма остаётся алгоритмом с одним из высочайших уровней
    безопасности среди всех алгоритмов что стандартизовывались.

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

4 years agoCACert.org вновь выдаёт подписи
Sergey Matveev [Tue, 5 May 2020 08:29:17 +0000 (11:29 +0300)]
CACert.org вновь выдаёт подписи

http://blog.cacert.org/2020/05/signer-is-working-again/
Но я пожалуй оставлю всё как есть у меня сейчас. Что-то лень снова всё
менять, а сейчас shiny ECC алгоритмы везде.

4 years agoFLIF, FUIF, PIK, JPEG XL
Sergey Matveev [Mon, 4 May 2020 16:06:57 +0000 (19:06 +0300)]
FLIF, FUIF, PIK, JPEG XL

https://github.com/FLIF-hub/FLIF/issues/549
Судя по всему, FLIF, который я упоминал в
2447d1ec8c6eb4d00799cb84b56dec061eb9c292 уже мёртв.

4 years agoВпервые прочистил клавиатуру (полностью)
Sergey Matveev [Mon, 4 May 2020 15:35:53 +0000 (18:35 +0300)]
Впервые прочистил клавиатуру (полностью)

Одна кнопка стала не всегда срабатывать. Пока снимал клавишу, то решил
уж вообще и всю клавиатуру продуть и прочистить. Оказывается в ней
столько волос может накопиться! Помню, мать говорила что ещё в течении
полугода из ковров мои волосы выпылесошивала, когда я съехал. Клавиатуре
этой где-то лет пять -- только сейчас вот возникла хоть одна проблема.
Прочистил -- всё снова нормально. Filco конечно не дешёвые, но сама
надёжность и качество. Полностью стоит своих денег. Это единственный
компонент без которого нельзя работать.

4 years agoПонравился ответ
Sergey Matveev [Sun, 3 May 2020 15:21:25 +0000 (18:21 +0300)]
Понравился ответ

https://vitus-wagner.dreamwidth.org/2162327.html

    А ведь на вопрос:
    - Откуда вы взяли, что три великих добродетели программиста это Лень,
    Гордыня и Нетерпение?
    - От "Верблюда" -- вполне содержательный ответ.

4 years agobaresip сборка
Sergey Matveev [Sat, 2 May 2020 18:54:05 +0000 (21:54 +0300)]
baresip сборка

В 1f9f27df65faff2aff2cc88de0cb2aac9de3f88c писал что pkg-config выглядит
как ./configure-killer. baresip на практике демонстрирует что без
проблем собирается на чистых Makefile (GNU) внутри которых тьма опций
автоматически определяется pkg-config-ом. У него 2-3 десятка зависимостей,
многие опциональны -- без проблем всё pkg-config-ом определяется.

4 years agoПрочитал "Убийство на улице Морг" Эдгара По
Sergey Matveev [Sat, 2 May 2020 14:08:55 +0000 (17:08 +0300)]
Прочитал "Убийство на улице Морг" Эдгара По

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

5 years agoБольшое обновление страницы "Мультимедиа форматы"
Sergey Matveev [Fri, 1 May 2020 13:30:08 +0000 (16:30 +0300)]
Большое обновление страницы "Мультимедиа форматы"

http://www.stargrave.org/Multimedia-formats.html
Веду её уже продолжительное время, но сейчас таблички добавил краткие.

5 years agoВосхитительная статья о том, как Go разработчик перешёл на JavaScript
Sergey Matveev [Fri, 1 May 2020 12:05:05 +0000 (15:05 +0300)]
Восхитительная статья о том, как Go разработчик перешёл на JavaScript

https://habr.com/ru/company/ruvds/blog/499670/
Ибо это уже зрелый мощный, продуманный и хороший язык.
Не чета молодому и зелёному Go.

5 years agoКодирование 5.1 звука фильма в Opus
Sergey Matveev [Fri, 1 May 2020 10:11:34 +0000 (13:11 +0300)]
Кодирование 5.1 звука фильма в Opus

Если сделать дамп аудио ffmpeg-ом (теперь только им занимаюсь темой
кодирования!) в PCM файл, потом его сжать opusenc-ом, то после сведения
в контейнер с видео, каналы явно на слух становятся другими,
перетасоваными. С ходу у меня так и не получилось ffmpeg заставить
дампить в другом виде (перевернуть, чтобы после Opus-а всё встало на
свои места). С ходу я не очень понял как конкретно они тасуются, чтобы
каким-нибудь sox-ом поменять их вручную местами.

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

    -filter:a "channelmap=channel_layout=5.1" -mapping_family 1

При этом Opus определяет (и вне FFmpeg) что четыре канала типа
полноценных, а два не особо и применяет какую-то оптимизацию: в итоге
оно существенно экономит битрейт для двух каналов.

5 years agoFinal Fantasy: The Spirits Within
Sergey Matveev [Fri, 1 May 2020 10:08:40 +0000 (13:08 +0300)]
Final Fantasy: The Spirits Within

https://en.wikipedia.org/wiki/Final_Fantasy:_The_Spirits_Within
Пока разбирался в дисках, то наткнулся на DVD копию (откуда она у меня?)
сабжевого фильма, аж 2001-го года. Пересмотрел немного: очень графика
впечатляет и анимация. Даже спустя чуть ли не 20 лет, всё равно
невероятно круто выглядит, местами реально фиг отличишь от фотографии.
Да и главная героиня, худовата конечно (ну а что взять с японцев?), но
очень и очень мила и симпатична, в отличии от кучи других компьютерных
женщин типа Лары Крофт, лично меня вообще не привлекающей никогда.

5 years agoCD-диски изменившие мою жизнь
Sergey Matveev [Fri, 1 May 2020 10:06:21 +0000 (13:06 +0300)]
CD-диски изменившие мою жизнь

http://www.stargrave.org/photoes/fbsd-45.webp
http://www.stargrave.org/photoes/fbsd-5x.webp
Разбирался тут в дисках и решил сфотографировать ещё сохранившиеся
дистрибутивы FreeBSD 4.5, а также парочки чуть более поздних версий.
Ещё есть диски Linux Mandrake 7.2, с которой я вообще начал знакомство
не Windows систем, сделал фотографии, но там просто чёрная надпись на
синем фоне и ничего интересного.

5 years agoСумо -- интереснейшая штука
Sergey Matveev [Fri, 1 May 2020 09:58:29 +0000 (12:58 +0300)]
Сумо -- интереснейшая штука

https://youtu.be/_rIcoQkyUdk
На днях, так получилось, но посмотрел несколько турниров по сумо. Плюс
записи всяких ёкодзун (величайших борцов). Основная масса поединков
заканчиваются за 2-3 секунды -- типа 5% от всего времени выхода и ухода
на "ринг". Но бои крутейших выглядят очень здорово, интересно и
захватывающе!

Посмотрел подборки лучших бойцов и заметил что большинство то на самом
деле не настолько уж жирны. Бицуха и плечи -- там видна у всех гора
сплошных мышц. А если где-то во время боя пробегает волна по телу или
напрягается какая-нибудь нога, то там видны десятки килограмм сплошных
накачанных мышц. Полно видео где более мелкие побеждают тех, кто на 50+
килограмм больше весит. Так что для себя сделал вывод что сумоисты это в
первую очередь буквально гора мышц.

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

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

5 years agoЕщё не позавтракал, но чинил lists.cypherpunks.ru
Sergey Matveev [Fri, 1 May 2020 09:01:10 +0000 (12:01 +0300)]
Ещё не позавтракал, но чинил lists.cypherpunks.ru

После того как проснулся, задумался почему у меня с моих рассылок раз в
месяц не приходят уведомления, ведь же глобально для своей учётной
записи, как минимум, включал. В общем, я забыл добавить cron записи. Уж
не знаю точно сколько это времени отсутствовало, но похоже что речь о
годах. Стыдоба? Безусловно. Но вот напрочь забыл о cron почему то, думал
что раз процессы mailman-а запущены, то они наверняка всю работу
подобную и делают.

5 years agoDVD-R(W) vs DVD+R(W)
Sergey Matveev [Thu, 30 Apr 2020 08:19:43 +0000 (11:19 +0300)]
DVD-R(W) vs DVD+R(W)

https://www.youtube.com/watch?v=e1mJv9pxm7M
Вначале кривляния (хотя, насколько понимаю, это стало нормой и
стандартом записи видео для Интернет аудитории) бесят, но дальше идёт
хорошее понятное разъяснение в чём разница между этими двумя форматами.
Как бы я не любил Sony за их постоянное стремление делать всё своё
несовместимое, но +R всё же проще, дешевле, лучше, красивее.

5 years agoПара вечеров с отцом и Deep Purple
Sergey Matveev [Tue, 28 Apr 2020 18:22:47 +0000 (21:22 +0300)]
Пара вечеров с отцом и Deep Purple

https://www.youtube.com/watch?v=OorZcOzNcgE
Сегодня решил послушать старый добрый рок. Всегда не любил Deep Purple
за их отвратительные записи, по сравнению с Led Zeppelin, но играют,
конечно хорошо. В YouTube вот видео "Child in Time" есть, где гораздо
лучше музыка записана, чем на альбоме. Да и здорово поглядеть на великих
музыкантов когда они такие пацаны молодые и хипповые ещё.

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

А ещё как-то было, что отец взял и поставил альбом Чёрного Кофе. И мы с
ним просидели на кровати слушая его и обсуждая. Ничего не делали, кроме
как слушали пластинку, иногда перебрасываясь словами. Было здорово! Без
музыки жизни нет!

5 years agolite.host хостинг
Sergey Matveev [Tue, 28 Apr 2020 11:20:17 +0000 (14:20 +0300)]
lite.host хостинг

https://habr.com/ru/post/499150/
Так как в начале следующего года явно буду вынужден менять свой хостинг
(на текущем у меня уже какой месяц так и не отвеченный тикет об
удалённом доступе к KVM, который не работает у меня), то вот мог бы
рассмотреть и вот такой. Лично мне всегда приятнее знать что за этим,
пускай и более дорогом (±2kруб/год роли не играет) стоит один человек.
Вот только напрягло с ходу одно: https://lite.host/vds/mercury
за IPv6 отдельный адрес по 10руб. То есть, там не выдают /64 сеть? Это
неприемлемый подход, я бы даже сказал не честный, ведь даже домой людям
выдают /64, как минимум. В IPv6 мире выдаются СЕТИ, а не конечные
единичные адреса!

5 years agoОказалось что web-камера у меня работает
Sergey Matveev [Tue, 28 Apr 2020 08:00:18 +0000 (11:00 +0300)]
Оказалось что web-камера у меня работает

Я совершенно не помню как проверял заведётся ли web-камера на ноутбуке,
или даже не делал, будучи уверенным что наверняка потребуются
проприетарные прошивки, но тут что-то моча в голову ударила и проверил.
webcamd запускается, создаёт /dev/video*, mpv av://v4l2:/dev/video0
показывает. Без проблем или хитростей.

5 years agoПосмотрел "Академия Рашмор"
Sergey Matveev [Sun, 26 Apr 2020 13:58:48 +0000 (16:58 +0300)]
Посмотрел "Академия Рашмор"

https://ru.wikipedia.org/wiki/%D0%90%D0%BA%D0%B0%D0%B4%D0%B5%D0%BC%D0%B8%D1%8F_%D0%A0%D0%B0%D1%88%D0%BC%D0%BE%D1%80
Очень понравился этот фильм. Но главный герой крайне бесит своим
поведением. Типа везде суётся, но ничего не умеет, кроме постановок. Но
и получает по заслугам, благо начинает думать о других и фильм
заканчивается очень хорошо. Но вот никогда не понимал этой пиндосской
возможности окончить институт, например хорошо занимаясь спортом и это
способно компенсировать полное неумение варить головой. А тут даже берут
в школу за умение ставить пьесы.

5 years agoПосмотрел "Полный облом" и "Руки-ноги за любовь"
Sergey Matveev [Sun, 26 Apr 2020 12:10:09 +0000 (15:10 +0300)]
Посмотрел "Полный облом" и "Руки-ноги за любовь"

https://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D0%BB%D0%BD%D1%8B%D0%B9_%D0%BE%D0%B1%D0%BB%D0%BE%D0%BC_(%D1%84%D0%B8%D0%BB%D1%8C%D0%BC,_2006)
https://ru.wikipedia.org/wiki/%D0%A0%D1%83%D0%BA%D0%B8-%D0%BD%D0%BE%D0%B3%D0%B8_%D0%B7%D0%B0_%D0%BB%D1%8E%D0%B1%D0%BE%D0%B2%D1%8C
Полный облом -- офигенная комедия! Чем дальше, тем кирдык за кирдыком в
фильме происходят.
Руки-ноги за любовь -- чёрная комедия (но я не против подобных) про
любовь и как её добивается один человек немного необычным способом.
Фильм понравился, но вряд ли бы мог рекомендовать -- не настолько хорош,
в отличии от "Полного облома".

5 years agoПрочитал "Мастер страшного суда" Лео Перуца
Sergey Matveev [Sun, 26 Apr 2020 12:07:46 +0000 (15:07 +0300)]
Прочитал "Мастер страшного суда" Лео Перуца

https://www.e-reading.life/book.php?book=44344
Растянулось прослушивание этой аудиокниги из-за изоляции надолго. Книга
понравилась: держит в напряжении, неведении, к концу прям очень
интересно чем же всё закончится.

5 years agoОснователь Void Linux уходит из проекта и заблокирован на Github
Sergey Matveev [Sat, 25 Apr 2020 09:44:46 +0000 (12:44 +0300)]
Основатель Void Linux уходит из проекта и заблокирован на Github

https://www.opennet.ru/opennews/art.shtml?num=52809
Я Void не использовал, но наслышан что он очень трушный и правильный
(никаких этих сраных systemd и подобного). Если бы пришлось использовать
GNU/Linux, то Void наверное был бы в первой тройке кого я мог бы
рассматривать. Не знаю, может и правда этот человек стал менее
адекватен, а может и действительно вокруг него сплошные идиоты
собрались, но вряд ли это хорошо отразиться на проекте. Насколько
понимаю, началось то с предложения о ревью как в FreeBSD проекте (явно
успешной штуке).

5 years agoFFmpeg нравится, жалею что раньше не стал с ним знакомиться
Sergey Matveev [Sat, 25 Apr 2020 08:28:05 +0000 (11:28 +0300)]
FFmpeg нравится, жалею что раньше не стал с ним знакомиться

Теперь абсолютно все действия, что я раньше делал через mencoder или вот
через mpv, умею делать через ffmpeg. Причём многие действия раньше я
делал за несколько итераций. А тут тупо удобнее. Хотя, документация
далека до совершенства, особенно описание многих параметров. Кодирование
VP8/VP9 через libvpx делается почти полным mapping-ом опций, но не всех.
Мне проще запускать уж отдельно vpxenc. И двухпроходную Theora тоже не
выходит делать, хотя явно нигде не указано что она не может (или явно
может).

В 8cd23c81f604fa104584e08643c2e88cca1f91cd я говорил про вырезание
метаданных. Например вот у меня на входе есть MP4, в котором несколько
звуковых дорожек, которые хочу сохранить, субтитры (тоже сохранить),
видео дорожка, дорожка с картинками (обложка). Последние не хочу. Само
собой никакого MP4 контейнера и метаинформации. Субтитры в MP4TT
формате, которые в Matroska не влезут (надо конвертировать),
перекодируем в ASS. Вообще это делается и mkvmerge без проблем, но
ffmpeg-ом тоже вполне себе просто:

    ffmpeg -i in.m4v \
        -map_metadata -1 \
        -map 0:a -map 0:s -map 0:v:0 \
        -c:v copy -c:a copy \
        -y out.mkv

Сдампить PCM звук из файла (который например ALAC/APE/WavPack/и т.д.):

    ffmpeg -i in out.wav (signed 16-bit LE по умолчанию)
    ffmpeg -i in -f s24le out.raw (конкретный формат звука)

YUV2MPEG2 в YUV444p формате пикселей в stdout и без показа прогресса:

    ffmpeg -v quiet -i in -f yuv4mpegpipe -pix_fmt yuv444p -

В целом всё довольно легко, но постоянно в документации надо сидеть.

5 years agoСтатья про IKEv2 vs OpenVPN
Sergey Matveev [Fri, 24 Apr 2020 19:16:43 +0000 (22:16 +0300)]
Статья про IKEv2 vs OpenVPN

https://habr.com/ru/company/ruvds/blog/498924/
Ох, сколько же ненависти у меня вызывает подобная писанина, приводящая к
мифам и глупостям в головах людей.

    При прочих равных условиях, IKEv2 будет всегда быстрее OpenVPN.

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

    По моим субъективным ощущениям IKEv2 на Windows 10 работает заметно
    отзывчивее чем OpenVPN.

Опять сравнивается IKEv2, вместо IPsec.

    Все современные операционные системы (кроме Android) поддерживают
    IPsec IKEv2 прямо из коробки.

IPsec поддерживают все. IKEv2... GNU/Linux-ы большинство известных мне
дистрибутивов -- нет. FreeBSD -- нет. OpenBSD -- няша, да. Windows, я
слышал что нет, ну может самые распоследние версии.

    Но как клиенту проверить, что подключение не прослушивается, не
    подменяются данные и сервер действительно тот, за кого себя выдает?
    Для этого используются обычные SSL-сертификаты, которые мы привыкли
    использовать для веб-сайтов и HTTPS.

Придираюсь, но это не единственный способ, и далеко не самый безопасный.

    Шаг 2: Установка Strongswan

Если все современные ОС имеют IKEv2 из коробки, то зачем ставить этого
демона то? Ответ очевиден.

    wget https://raw.githubusercontent.com/jawj/IKEv2-setup/master/setup.sh
    chmod u+x setup.sh
    ./setup.sh

Ну, ну, безопасность.

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

Эээ, вы же сами только что что-то скачали и установили strongswan!

Я очень люблю и IKEv2 и IPsec. И я только IPsec у себя и использую. И
считаю что его стоит использовать. Но, когда нету прямой нормальной
связанности компьютеров (IPv6 с глобальными адресами), то, мягко говоря,
проблематично заставить это всё работать за NAT-ом. Плюс, порог
вхождения в IPsec мир существенно выше. Когда понимаешь что там к чему и
зачем: всё легко и просто и удобно и здорово. Но когда это IPv4, где
нельзя на каждый чих по адресу выделить для задачи... нет, IPsec это ад.

5 years agoДьявольские кодеки в ffmpeg
Sergey Matveev [Fri, 24 Apr 2020 18:02:45 +0000 (21:02 +0300)]
Дьявольские кодеки в ffmpeg

ffmpeg -codecs выдаёт табличку где разные однобуквенные
флаги выставляются напротив каждого кодека. Среди всех,
парочка отмечена особо:

    % ffmpeg -codecs G DEVILS
    DEVILS jpeg2000             JPEG 2000
    DEVILS jpegls               JPEG-LS

5 years agoКодирование экрана в lossless
Sergey Matveev [Fri, 24 Apr 2020 17:47:56 +0000 (20:47 +0300)]
Кодирование экрана в lossless

ffmpeg похоже годится для тьмы задач которые я делал mplayer/mencoder.
mpv совсем не нужен ни для чего кроме проигрывания. Декодировать
ALAC/APE -- ffmpeg может. Аналог -ao pcm тоже. Из example его
документации увидел как делается просто запись экрана. Сразу задаюсь
вопросом во что кодировать? Хочется же чтобы потом можно было хорошо
сжать, а источник в идеале должен быть без потери качества.

Об опыте lossless кодеков писал в 748a0008be8dd4408f9366e02a71144acec766a7.
YUV4MPEG2 слишком круто забивает диск. FFV1 очень жрёт CPU. ffvhuff
хорошо подходит: и жмёт вполне себе лучше чем голый YUV4MPEG2 (у меня на
ZFS уйдёт процессорное время всё) и в real-time вполне себе справляется.

Теперь хочется сжать в VP9 lossless, просто ради поиграться. Но хочу
vpxenc утилиту использовать. ffmpeg-ом делаю yuv4mpegpipe вывод и меня
посылают, ибо надо задать формат пикселя. Задаю такой, какой vpxenc
берёт по умолчанию: I420. Да, закодировался lossless, но цвета явно
покорёжены и унылы. Очевидно из-за I420. Указываю I444, ffmpeg опцию
соответствующую, vpxenc ругается что при текущем профиле не
поддерживается этот формат пикселей. Пошёл в исходный код, потом в
Wikipedia: https://en.wikipedia.org/wiki/VP9#Profiles
Действительно, есть разные профили (ну как и в MPEG стандартах) и мне
нужен явно profile 1. Благо в vpxenc это можно указать и всё
закодировалось, действительно без потерь. 800-1000Kbps при всяких top-ах
и переключениях рабочих столов оно где-то тратит битрейта на FullHD.

5 years agoКодирование многоканального звука в Opus
Sergey Matveev [Thu, 23 Apr 2020 20:46:28 +0000 (23:46 +0300)]
Кодирование многоканального звука в Opus

https://wiki.xiph.org/Opus_Recommended_Settings
5+1 канала в WAV хотел вот закодировать в Opus. Начал прикидывать и
искать официальные советы какой bitrate желателен при этом. А думать не
надо. opusenc сам сразу по умолчанию для такого количества каналов
делает 320Kbps -- именно то, что и я запланировал. Документация говорит
что там и особые фишки для объёмного звука имеются.

5 years agompv и YUV4MPEG
Sergey Matveev [Thu, 23 Apr 2020 20:43:02 +0000 (23:43 +0300)]
mpv и YUV4MPEG

Выяснилось что YUV4MPEG который делает mpv, имеет корявый FPS и
libtheora encoder_example такое принимать не хочет. ffmpeg-ом можно
выправить (явно указав руками FPS). Похоже что для темы кодирования
пора полностью мне переходить на ffmpeg. Абсолютно мне его не понятные
опции, но... оно зато работает уж точно (пока только example-ы находил
мне нужные из документации).

5 years agompv... последний релиз что использую
Sergey Matveev [Thu, 23 Apr 2020 18:24:07 +0000 (21:24 +0300)]
mpv... последний релиз что использую

Началось с того, что пытался закодировать в Theora. Не удалось. Точнее
Theora файлы то он делает, но 100Kbps и никак опции влияющие на это
никакие не прокидывает. При этом тот же самый ffmpeg работает. Затем
начал проверять работу VP8 кодировщика. Уже лучше, уже заработал. Но...
когда я пытаюсь сделать двухпроходное кодирование, то он снова не видит
хотя бы опции bitrate и делает плохое качество.

Ладно, чёрт с ним, попробую хотя бы выводить сырое видео для подачи его
напрямую в vpxenc утилиту. Сработало, без проблем. Затем захотел
сбросить звук в WAV PCM файле для кодирования отдельно... и он
coredump-ится. Точнее, если указать --end, то не до конца сбрасывает
содержимое (assert где-то там в коде аллокатора памяти). Если не
указывать, то файл целёхонький, хотя .core всё равно будет. А подобная
штука (--ao=pcm) мне нужна хотя бы для того чтобы декодировать ALAC-и
или какие-нибудь Monkey's Audio (я даже не знаю есть ли для них
отдельные утилиты для работы).

Пошёл в их репозиторий и просто собрал master. Ура! Теперь не падает.
Ради интереса пошёл читать их git log. Encoder теперь deprecated. Ладно,
терпимо, ибо он всё равно не работал у меня, годился только для вывода
сырого видео. Но вот что не ладно, так это то, что они удалили поддержку
OSS! В коммите сказано что SDL будут юзать. Зашибись, а как в нём
выбрать аудиоустройство то хотя бы? В mpv не нашёл для этого ручек. То
есть, уже текущий master mpv не способен у меня проигрывать звук.

Поэтому обновляться до следующего релиза уже бесполезно будет. В
принципе, так наверное жить вполне себе можно, ведь mplayer вообще лет
десять наверное не обновлялся как проигрыватель и мне хватало. Сейчас
mpv добавляет крутые фичи типа VAAPI (дающего VP8 аппаратного) и gapless
playback, но этого мне достаточно. Как кодировшик mencoder я полноценно
не использовал тоже давно: только для вывода сырого изображения или
-oac/-ovc copy, без которых, с наличием Matroska, можно жить. mpv как
полноценный кодировщик уже не работает и уже в master deprecated. Профит
сейчас однозначно уже есть. mplayer я обновлял только ради более новых
кодеков. mpv и сейчас просто использует libavcodec библиотеки, так что
это тоже можно просто будет обновлять независимо.

5 years agompv прям хорош
Sergey Matveev [Thu, 23 Apr 2020 10:00:19 +0000 (13:00 +0300)]
mpv прям хорош

https://en.wikipedia.org/wiki/Mpv_player
В продолжении вчерашнего bc7954cf5910fb3fdf35af90597c04880eb9d227.
mpv полностью весь нужный мне функционал как проигрыватель, пока
удовлетворяет. Даже больше и лучше:

* mplayer по расширению файла мог только автоматически подключить опции
  по аппаратному декодированию видео. mpv же просто автоматически это
  умеет делать -- теперь это вообще не забота пользователя
* однако для этого требуется настройка: надо аппаратное декодирование
  включать, плюс добавлять туда кодеки которые ради безопасности
  выключены
* теперь не нужен VDPAU и прослойка для него до VAAPI! Это привело к
  тому, что у меня аппаратно декодируется VP8 (но не VP9, который
  реально был бы полезнее, ибо FullHD на нём я не могу в real-time
  декодировать). 71154f45d9f366207838a37a870434857d0652a0: остаётся
  только VAAPI который в конфиге включить и забыть
* gapless проигрывание аудио -- ради этого я уже мог бы перейти
* реально более быстрая перемотка

Главная проблема: непривычно всё после mplayer. Но если бы изучать все
эти сотни опций с нуля, то в mpv они все логичнее, аккуратнее сделаны.
Кодировать ещё не пробовал, но по сути там просто пробрасываются опции
до ffmpeg и нижестоящих кодеков (типа libvpx). Но вроде всех фильтров и
опций хватает.

5 years agoDell ноутбук точно не тянет на удалённую работу на нём
Sergey Matveev [Thu, 23 Apr 2020 09:58:45 +0000 (12:58 +0300)]
Dell ноутбук точно не тянет на удалённую работу на нём

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

5 years agoПочему никто не шифрует письма?
Sergey Matveev [Thu, 23 Apr 2020 08:13:38 +0000 (11:13 +0300)]
Почему никто не шифрует письма?

https://habr.com/ru/company/globalsign/blog/498592/
Автор пишет что "Другая версия PGP с открытым исходным кодом -- OpenPGP".
Могу дальше не читать, ибо автор даже не понимает о чём говорит что
такое OpenPGP, а ещё пытается что-то делать с ним. Уж хотя бы Wikipedia
бы открыл он что ли.

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

Эээ, что? С какой стати?

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

Ну... может читать что означает --list-keys и не задаваться вопросом а
есть ли тут ещё приватные ключи? Он выводит список публичных: чего
жаловаться на непонимание если команда очевидно не может дать на это
ответ?

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

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

    -passphrase my-pass-phrase

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

    Я не смог найти никакой информации, как самому расшифровать свой
    собственный шифротекст, поэтому пришлось отправить его ей, не зная,
    правильно ли я его зашифровал

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

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

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

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

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

5 years agopkg-config и системы сборки
Sergey Matveev [Wed, 22 Apr 2020 20:54:06 +0000 (23:54 +0300)]
pkg-config и системы сборки

Сегодня я для C-шной библиотеке своей думал и смотрел как делать
конфигурирование сборки. Ну, как минимум, найти где заголовочные файлы
для зависимых библиотек и какие опции нужны. Собственно, что ./configure
делает, генерируя Makefile-ы. Так как я люблю минимализм, красоту,
простоту, то autoconf... наверное последнее на что стоит обращать
внимание. Так говорят все кто хоть как-то в теме всяких Plan 9,
suckless, Go и прочего. В основном говорят про то, что современный
хорошо и добротно по современному написанный софт и ОС с дистрибутивами,
не нуждаются в тоннах всего что есть в autoconf, типа это legacy
сплошной.

Так вот suckless проекты не чураются использовать pkg-config. Да и я с
ходу вижу что изначально эта система вообще на shell была простом.
Оказалось что, как такового, pkg-config у меня в системе и нет, а есть
вполне себе не супер громоздкий pkgconf. С ним Makefile-ы становятся
удивительно простыми, как в suckless.

И чисто совпадение, но я сегодня восхитился pkg-config-ом ещё раз, когда
собирал mpv из предыдущего поста. mpv использует waf сборочную систему.
Сталкиваюсь с ней возможно впервые. Я не хочу глобально в систему
ставить ffmpeg, поэтому его установил просто в ~/tmp/куда-то. Очевидно,
waf ffmpeg там найти не сможет самостоятельно. Раньше в ./configure
(autoconf) принято было добавлять разные --with-ffmpeg опции чтобы
указать и намекнуть флаги для его нахождения. В waf ничего этого не
увидел, но в его логе нашлась простая строка: pkg-config не нашёл ничего
касательно ffmpeg. man pkgconf, быстро нахожу PKG_CONFIG_PATH
переменную, добавляю в неё директорию с ~/tmp/ffmpeg/..., ведь в нём же
есть автоматически сгенерированный .pc файл, который должен указывать
куда надо. После добавления в PKG_CONFIG_PATH, всё обнаружилось и
прекрасно собралось.

Вообще это первый опыт подсовывания pkg-config файлов, но ведь в них
действительно все нужные опции имеются! И они достаточно просты чтобы
использовать pkg-config-compatible утилиты на несколько экранов C-шного
кода. Похоже что использование pkg-config-а это очень правильное и для
моего рабочего проекта направление!

5 years agoПробую mpv вместо mplayer
Sergey Matveev [Wed, 22 Apr 2020 20:35:30 +0000 (23:35 +0300)]
Пробую mpv вместо mplayer

https://en.wikipedia.org/wiki/Mplayer#Forks
Заприметил сегодня что в mpv есть gapless проигрывание, плюс VAAPI из
коробки. Удалили mencoder, но при этом всё равно какое-то кодирование
есть прямо в самом mpv. Решил попробовать. Собирается непривычно, но
удалось. Вывести звук через OSS на внешнюю звуковуху получилось.
Использовать VAAPI тоже. Gapless есть. Очень много непривычного в
опциях, надо переучиваться, но... если это сильно более чистое изделие,
да и в котором единственный существенный для меня недостаток mplayer --
gapless проигрывание, решено, то почему бы и не пересесть? Насколько
понял, mencoder -ovc copy -oac copy он сделать не может, поэтому
полноценной заменой, возможно, не станет. Но у меня и задач для такого
copy всё меньше и меньше. В общем пока буду использовать mpv стараться:
надо понять как делать -vf crop/cropdetect, как выводить сырьё для
vpxenc, как делать -ao pcm, -vo yuv4mpeg, делать +/- (управлять
sync-ом), -framedrop, -af volnorm, -endpos, -ss, изменять скорость.
Пробегаясь глазами по доке, вроде почти всё это видел.

5 years agoСнова робот Билайна
Sergey Matveev [Wed, 22 Apr 2020 15:08:22 +0000 (18:08 +0300)]
Снова робот Билайна

Снова как и в e7b2b9026150fa2c3032e3aa2e8afce6537ab994 раз позвонил
робот по поводу Интернета. Сразу, после того как сказали про Интернет,
спросил робот ли, и точно такой же ответ что "да, только никому не
говорите".

5 years agoЧто меня пока больше всего бесит и радует в C
Sergey Matveev [Tue, 21 Apr 2020 09:26:56 +0000 (12:26 +0300)]
Что меня пока больше всего бесит и радует в C

Мне много чего не нравится в C, ибо почти всё что не нравится исправлено
в Go -- грустно использовать инструмент, зная что рядом есть очень
похожий но с кучей убранных мин для отрыва ног, в котором всё проще,
понятнее, яснее и удобнее. Я не касаюсь таких вещей как GC и map-ы с
интерфейсами. Но вот пока больше всего что выбешивает: объявление
переменной не обнуляет её значение! Да, я понимаю что и не должно, но я
к этому так во всех языках прежних привык, что постоянно совершаю
ошибку, считая что int foo будет равно нулю изначально, как и объявление
указателя куда-нибудь.

А вот что нравится, так это тернарный оператор. Да, опять же, понимаю
что с ним можно тривиально сделать нечитаемый код, особенно два
тернарных оператора подряд использовав. Но мне их всё равно постоянно не
хватает в Go. В Python я X if Y else Z часто использую, но на протяжении
долгих лет меня всё-равно это каждый раз коробило, ибо и длинно и
условие в середине. Это должно говорить о том, что нефиг использовать,
но этот грешок меня постоянно преследует.

5 years agoФорматирование C кода: фигурные скобки после сигнатуры функции
Sergey Matveev [Tue, 21 Apr 2020 09:06:03 +0000 (12:06 +0300)]
Форматирование C кода: фигурные скобки после сигнатуры функции

Уже какую неделю я страдал от того, что в vi команды [[ и ]] не прыгают
по функам, как это сделано для Python или Go. В этих двух языках это
возможно банально просто из-за наличия "func", "def", "class" и подобных
слов, по которым превосходно можно делать навигацию. В C же, разбитое
на множество строк объявление функи, невозможно просто так регуляркой
выцепить.

Для форматирования кода я использую clang-format, у которого очень много
ручек настройки этого форматирования. Руками я вообще ничего не делаю. И
меня осенило что [[ и ]] прыгают по фигурным скобкам на начале строки и
clang-format-у можно сказать чтобы он все функи вот так и форматировал:

    int main()
    {
        ...
    }

Я много видел странного форматирования и такое вот меня бесило. Ладно,
самое странное и безумное что я видел -- GNU стиль. Хотя наверное там не
просто так всё. Вот и тут эти фигурные скобки бьют по глазам, но зато
теперь навигация по коду стала невероятно простой. До этого хака я вовсю
использовал https://github.com/jeetsukumaran/vim-indentwise плагин, но с
ним приходилось глазами понимать где находится мой курсор и какую
команду надо дать чтобы прыгнуть на основе indentation в начало функи.

5 years agoWebP поддержка в софте
Sergey Matveev [Tue, 21 Apr 2020 08:23:24 +0000 (11:23 +0300)]
WebP поддержка в софте

Для просмотра изображений я использую sxiv: https://github.com/muennich/sxiv
А он в свою очередь imlib2 для декодирования изображений. Только начиная
с версии 1.6 эта библиотека из коробки поддерживает WebP.
Чтобы Mutt корректный выставлял MIME-тип, то пришлось добавить:
echo image/webp webp >> ~/.mime.types

5 years agoПоездка на общественном транспорте Москвы будет деанонимизирована
Sergey Matveev [Mon, 20 Apr 2020 10:54:21 +0000 (13:54 +0300)]
Поездка на общественном транспорте Москвы будет деанонимизирована

https://lenta.ru/news/2020/04/20/propsk/
За всё последнее время я в Москву ещё не наведывался на работу, хотя
пропуск есть. Но правило привязки карты Тройка к персональному пропуску
удручает. Если очень понадобится на работу поехать, то мне сильно
повезло что я за час смогу дойти до неё от ВДНХ.

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

5 years agoFLIF формат
Sergey Matveev [Sun, 19 Apr 2020 21:43:46 +0000 (00:43 +0300)]
FLIF формат

https://en.wikipedia.org/wiki/Free_Lossless_Image_Format
В предыдущей заметке говорил про WebP. А ведь есть ещё вот и FLIF,
использующий MANIAC (вариант CABAC), судя по описанию ещё сильнее должен
превзойти в lossless сжатии. Но это только для локального хранения может
подойти, ибо броузер то уж такое не будет показывать, в отличии от WebP.

BPG и HEIF ещё есть, использующие алгоритмы из HEVC-а. Однако их я бы не
стремился даже пробовать, ибо это всё патентованные не свободные
технологии, в противовес VP8 (хотя lossless WebP сжатие (VP8L), вроде
как, отношения к VP8 не имеет). Apple заявляла что HEIF будет вместо
JPEG использоваться... ну раз Apple сказала, то эту технологию точно не
стоит брать в руки, ибо максимально несвободно, патентованно и с DRM-ом
будет.

5 years agoПоигрался с WebP VP8L: очень впечатляет!
Sergey Matveev [Sun, 19 Apr 2020 20:27:11 +0000 (23:27 +0300)]
Поигрался с WebP VP8L: очень впечатляет!

https://en.wikipedia.org/wiki/WebP
Про этот формат сжатия изображений я слышал очень давно, но почему то
никогда не трогал и не игрался с ним. Пересжал я им lossless PNG-шки,
обработанные pngcrush-ем (я все PNG им переделываю) с сайта PyDERASN:
http://pyderasn.cypherpunks.ru/download/iamgoing.jpg (локально PNG версия)
http://pyderasn.cypherpunks.ru/_images/browser.png
http://pyderasn.cypherpunks.ru/_images/pprinting.png
Делал просто cwebp -lossless, проверял потом декодируя в PPM формат
оригинал и WebP и считал хэш получившийся.

iamgoing.png на самом деле изначально вроде JPEG-ом был.
Он сжался на: 157316 -> 107258 (~32%)
browser.png: 50989 -> 24978 (~51%)
pprinting.png: 50795 -> 19838 (~61%)

50-60%! Офигеть! Да и даже мой древненький webkit-based Xombrero броузер
из коробки его отображает. Похоже, я буду полностью переходить с PNG на
этот формат. Всё же более половины экономии это очень не хило.

Всё это я писал не используя -z/-m опции, которые позволяют торговать
CPU и уровнем сжатия. С -z 9 сжатие ещё на 1-2% лучше будет.

Lossy ещё пробовал.

5 years agoНаписал ещё одну статью о PyDERASN: как я добавил big-data поддержку
Sergey Matveev [Sun, 19 Apr 2020 17:02:24 +0000 (20:02 +0300)]
Написал ещё одну статью о PyDERASN: как я добавил big-data поддержку

https://habr.com/ru/post/498014/
Об изменениях за прошедший год, в основном связанных с возможностью
работы с большими данными.

5 years agoПропёрло на заводной Battlelore
Sergey Matveev [Sun, 19 Apr 2020 15:56:40 +0000 (18:56 +0300)]
Пропёрло на заводной Battlelore

https://www.youtube.com/watch?v=f2pyAiACP-w
У этих финнов сплошная толкиеновская тематика, заводная музыка, отлично
под которую работается. На некоторых трэках их альбомах отличнейший гроул!

5 years agoХаки matterircd
Sergey Matveev [Sun, 19 Apr 2020 14:07:11 +0000 (17:07 +0300)]
Хаки matterircd

В 69f3f2c6ca8d8f2800343f27fc4daef02bd89fc2 писал, что на работе в
качестве IM-а используется Mattermost. Использую его через matterircd:
демон выступающий в роли IRC сервера и как клиента Mattermost.
Количество каналов за это время существенно выросло где я являюсь
участником и я заметил что очень ко многим я не подключаюсь почему то.
Иногда выходит, иногда нет. В качестве костыля, я запрещал в конфиге
matterircd подключаться самому, а дальше в irssi задавал JOIN команды
после подключения к серверу. Вчера выяснял в чём же всё таки дело.
Оказалось, что серверу на работе не нравится кол-во запросов от
matterircd и он включает защиту от flood. Пришлось в кишках демона
покопаться и выставить различные sleep-ы. Проблему поборол. Вот только
если на работе ещё какие-нибудь ручки подкрутят, то снова жди
каких-нибудь проблем. Чего только люди не придумают как бы посложнее
организовать общение между собой. Инструменты оттачиваются
десятилетиями, но нет... все перейдут на какую-нибудь новую платформу
(типа macOS или смартфонов), а на ней, само собой, ничего вменяемого не
будет.

5 years agoWD, Seagate, Toshiba начали выпускать диски без указания SMR
Sergey Matveev [Sat, 18 Apr 2020 15:23:22 +0000 (18:23 +0300)]
WD, Seagate, Toshiba начали выпускать диски без указания SMR

https://habr.com/ru/post/497900/
Слежу за всем этим в рассылках с самого начала. Ну что можно сказать?
Все эти производители: ссаные пидарасы, раз позволяют не упоминать об
SMR. С этой технологией диски СОВЕРШЕННО по другому себя ведут, для них
нужны СОВЕРШЕННО другие задачи и режимы работы. По сути, современные ФС,
особенно типа ZFS, тупо ни капли под них не заточены (точнее SMR не
заточен под задачи обычных НЖМД) и, грубо говоря, не будут на них
работать. С ходу я не понимаю почему это не указывать то? Типа впихнуть
при покупке, а потом отказаться, ведь диск то исправен, не наши проблемы
что ваши general purpose filesystems/RAID/whatever не работают с ними? В
рассылке один человек уже рассказывал что ему отказали в сдаче, ведь
диск то работающий, чисто технически.

5 years agoРеалистичность в фильмах, бодипозитив
Sergey Matveev [Sat, 18 Apr 2020 10:46:58 +0000 (13:46 +0300)]
Реалистичность в фильмах, бодипозитив

Как-то я смотрел серию передач "трудности перевода", где разбирались
разные переводы компьютерных игр. И там не раз повторялось что мат
должен быть, обязан, ибо это не реалистично. Типа никто не будет орать
"мне ногу оторвало, чёрт подери!" в реальности. С родителями как-то заходила
тема о реалистичности в фильмах секса (со всеми подробностями, крупным
планом), всякой крови, расчленёнки, когда кишки крупным планом смакуют.
Недавно видел новость про то, что одобряют и поощряют как реалистично
стали показывать ничем не примечательную (как пишут) женскую
мастурбацию: видел пару фильмов где был такой кусок... вообще никак на
сценарий или восприятие жизни главного героя не влияющий, вырежи и ни
бита не потеряется. Потом вспомнилось обсуждение "бодипозитива" (какое
же идиотское и тупое слово/название!) на работе.

А вот лично я хочу смотреть на нереалистичные моменты. Хочу не видеть
множество элементов реализма. Мне не интересно как кто-то пошёл посрать,
у кого была отрыжка во время еды, если это не напрямую влияет на сюжет.
Аналогично этому тупейшему "бодипозитиву": я ХОЧУ смотреть на красивых
людей, хочу смотреть на то как они пять минут метелят друг друга, хотя в
жизни большинство вымотается после нескольких ударов.

Бодипозитив то тупейшее явление на самом деле вдвойне, ибо он
отталкивается от того, что в фильмах/рекламах показывают некий идеал и
к нему стремятся. По моему, только тупые последователи (других то там и
не будет) этого движения и воспринимают людей с рекламы как идеал и что
другие люди к нему хотят стремится. Да я по пути на работу или на самой
работе вижу куда более красивых, симпатичных, желанных, обаятельных
девушек чем в фильмах за целый год. Безусловно внешний вид некоторых
актрис иногда и перехватывает дыхание, но... я ХОЧУ этого. Я пришёл
посмотреть фильм, сказку, историю, выдумку. Пускай даже не выдумку, но
крайности которые в жизни маловероятны. Я хочу любоваться тем что там
показывают, а не кивать головой на то, как реалистично она пукнула во
время мастурбации, пролив на себя суп, при этом это была бы не комедия
где весь акцент на неряшливой героине. Бодипозитив это когда считают,
что ты считаешь, что женщины с рекламы это настоящие, а всякие жирнухи
(которых в целом то не много в нашей стране) это инопланетяне и поэтому
тебе надо с плакатов рекламы их показывать чтобы ты не отрывался от
реальности. Это аналогично пидарасам: им мало кто чего запрещает,
большинству пофиг кто там с кем спить и чем занимается, но орать им о
себе нужно ещё как, привлекать внимание.

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

5 years agoСоздал ca.cypherpunks.ru
Sergey Matveev [Sat, 18 Apr 2020 10:12:51 +0000 (13:12 +0300)]
Создал ca.cypherpunks.ru

http://ca.cypherpunks.ru/
http://blog.cacert.org/2020/03/technical-problems-with-signer-machine/
Так как из-за коронавируса CACert.org потерял доступ к своей машине
создающей подписи и она не работает, а у меня некоторые сертификаты уже
протухают с недели на неделю, то решил создать свой CA.

* Let's Encrypt я принципиально не приемлю: по сути централизованный,
  под США, требующий кучу геморроя (дополнительного софта) CA
* CACert.org был единственным известным мне из оставшихся бесплатных CA
* Доверять ли моему CA? Хороший вопрос, так как я же ведь смогу сделать
  сертификат для google.com. Но Let's Encrypt-у же люди слепо доверяют?
* В любом случае, безопаснее всего делать certificate pinning для
  конкретных доменов. Конечные сертификаты я сделал на год
* Этот CA -- всего лишь точка доверия, подписанная моим PGP ключом

Из плюсов: использую ECDSA ключи, вместо огромных RSA, что и существенно
быстрее и трафик экономит.

Не исключаю что когда CACert.org вернётся в строй, то я вновь начну его
использовать. Но не уверен.

5 years agoAdorned Brood -- Totenmarsch (live)
Sergey Matveev [Fri, 17 Apr 2020 19:48:00 +0000 (22:48 +0300)]
Adorned Brood -- Totenmarsch (live)

https://www.youtube.com/watch?v=X_TSFYiKC1c
Сегодня вспомнил о такой группе как Adorned Brood и достал когда-то
приобретённые её альбомы. Totenmarsch трэк сегодня аж несколько раз
переслушал -- нравится. В YouTube правда только одну live запись смог
найти с очень громким звуком.

5 years agoРегистрация новых вебкам-моделей выросла на 37—69%
Sergey Matveev [Thu, 16 Apr 2020 13:20:20 +0000 (16:20 +0300)]
Регистрация новых вебкам-моделей выросла на 37—69%

https://habr.com/ru/news/t/497374/
Типа работы нет из-за вируса, вот и пошли в проституцию. В
комментариях пытаются доказать что мораль сейчас поменялась
и это всё нормально. Ну... я уж буду ханжой, но проституцию
не могу оправдывать или поощрять.

5 years agoSSH публичный ключ в DNSSEC
Sergey Matveev [Wed, 15 Apr 2020 13:17:49 +0000 (16:17 +0300)]
SSH публичный ключ в DNSSEC

https://habr.com/ru/company/ruvds/blog/497326/

    В реальной жизни почти никто не проверяет отпечаток SSH-ключа сервера
    не особенно задумываясь о возможности MiTM-атаках.

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

Но нет! Мы теперь аутентичность нашего SSH ключа просто отдадим в руки
DNS регистраторам, которые DNSSEC подписывают. Ага, давайте.

5 years agoOpenZFS добавила поддержку FreeBSD
Sergey Matveev [Wed, 15 Apr 2020 10:02:30 +0000 (13:02 +0300)]
OpenZFS добавила поддержку FreeBSD

https://www.opennet.ru/opennews/art.shtml?num=52737
Меня очень удивляют заявления людей о том, что тот самый ZFS-on-Linux,
который BSD-шники хаяли, теперь в FreeBSD. Точнее удивляет
безграмотность техническая. Есть код касающийся исключительно и чисто
ZFS, а есть куча кода обвязки и внедрения этого ZFS-а в ядро, в VFS, в
ФС и остальные подсистемы ядра. Можно использовать какой угодно код ZFS,
но если его использование в контексте ядра не может корректно помечать
страницы ARC-а как page cache, то тут без разницы какой у вас под
капотом код ZFS.

ВСЕ нарекания к качеству ZFS под Linux касаются по сути то только
как-раз его обвязки, интегрированности в ядро. То, что теперь общая
кодовая база для самого ZFS-а будет -- это прекрасно и здорово! Только
это не означает что проблемы именно интеграции с ядром (да и самого
ядра) Linux перенесутся на FreeBSD, ибо они не касаются кода самого ZFS.

А так я бы хотел уже пощупать родное ZFS шифрование и zstd сжатие!

5 years agoЗарелизил PyDERASN 7.7/7.8
Sergey Matveev [Tue, 14 Apr 2020 08:03:50 +0000 (11:03 +0300)]
Зарелизил PyDERASN 7.7/7.8

https://lists.cypherpunks.ru/pipermail/pyderasn-devel/2020-April/000044.html
https://lists.cypherpunks.ru/pipermail/pyderasn-devel/2020-April/000047.html
Прежде тэги не проверялись при декодировании на чёткое следование
требованиям BER/CER/DER (они общие для тэгов). Например там могли идти
байты с нулевым значением -- при декодировании номер тэга будет такой
же, но у него несколько разных представлений возможно. Кроме того, любой
тэг в короткой форме можно всегда представить и в длинной, что тоже
запрещено.

Почему я раньше не проверял? Наверное были мысли о том, что, раз всё
равно наверняка декодирование будет идти по схеме, где в виде байтов
задаётся требуемый тэг, то вопросы его корректности -- это вопрос
корректности схемы, который PyDERASN-а не касается. Но функи типа
tag_strip, len_decode используются далеко не только во внутренностях и
работе с высокоуровневыми объектами, поэтому было бы хорошо чтобы они
блюли стандарты и проверки. Благо что BER/CER/DER требования тут общие.

Плюс добавил явный запрет на использование aware datetime-ов, ибо по
сути работа идёт только с naive временами, и aware datetime-ов может
смутить разработчика неожиданным поведением.

5 years agoСнова установка GNU/Linux и снова НЕ на первый жёсткий диск
Sergey Matveev [Tue, 14 Apr 2020 07:05:36 +0000 (10:05 +0300)]
Снова установка GNU/Linux и снова НЕ на первый жёсткий диск

Ставил тут Devuan не флешку (Linux-specific утилиту надо было запустить,
а Devuan как default distribution беру), загрузившись с CD. Всё успешно
шло до момента установки загрузчика. На компьютере был жёсткий диск с
FreeBSD: мне сказали что на компьютере, похоже, нет других систем и
предлагают установиться в MBR первого диска. Я говорю нет и выбираю
флешку для установки. Ну и конечно же после перезагрузки ничего с неё не
грузится.

Я вот уже даже не помню толком: хоть 1 из 10 дистрибутивов позволяет
установится УСПЕШНО не на единственный и первый диск в системе и быть
потом загруженным? Загрузчики это всегда какая-то боль в GNU/Linux мире.
Хотя точнее наверное говорить про GRUB, ибо с syslinux и [вроде ещё
какие-то простые есть -- вставить нужное] проблем не помню, но давно уже
было.

А ещё ставил Astra Linux. Этот дистрибутив вообще просто в initrd в
fstab прописал sda1, поэтому если, после установки на флешку, вставить
жёсткий диск, то он не будет загружаться.

5 years agoДве недели назад пережил бурю эмоций
Sergey Matveev [Tue, 14 Apr 2020 06:50:45 +0000 (09:50 +0300)]
Две недели назад пережил бурю эмоций

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

5 years agoКод в Москве для передвижения
Sergey Matveev [Mon, 13 Apr 2020 09:27:09 +0000 (12:27 +0300)]
Код в Москве для передвижения

* На сайте сплошной обфусцированный закрытый JS-код, поэтому через него
  получать не вариант
* Установка приложения на смартфон -- нут без комментариев уровень
  слежки и, опять же, закрытое ПО
* Есть обычный телефонный номер для получения, но коллеги сообщают что
  там время ожидания 30мин -- мягко говоря, дороговато чисто на связь
  выходит, ведь оно и оборваться легко может и нужно всё с начала
  звонить
* Коллеги говорят что там необходимо или номер автомобиля своего
  вписывать или номера карт Тройка/Стрелка. До Москвы я добираюсь за
  наличку на маршрутке (если на электричке, то, опять же, только за
  наличку), а дальше до работы могу иди пешком. Получается такой вариант
  тоже не вариант, ибо я не могу не указать номера карт/автомобиля

Но судя по новости https://lenta.ru/brief/2020/04/13/propusk_guide/
это можно получить через SMS, где номера карт опциональны. Текст там на
русском надо набрать, а у меня только несколько месяцев назад появился
сотовый где можно кириллицу ввести.

5 years agoА сетевуха всё же виснет на ноутбуке под нагрузкой
Sergey Matveev [Sun, 12 Apr 2020 13:27:31 +0000 (16:27 +0300)]
А сетевуха всё же виснет на ноутбуке под нагрузкой

В продолжении e1f6b92ee30063104f65d30ffd7a0c9646e79d81, сегодня вновь
гонял много трафика и вновь возникали watchdog-и на re0. Но вот только
она уже полностью переставала гонять трафик, даже ping не работает. Хотя
link поднимает.

5 years agoЕщё больше не нравится OpenSSL
Sergey Matveev [Sun, 12 Apr 2020 09:00:22 +0000 (12:00 +0300)]
Ещё больше не нравится OpenSSL

Понадобилось мне тут поработать с ASN.1. Но на низком уровне:
декодировать тэг, длину по отдельности. Нашёл для этого функу в OpenSSL
у которой вообще нет документации, и названия переменных такие, что мне
реально нужно интерпретировать в голове по сути весь её код чтобы понять
что же это там всё такое. Нашёл похожие функи в libtasn1. Небо и земля!
Буквально полная противоположность и по качеству кода, и по его
документированности и по проверкам на переполнение и по хотя бы наличию
в нормальном вменяемом виде документации. А OpenSSL код... создаётся
впечатление что его буквально говнякали на коленке за пять минут.

Более того, отпарсить тэг в котором 16-битный номер зашит OpenSSL не
смог. Просто возвращает ошибку и всё тут. libtasn1 -- без проблем.

5 years agoИзоляция приятна
Sergey Matveev [Sun, 12 Apr 2020 08:42:38 +0000 (11:42 +0300)]
Изоляция приятна

Лично меня (пока?) изоляция в целом радует. Не, с ходу, конечно, могу
сказать что скучаю по собакам (ух как мне не хватает обнимашек с ними!),
встречам с родителями (у которых собаки) и потом это только усилится. Но
самое главное то, что я уже какую неделю встаю без будильника! Каждый
день у меня чувство что я выспавшийся! Ну и плюс целыми днями я слушаю
музыку в отличном качестве в открытых наушниках, чего на работе
невозможно. Но вставать тогда, когда твой организм захочет... ух здорово!

5 years agoПосмотрел "Краденое свидание", "Путешествие Гектора в поисках счастья"
Sergey Matveev [Sun, 12 Apr 2020 08:37:38 +0000 (11:37 +0300)]
Посмотрел "Краденое свидание", "Путешествие Гектора в поисках счастья"

https://ru.wikipedia.org/wiki/%D0%91%D1%83%D0%B4%D1%8C_%D0%BC%D1%83%D0%B6%D1%87%D0%B8%D0%BD%D0%BE%D0%B9_(%D1%84%D0%B8%D0%BB%D1%8C%D0%BC)
https://ru.wikipedia.org/wiki/%D0%9F%D1%83%D1%82%D0%B5%D1%88%D0%B5%D1%81%D1%82%D0%B2%D0%B8%D0%B5_%D0%93%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B0_%D0%B2_%D0%BF%D0%BE%D0%B8%D1%81%D0%BA%D0%B0%D1%85_%D1%81%D1%87%D0%B0%D1%81%D1%82%D1%8C%D1%8F
А эти фильмы посмотрел уже потому что в них в главной роли снимается
Саймон Пегг. И просмотра этих не пожалел! Первый очень забавный, лёгкий,
хорошо заканчивается, отличная, на мой взгляд, игра актёров. Второй тоже
хорош и довольно разнообразен. Пэгг играет в нём, по мне, отлично! Тоже
легко смотрится, хорошо заканчивается.

5 years agoПосмотрел "Малыш на драйве"
Sergey Matveev [Sun, 12 Apr 2020 08:30:20 +0000 (11:30 +0300)]
Посмотрел "Малыш на драйве"

https://ru.wikipedia.org/wiki/%D0%9C%D0%B0%D0%BB%D1%8B%D1%88_%D0%BD%D0%B0_%D0%B4%D1%80%D0%B0%D0%B9%D0%B2%D0%B5
Взял этот фильм исключительно потому что от режиссёра трилогии "Кровь и
мороженое". Плюс там же Кевин Спейси! Пожалел. Главный герой редкостно
бесит почти всем, каждым движением, словом, действием. Подставляет тех
кого любит -- тупой придурок. Настолько идиотичного главного героя
сложно придумать и не объяснить кроме как паршивым сценарием. Да и все
остальные постоянно мелют языком, вместо того, чтобы дела делать. Спейси
харизматичен, но вытянуть фильм он не может.

5 years agoЭлектронные пропуска в Москве для тех у кого нет смартфона или Интернета
Sergey Matveev [Sun, 12 Apr 2020 08:27:29 +0000 (11:27 +0300)]
Электронные пропуска в Москве для тех у кого нет смартфона или Интернета

https://lenta.ru/news/2020/04/12/sposob/
Ну я бы ещё добавил "для тех, кто не собирается запускать у себя
несвободное ПО". Молодцы, возможность оставили для людей типа меня. Про
аналогичный fallback для подмосковья ещё не слышал. Впрочем... мне и
ездить то никуда не надо.

5 years agoПосмотрел "Армагеддец", "Зомби по имени Шон"
Sergey Matveev [Thu, 9 Apr 2020 17:07:28 +0000 (20:07 +0300)]
Посмотрел "Армагеддец", "Зомби по имени Шон"

https://ru.wikipedia.org/wiki/%D0%90%D1%80%D0%BC%D0%B0%D0%B3%D0%B5%D0%B4%D0%B4%D0%B5%D1%86
https://ru.wikipedia.org/wiki/%D0%97%D0%BE%D0%BC%D0%B1%D0%B8_%D0%BF%D0%BE_%D0%B8%D0%BC%D0%B5%D0%BD%D0%B8_%D0%A8%D0%BE%D0%BD
https://ru.wikipedia.org/wiki/%D0%9A%D1%80%D0%BE%D0%B2%D1%8C_%D0%B8_%D0%BC%D0%BE%D1%80%D0%BE%D0%B6%D0%B5%D0%BD%D0%BE%D0%B5
Посмотрел я тут какие ещё фильмы есть у создателя, так когда-то мне
понравившихся, "Типа крутых легавых". Оказывается это всё является
частью трилогии "Кровь и мороженое". И действительно во всех фильмах
чуть ли не 2/3 актёров общие. ВСЕ три фильма -- просто отпад! "Легавых"
я смотрел давно, но помню что начинается так всё по простому, а потом
наступает какая-то чёртова чертовщина! Во всех фильмах трилогии --
аналогично. И "Зомби" и "Армагеддец" заканчиваются так, что, волей не
волей, но хочется спросить "что это только что было!?". Очень
неожиданные концовки, офигенная парочка главных героев (Саймон Пегг и
Ник Фрост)! Я давно таких хороших... комедий (или правильнее сказать
ужастиков?) не смотрел!

5 years agoСамый абсурдный код
Sergey Matveev [Thu, 9 Apr 2020 06:00:58 +0000 (09:00 +0300)]
Самый абсурдный код

https://habr.com/ru/post/495966/
А что самое печальное, что некоторые из этих людей могут *годами*
работать программистом, хотя очевидно они совершенно не понимают что
творят. Но статья очень понравилась, ибо... нет пределов тупости.

5 years agoDepeche Mode (песня Stripped) + Rammstein (музыка) + На-На (видеоряд)
Sergey Matveev [Tue, 7 Apr 2020 15:42:11 +0000 (18:42 +0300)]
Depeche Mode (песня Stripped) + Rammstein (музыка) + На-На (видеоряд)

https://lenta.ru/news/2020/04/07/nana/
Вполне себе получается отличный видеоклип! Девушка радует глаз, а музыка
уши. Я уж не знаю насколько всё же было сделано монтажа (если вообще
было), но получилось здорово.

5 years agoМаксимальное качество звука на PulseAudio
Sergey Matveev [Tue, 7 Apr 2020 07:30:19 +0000 (10:30 +0300)]
Максимальное качество звука на PulseAudio

https://www.opennet.ru/tips/3141_pulseaudio_alsa_linux_sound_audio.shtml
Это шутка такая? Сплошные настройки resampling-а! То есть, софт
декодирует звук, получается какой-нибудь 44.1kHz/16b и его ещё
подвергают преобразованиям, вместо того, чтобы просто подать на звуковую
карту. Зашибись, но я на таком музыку не хотел бы слушать.

5 years agoБага в одной из первых версий GCC
Sergey Matveev [Tue, 7 Apr 2020 07:26:01 +0000 (10:26 +0300)]
Бага в одной из первых версий GCC

Когда-то давно в C стандарт была введена "#pragma". Так как официально
её поведение было не определённым, то GCC на полном серьёзе в
документации и коде имел:

    The "#pragma" command is specified in the ANSI standard to have an
    arbitrary implementation-defined effect. In the GNU C preprocessor,
    "#pragma" first attempts to run the game "rogue"; if that fails, it
    tries to run the game "hack"; if that fails, it tries to run GNU
    Emacs displaying the Tower of Hanoi; if that fails, it reports a
    fatal error. In any case, preprocessing does not continue.

Проблема и бага только в том, что в GCC код не соответствовал
документации, так как "hack" запускался прежде "rogue"!

5 years agoБага в реализации strftime в FreeBSD
Sergey Matveev [Mon, 6 Apr 2020 14:46:26 +0000 (17:46 +0300)]
Бага в реализации strftime в FreeBSD

А именно, man содержит следующее:

    BUGS
         There is no conversion specification for the phase of the moon.

5 years agoEnjoy The Silence
Sergey Matveev [Mon, 6 Apr 2020 09:49:00 +0000 (12:49 +0300)]
Enjoy The Silence

https://en.wikipedia.org/wiki/List_of_cover_versions_of_Depeche_Mode_songs
git говорит что я не упоминал об исполнении этой песни на концерте
Lacuna Coil. Сильнее всего то меня удивило что, особо не слушая Depeche
Mode, я знал большинство слов, весь припев, и на концерте подпевал
вместе со всем залом. Depeche Mode круты, что их Stripped все знают,
благодаря Rammstein, Enjoy The Silence этот (ещё с две дюжины групп
её перепели). Судя по списку каверов, даже black metal не чуждается их
творений. А я сейчас как-раз переслушиваю их альбомы -- работается под
них вполне себе.

5 years agoАлиасы имён директорий в zsh
Sergey Matveev [Mon, 6 Apr 2020 09:12:45 +0000 (12:12 +0300)]
Алиасы имён директорий в zsh

Стал я тут что-то часто перемещаться между директориями разных проектов
или частей проекта. Даже со всеми автодополнениями это может занимать
ощутимое время. Так и хочется сделать некий алиас на директорию. zsh это
позволяет:

    hash -d foo=~/work/foo/bar/baz

и cd ~foo перейдёт куда надо, даже сделает подстановку пути prompt.

Но в zsh есть и гораздо более мощный инструмент когда можно по частям
собирать путь до куда хотим перейти через функу zsh_directory_name_generic.
Делая cd ~[gs:p:s] мы говорим о том, чтобы перейти в git директорию
scratch (gs), нашего пользователя $USER, в поддиректорию myproject (p) и
его documentation (d), задав вот такие настройки:

    local -A zdn_top=(
      g   ~/git
      ga  ~/alternate/git
      gs  /scratch/$USER/git/:second2
      :default: /:second1
    )

    local -A second1=(
      p   myproject
      s   somproject
      os  otherproject/subproject/:third
    )

    local -A second2=(
      p   myscratchproject
      s   somescratchproject
    )

    local -A third=(
      s   top/srcdir
      d   top/documentation
    )

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

5 years agoПосмотрел Альфавиль
Sergey Matveev [Mon, 6 Apr 2020 08:24:55 +0000 (11:24 +0300)]
Посмотрел Альфавиль

https://ru.wikipedia.org/wiki/%D0%90%D0%BB%D1%8C%D1%84%D0%B0%D0%B2%D0%B8%D0%BB%D1%8C
Где-то прочитал что это чуть ли не первый киберпанк фильм. Аж 1965-го года.
В принципе да, антиутопия, закат человечества, царство технологий
(точнее одного Альфа-60 компьютера, управляющего всем городом). В целом
понравился. Очень крут стиль, архитектура всего что там происходит. В
одной сцене в зеркале, правда, был даже виден оператор, но ничего
страшного. Особенно красивы там девушки. Правда, на протяжении всего
фильма, всё усиливаясь к концу, поражаешься уровню безопасности всего
города и его центрального компьютера -- один человек из вне легко и
непринуждённо проникает в их машинные залы и перебивает там людей,
уничтожая всё. Если компьютер такой умный, то уж о своей безопасности
обязан был куда больше думать, ведь он же имеет дело с людьми! Но это
наверное объясняется тем, что своим расизмом создатели города настолько
высокомерны, что считают себя неуязвимыми.

5 years agoТребования для сборки Android: 16+GB RAM, 400+GB HDD
Sergey Matveev [Sun, 5 Apr 2020 15:40:15 +0000 (18:40 +0300)]
Требования для сборки Android: 16+GB RAM, 400+GB HDD

https://source.android.com/setup/build/requirements
Впечатляет! Мягко говоря, такое железо далеко не у каждого есть.

5 years agoПровозился с LibreSSL/OpenSSL и начинаю понимать почему его ненавидят
Sergey Matveev [Sun, 5 Apr 2020 11:54:34 +0000 (14:54 +0300)]
Провозился с LibreSSL/OpenSSL и начинаю понимать почему его ненавидят

Несколько дней назад я работал с libgcrypt. Отличная понятная info-дока:
поясняется как и что надо делать, дают советы, и т.д., и т.п. Просто
читаешь и делаешь. OpenSSL... мягко говоря, совершенно непонятно откуда
начинать, какие советы есть. В Wiki: https://wiki.openssl.org/index.php/Libcrypto_API
даётся понятный пример как начать использовать libcrypto, но... как мне
по man-ам то дойти до всего этого?

Коды ошибок: man говорит что, как правило, можно сравнивать с 0/1 (где 1
это успех), но иногда бывает всё наоборот у некоторых фунок. В libgcrypt
выдаются нормально отдельно типизированные структуры с ошибками. В
libcrypto у вам просто пулемёт нацеленный на ваши ноги. Это жесть, ужас.
Не, я понимаю что это наверное из-за legacy и совместимости, но это...
даже мне, абсолютно начинающему C-программисту, понятно что ни в какие
ворота.

Почти всё что я с libcrypto делаю -- на всё отсутствует документация
хотя бы даже в виде неких docstring-ов в коде и приходится тупо читать
каждую строчку и догадываться.

5 years agoПроблемы с безопасностью в Zoom
Sergey Matveev [Sun, 5 Apr 2020 08:01:40 +0000 (11:01 +0300)]
Проблемы с безопасностью в Zoom

https://www.opennet.ru/opennews/art.shtml?num=52652
С появлением всей темы об удалённой работе, я впервые услышал из
новостей про Zoom. Потом я услышал что в нём вообще нет никакого E2EE,
хотя они нагло заявляли что есть. И сейчас куча блогов завалены всем
этим Zoom. Я вот не понимаю: раньше что ли не было никаких решений для
телеконференций? Непойми откуда внезапно появилась какое-то приложение,
люди какого-то чёрта массово его начали использовать, а потом все
возбухают и ужасаются что там никакой приватности нет, их собственная
криптография ещё хуже чем в Telegram, плюс, вроде как, ещё и в Китай
сливают. Для меня со стороны это выглядит так: выбрали рулеткой какой-то
софт, сделали вид что раньше без него нельзя было, увидели что софт то
говно (с точки зрения безопасности) и давай дни напролёт в блогах о нём
писать.

Судя по новости, Zoom стал популярен, как раз из-за заявлений об E2EE.
То есть, люди ничему не учатся: Дуров заявлял про хорошую криптографию в
Telegram и все ведутся, теперь вот другие. Только вот даже правительства
успевают подсесть на подобные приложения, в которых и ещё и backdoor-ы и
слив в Facebook.

5 years agoBackdoor-ы в Android приложениях
Sergey Matveev [Sun, 5 Apr 2020 07:58:00 +0000 (10:58 +0300)]
Backdoor-ы в Android приложениях

https://www.opennet.ru/opennews/art.shtml?num=52677
Вот именно поэтому (одна из причин) я не понимаю как можно вообще жить в
экосистеме современных смартфонов. Это ж как старый DOS или Windows:
сплошные вирусы и прочее, только тут уже речь про то, что ваше
устройство легко может быть под управлением кого угодно другого.

5 years agoПосмотрел Джентльменов
Sergey Matveev [Sat, 4 Apr 2020 15:40:43 +0000 (18:40 +0300)]
Посмотрел Джентльменов

https://ru.wikipedia.org/wiki/%D0%94%D0%B6%D0%B5%D0%BD%D1%82%D0%BB%D1%8C%D0%BC%D0%B5%D0%BD%D1%8B_(%D1%84%D0%B8%D0%BB%D1%8C%D0%BC)
Ну что могу сказать... у Рая Ритчи ещё есть порох в пороховницах!
Отличный фильм! Очень понравился! Это конечно не тот action забавный как
"Карты, деньги, два ствола" и "Большой куш", но всё равно превосходнейший
фильм! И сюжет и игра актёров и разговоры! Плюс мне очень нравится Мишель
Докери, а только наличие Колина Фаррелла и Макконахи уже говорят о качестве!

5 years agoЕда в обсерваторе и сухой закон в Якутии
Sergey Matveev [Fri, 3 Apr 2020 12:28:14 +0000 (15:28 +0300)]
Еда в обсерваторе и сухой закон в Якутии

https://lenta.ru/news/2020/04/03/observ/
https://lenta.ru/news/2020/04/03/dry_low/
В первом видео человек считает что можно отбросить коньки от, по мне
так, отличной еды (йогурт, кофе, картошка, котлета, салат). Мне просто
даже любопытно а что он привык есть то?

А в Якутии за два дня выпили недельный запас спиртного. У нас
родственник работает экспедитором в области в магазинах. Говорит, что
пиво они развозят буквально в разы больше чем прежде -- никогда в таких
количества не видели поставок. То есть, реально, в московской области
(по новостям видно что и в других) бухают конкретно. Интересно сколько
помрёт на почве пьянства и дебошей?

5 years agoCACert.org и мои протухающие сертификаты
Sergey Matveev [Fri, 3 Apr 2020 09:03:01 +0000 (12:03 +0300)]
CACert.org и мои протухающие сертификаты

В 69c87e2694ffb0b7d18133a7def4a3abab4b0991 писал о том, что, как
минимум, на несколько недель CACert.org не сможет продлевать
сертификаты. А у меня через 45 дней больше десятка протухает. Вот
интересно, CACert.org восстановит работоспособность к тому времени?
Если нет, то.... бесплатных кроме Let's Encrypt-а нет. Его я
принципиально не хочу. Что ж делать то, получается только свой
самоподписанный CA?

5 years agoРостелеком нашёл когда играться Сетью
Sergey Matveev [Thu, 2 Apr 2020 20:22:31 +0000 (23:22 +0300)]
Ростелеком нашёл когда играться Сетью

https://roskomsvoboda.org/56975/
Ну да, молодцы, я думаю в одной только Москве миллионы людей пересели на
удалённую работу (отец у меня вот, хотя штатно он только из офиса), а
эти конечно же именно сейчас нашли время когда вредить работоспособности
и доступности надо. У меня почти все ресурсы (которые не на .ru)
открываются со скрипом и это даже если в броузере где у меня и картинки
автоматом не загружаются и JavaScript-а нет.

5 years agoПервоапрельские ИТ-шутки
Sergey Matveev [Thu, 2 Apr 2020 17:35:45 +0000 (20:35 +0300)]
Первоапрельские ИТ-шутки

https://www.opennet.ru/opennews/art.shtml?num=52659
Ну... как-то, я бы сказал, уныло. Лучшие шутки это конечно же RFC, хотя
и отказ Guix от Linux хорош, но очевидно что Hurd очень далеко ещё надо
проделывать путь. Мне больше всего вспоминается из прошлых лет выпил
IPv4 из OpenBSD и что Кармак будет работать в ScummVM:
https://www.scummvm.org/data/news/20160401.jpg

5 years agoКак фильтровать дезинформацию?
Sergey Matveev [Thu, 2 Apr 2020 17:25:29 +0000 (20:25 +0300)]
Как фильтровать дезинформацию?

https://habr.com/ru/company/globalsign/blog/495314/
Взбесила статья. Суть такая: ВОЗ и ещё куча официальных крупных
организаций говорит и советует делать одно, но профессор Зейнеп Туфеки
говорит что это всё ложь. Видимо, уж профессору то мы должны больше
поверить. Хотя при этом там же явно написано что ВОЗ делает "ложь во
благо", но типа раз это ложь, то нужно плюнуть на неё и делать как
профессор и мы посчитаем нужным. То есть нужно не делать так, чтобы
уменьшить риски, последствия и урон, как это стремится делать ВОЗ (и
другие). Власти вынуждены давать советы чтобы "снизить ажиотаж и
остановить панику" -- ну... молодцы, именно это они и должны делать, ибо
хуже паники ничего не может быть, всё верно, поддерживаю. Но статья
считает что раз это дезинформация, то надо принципиально брать и сметать
маски, ага, чтобы реально нуждающимся их не хватило, зато мы не
следовали лжи. Уроды короче, которым нужно просто показать что они не
следуют лжи, вместо того чтобы уменьшить урон и вообще проблемы.