]> Sergey Matveev's repositories - stargrave-blog.git/log
stargrave-blog.git
4 years agoПереснятое в США кино
Sergey Matveev [Tue, 25 Aug 2020 08:13:04 +0000 (11:13 +0300)]
Переснятое в США кино

В прошлом посте упомянул про "Смерть на похоронах", которую буквально
под кальку пересняли в США. Делают они подобное уже не одно десятилетие.
И хоть как это было сделано бы на равных или лучше чем оригинал зарубежный?
Хочется сказать что в 100% случае это можно не смотреть, ибо ни разу не
удалось. Но два примера я знаю:

* Отступники -- мало кто знает что это переснятый южнокорейский фильм.
  Но... чтобы Ди Каприо, ещё и Джек Никлсон могли снятся в проходном
  фильме -- это тоже надо было бы постараться.
* Оскар -- фильм 1991-го года с Сильвестром Сталлоне. О фильме вообще
  мало кто знает. Я смотрел и французский оригинал с Луи Де Фюнесом и...
  как что-то могло бы сравнится с его комедией? Сталлоне даже получил
  Золотую Малину. Но мне этот фильм очень понравился и французскую я
  даже не пересматривал и не сохранил на диске. Оскара-1991
  пересматривал с удовольствием. Это конечно не полная калька, но
  основная суть фильмов схожа.

А вот больше из remake-ов достойного ничего и не вспомню уже. Даже если
взять хороших актёров типа Дэниеля Крейга, то это всё равно не поможет
от блевотного ужаса в виде американской "Девушки с татуировкой дракона".
Почему блевотного? Да потому что то, видя какая была Лизбет Саландер в
шведском варианте, и видя что суют на экране в американском... только
рвотные позывы. Уже писал в 006f0a9e57ce99128f451fc6fcb568564a306f28, но
повторюсь: шведская Лисбет входит с ноги в кабинет, тронешь -- откусит
руку, сам будешь читать отчёт! Американская: я тут присяду, вот отчёт,
посмотрите его пожалуйста. Тьфу! Шведская просто взяла и изнасиловала,
без вопросов "взяв" Блумквиста. Американская... даже говорить не стоить.
Тьфу ещё раз!

4 years agoПосмотрел "Смерть на похоронах" и не могу смотреть американщину
Sergey Matveev [Tue, 25 Aug 2020 07:25:52 +0000 (10:25 +0300)]
Посмотрел "Смерть на похоронах" и не могу смотреть американщину

https://ru.wikipedia.org/wiki/%D0%A1%D0%BC%D0%B5%D1%80%D1%82%D1%8C_%D0%BD%D0%B0_%D0%BF%D0%BE%D1%85%D0%BE%D1%80%D0%BE%D0%BD%D0%B0%D1%85_(%D1%84%D0%B8%D0%BB%D1%8C%D0%BC,_2007)
https://ru.wikipedia.org/wiki/%D0%A1%D0%BC%D0%B5%D1%80%D1%82%D1%8C_%D0%BD%D0%B0_%D0%BF%D0%BE%D1%85%D0%BE%D1%80%D0%BE%D0%BD%D0%B0%D1%85_(%D1%84%D0%B8%D0%BB%D1%8C%D0%BC,_2010)
Посмотрел английский фильм "Смерти..." -- хорошая комедия, не шибко уж и
чёрная ("Реальные упыри" почернее, по моему). Удивило только то, что там
никто всё же не умер.

Но я также нечаянно скачал переделку США одноимённую. Её сразу можно
отличить: на экране только чёрные лица. За пять минут я, проматывая,
посмотрел и эту чёрную версию -- это буквально полная калька. Но игра
актёров, которых я большинство уже знаю, ни в какое сравнение с
английскими. У последних я вижу скорбь, угрюмость, раздражение от того,
что их отвлекают по пустякам или несвязанным вещам. У чёрных... такое
ощущение что они просто забыли где они находятся и что это за фильм.

Всего два момента мне было достаточно: сцена с выписыванием чека и...
внезапным импульсивным отказом главного героя его выписать -- я его пару
раз просмотрел и не понял чего он психанул, чего коротышка такого
сказал. В английской версии ВСЁ сразу же понятно и ясно, но в чёрной
ничего не понятно. А сцена с девочкой старшеклассницей к которой клеится
брат умершего отца: не один десяток секунд показывают улыбающегося,
думающего только о девке, сына, уговаривающего приехать молоденькую к
себе чтобы оторваться. Серьёзно? У тебя умер отец, а ты клеишся к
старшекласснице, только её увидев? Ещё и нехотя от неё отходишь, когда
твой брать зовёт выяснить возникшую проблему?  В английской версии
вообще отсутствует сцена с тем что эту девку уговаривали -- видно что с
ней брат разговаривает, но на нём ни разу не было улыбки до ушей или
чего-то подобного... хотя из контекста конечно тоже видно что она ему
приглянулась, но только вот нет никакой пошлости.

И главное что я про себя отметил (уже окончательно) -- мне абсолютно
совершенно не привлекательны женщины с негроидными чертами. Я вообще не
вижу в них сексуального объекта. Вот буквально совсем и полностью.
Пытался я вспомнить хоть одну актрису или певицу с негроидными чертами
которая бы меня... не то чтобы отталкивала, но рассматривалась как
сексобъект -- не смог. Было время когда шло много фильмов с Хелли Берри,
где её всю из себя такую пытаются показать как яростно привлекательную
девицу. Но я вот, видя её лицо, почему то не воспринимаю как
привлекательную. В "Смерти..." (США) я не увидел *ни одно* хоть сколько
то привлекательной женщины. Одни только оголённые до колена ноги Марты
из английской версии, женщины уже давно 30, а не какой-нибудь юной
20-летней девахи, меня уже удерживают у экрана. В реальной жизни -- да
проще назвать кто бы меня (как сексобъект) не смог бы привлечь из
женщин. В чёрном фильме же... мне даже неприятно и неуютно смотреть на
то, как на *ничего* не представляющих из себя (как сексобъект) особей
другие актёры (есть и парочка белых) смотрят с вожделением. Я не могу
поставить себя на их место. Я не могу их понять. Я не могу сопереживать.
Я смотрю на нечто абсолютно мне не понятное и чувствую что меня что-то
типа обманывают и на экране сплошное притворство. Можно сказать что все
эти чёрные женщины это что-то типа мужчин в платьях: не интересующий
объект, но в платьях и нарядах как у женщин -- диссонанс полнейший.

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

Всё это конечно лично мои чувства и ощущения. Но мой мозг, выходит, ярый
расист в сексуальном плане. Я например вообще не нахожу привлекательной
Уму Турман и мне не понятны терзания Траволты в Криминальном чтиве. У
неё внешность, как говорят, на любителя. Но, я всё же понимаю что она на
любителя. А отцу моему совершенно не нравится Джулия Робертс. Но вот
чёрные женщины... в них я вообще ничего не могу оценить.

4 years agoПосмотрел "Реальных упырей"
Sergey Matveev [Sat, 22 Aug 2020 20:20:27 +0000 (23:20 +0300)]
Посмотрел "Реальных упырей"

https://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5_%D1%83%D0%BF%D1%8B%D1%80%D0%B8
Или я давно не смотрел новые комедии или таких хороших, но насмеялся до
слёз вдоволь! Ну как бы документальный фильм про четырёх вампиров.
Просто несколько месяцев их жизни. Могу порекомендовать каждому к
просмотру... ну кроме тех, кто считает что подобные темы нельзя трогать
и кроме тех кто совсем не имеет юмора.

4 years agoВ русском, оказывается, было слово аутентикация
Sergey Matveev [Sat, 22 Aug 2020 08:02:45 +0000 (11:02 +0300)]
В русском, оказывается, было слово аутентикация

https://habr.com/ru/post/506092/
Мне нравится слово аутентификация... тем, что его мало кто может
написать грамотно. А кто может, часто не сможет написать правильно
написать английский "authentication" :-). Ну а ещё вечная проблема
с тем, что многие не отличают это слово от "авторизации".

4 years agoЭволюция программиста на примере hello world
Sergey Matveev [Sat, 22 Aug 2020 07:56:22 +0000 (10:56 +0300)]
Эволюция программиста на примере hello world

Я замечал что проблематично бывает найти этот анекдот в его большой
полной жирной версии. Или там нет примера с "ООП головного мозга" или
там нет стадий менеджмента.

High School/Jr.High

  10 PRINT "HELLO WORLD"
  20 END

First year in College

 program Hello(input, output)
    begin
      writeln('Hello World')
    end.

Senior year in College

  (defun hello
    (print
      (cons 'Hello (list 'World))))

New professional

  #include <stdio.h>
  void main(void)
  {
    char *message[] = {"Hello ", "World"};
    int i;

    for(i = 0; i < 2; ++i)
      printf("%s", message[i]);
    printf("\n");
  }

Seasoned professional

  #include <iostream.h>
  #include <string.h>

  class string
  {
  private:
    int size;
    char *ptr;

  string() : size(0), ptr(new char[1]) { ptr[0] = 0; }

    string(const string &s) : size(s.size)
    {
      ptr = new char[size + 1];
      strcpy(ptr, s.ptr);
    }

    ~string()
    {
      delete [] ptr;
    }

    friend ostream &operator <<(ostream &, const string &);
    string &operator=(const char *);
  };

  ostream &operator<<(ostream &stream, const string &s)
  {
    return(stream << s.ptr);
  }

  string &string::operator=(const char *chrs)
  {
    if (this != &chrs)
    {
      delete [] ptr;
     size = strlen(chrs);
      ptr = new char[size + 1];
      strcpy(ptr, chrs);
    }
    return(*this);
  }

  int main()
  {
    string str;

    str = "Hello World";
    cout << str << endl;

    return(0);
  }

Master Programmer

   [
  uuid(2573F8F4-CFEE-101A-9A9F-00AA00342820)
  ]
  library LHello
  {
      // bring in the master library
      importlib("actimp.tlb");
      importlib("actexp.tlb");

      // bring in my interfaces
      #include "pshlo.idl"

      [
      uuid(2573F8F5-CFEE-101A-9A9F-00AA00342820)
      ]
      cotype THello
   {
   interface IHello;
   interface IPersistFile;
   };
  };

  [
  exe,
  uuid(2573F890-CFEE-101A-9A9F-00AA00342820)
  ]
  module CHelloLib
  {

      // some code related header files
      importheader(<windows.h>);
      importheader(<ole2.h>);
      importheader(<except.hxx>);
      importheader("pshlo.h");
      importheader("shlo.hxx");
      importheader("mycls.hxx");

      // needed typelibs
      importlib("actimp.tlb");
      importlib("actexp.tlb");
      importlib("thlo.tlb");

      [
      uuid(2573F891-CFEE-101A-9A9F-00AA00342820),
      aggregatable
      ]
      coclass CHello
   {
   cotype THello;
   };
  };

  #include "ipfix.hxx"

  extern HANDLE hEvent;

  class CHello : public CHelloBase
  {
  public:
      IPFIX(CLSID_CHello);

      CHello(IUnknown *pUnk);
      ~CHello();

      HRESULT  __stdcall PrintSz(LPWSTR pwszString);

  private:
      static int cObjRef;
  };

  #include <windows.h>
  #include <ole2.h>
  #include <stdio.h>
  #include <stdlib.h>
  #include "thlo.h"
  #include "pshlo.h"
  #include "shlo.hxx"
  #include "mycls.hxx"

  int CHello::cObjRef = 0;

  CHello::CHello(IUnknown *pUnk) : CHelloBase(pUnk)
  {
      cObjRef++;
      return;
  }

  HRESULT  __stdcall  CHello::PrintSz(LPWSTR pwszString)
  {
      printf("%ws
", pwszString);
      return(ResultFromScode(S_OK));
  }

  CHello::~CHello(void)
  {

  // when the object count goes to zero, stop the server
  cObjRef--;
  if( cObjRef == 0 )
      PulseEvent(hEvent);

  return;
  }

  #include <windows.h>
  #include <ole2.h>
  #include "pshlo.h"
  #include "shlo.hxx"
  #include "mycls.hxx"

  HANDLE hEvent;

   int _cdecl main(
  int argc,
  char * argv[]
  ) {
  ULONG ulRef;
  DWORD dwRegistration;
  CHelloCF *pCF = new CHelloCF();

  hEvent = CreateEvent(NULL, FALSE, FALSE, NULL);

  // Initialize the OLE libraries
  CoInitializeEx(NULL, COINIT_MULTITHREADED);

  CoRegisterClassObject(CLSID_CHello, pCF, CLSCTX_LOCAL_SERVER,
      REGCLS_MULTIPLEUSE, &dwRegistration);

  // wait on an event to stop
  WaitForSingleObject(hEvent, INFINITE);

  // revoke and release the class object
  CoRevokeClassObject(dwRegistration);
  ulRef = pCF->Release();

  // Tell OLE we are going away.
  CoUninitialize();

  return(0); }

  extern CLSID CLSID_CHello;
  extern UUID LIBID_CHelloLib;

  CLSID CLSID_CHello = { /* 2573F891-CFEE-101A-9A9F-00AA00342820 */
      0x2573F891,
      0xCFEE,
      0x101A,
      { 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 }
  };

  UUID LIBID_CHelloLib = { /* 2573F890-CFEE-101A-9A9F-00AA00342820 */
      0x2573F890,
      0xCFEE,
      0x101A,
      { 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 }
  };

  #include <windows.h>
  #include <ole2.h>
  #include <stdlib.h>
  #include <string.h>
  #include <stdio.h>
  #include "pshlo.h"
  #include "shlo.hxx"
  #include "clsid.h"

  int _cdecl main(
  int argc,
  char * argv[]
  ) {
  HRESULT  hRslt;
  IHello        *pHello;
  ULONG  ulCnt;
  IMoniker * pmk;
  WCHAR  wcsT[_MAX_PATH];
  WCHAR  wcsPath[2 * _MAX_PATH];

  // get object path
  wcsPath[0] = '\0';
  wcsT[0] = '\0';
  if( argc > 1) {
      mbstowcs(wcsPath, argv[1], strlen(argv[1]) + 1);
      wcsupr(wcsPath);
      }
  else {
      fprintf(stderr, "Object path must be specified\n");
      return(1);
      }

  // get print string
  if(argc > 2)
      mbstowcs(wcsT, argv[2], strlen(argv[2]) + 1);
  else
      wcscpy(wcsT, L"Hello World");

  printf("Linking to object %ws\n", wcsPath);
  printf("Text String %ws\n", wcsT);

  // Initialize the OLE libraries
  hRslt = CoInitializeEx(NULL, COINIT_MULTITHREADED);

  if(SUCCEEDED(hRslt)) {

      hRslt = CreateFileMoniker(wcsPath, &pmk);
      if(SUCCEEDED(hRslt))
   hRslt = BindMoniker(pmk, 0, IID_IHello, (void **)&pHello);

      if(SUCCEEDED(hRslt)) {

   // print a string out
   pHello->PrintSz(wcsT);

   Sleep(2000);
   ulCnt = pHello->Release();
   }
      else
   printf("Failure to connect, status: %lx", hRslt);

      // Tell OLE we are going away.
      CoUninitialize();
      }

  return(0);
  }

Apprentice Hacker

  #!/usr/local/bin/perl
  $msg="Hello, world.\n";
  if ($#ARGV >= 0) {
    while(defined($arg=shift(@ARGV))) {
      $outfilename = $arg;
      open(FILE, ">" . $outfilename) || die "Can't write $arg: $!\n";
      print (FILE $msg);
      close(FILE) || die "Can't close $arg: $!\n";
    }
  } else {
    print ($msg);
  }
  1;

Experienced Hacker

  #include <stdio.h>
  #define S "Hello, World\n"
  main(){exit(printf(S) == strlen(S) ? 0 : 1);}

Seasoned Hacker

  % cc -o a.out ~/src/misc/hw/hw.c
  % a.out

Guru Hacker

  % echo "Hello, world."

New Manager

  10 PRINT "HELLO WORLD"
  20 END

Middle Manager

  % mail -s "Hello, world." bob@b12
  Bob, could you please write me a program that prints "Hello, world."?
  I need it by tomorrow.
  ^D

Senior Manager

   % zmail jim
  I need a "Hello, world." program by this afternoon.

Chief Executive

  % letter
  letter: Command not found.
  % mail
  To: ^X ^F ^C
  % help mail
  help: Command not found.
  % damn!
  !: Event unrecognized
  % logout

4 years agoДавно не писал про systemd... ибо он просто не работает
Sergey Matveev [Fri, 21 Aug 2020 10:50:00 +0000 (13:50 +0300)]
Давно не писал про systemd... ибо он просто не работает

Вчера с коллегами поднимали NSD сервер на современном CentOS.
systemctl start nsd отрабатывает, успешный код возрата, ничего не
говорит. А демона нет. В логах, выясняется, что nsd то в принципе не
запускался потому что :53 порт занят. Если запустить nsd руками, то он
честно возвращает плохой код. Что это значит? Значит что systemd даже с
своей первоочередной задачей не справился, не работает -- отвечает что
всё хорошо, хотя демон честно вышел с ошибкой. Ну и как с этим дерьмом
работать? Вопрос риторический конечно же и для меня это как Windows --
с этим я просто не связываюсь.

4 years agoПочему Ангус Янг постоянно в движении на сцене?
Sergey Matveev [Fri, 21 Aug 2020 07:44:27 +0000 (10:44 +0300)]
Почему Ангус Янг постоянно в движении на сцене?

http://www.hitkiller.com/angus-young-o-strashnyx-rannix-koncertax-ac-dc-oshhushhenie-bylo-takoe-esli-vstanu-na-meste-ya-trup.html
Оказывается, просто навсего, только так можно было выжить в австралийских пабах.

4 years agoВнезапное удобство с радио в сотовом телефоне
Sergey Matveev [Thu, 20 Aug 2020 11:21:21 +0000 (14:21 +0300)]
Внезапное удобство с радио в сотовом телефоне

Оказался я на работе, но с собой нет никакой подборки музыки, а ухи надо
чем-то заткнуть. В моём сотовом есть FM-радио, спасшее положение. Что бы
я делал без Rock FM!?

4 years agoФольклор программистов и инженеров
Sergey Matveev [Thu, 20 Aug 2020 06:08:02 +0000 (09:08 +0300)]
Фольклор программистов и инженеров

https://m.habr.com/ru/company/nix/blog/515518/
https://m.habr.com/ru/company/nix/blog/515740/
Подборка интереснейших случаев из жизни программистов (и немного
инженеров). Некоторые выглядят как байка, но про некоторые я уже не раз
слышал. И ведь действительно, подобные ситуации встречаются у многих
программистов, когда так и хочется сказать что "мистика!", "этого не
может быть" и тому подобное.

4 years agoПробую hexcore.ru VPS
Sergey Matveev [Mon, 17 Aug 2020 07:59:07 +0000 (10:59 +0300)]
Пробую hexcore.ru VPS

Продолжаю тему с поиском VPS (af1526a68c11413bc9caeca86cca355fbac04af8)
и решил попробовать HexCore несколько дней назад. Описания на сайте
понравились грамотные. Оплатил пока карточкой мамы (у меня только Мир,
без какой-либо возможности оплаты через Интернет), потом уж буду думать
как оплачивать самостоятельно. Регистрация, оплата и получение готовой
VPS-ки заняли типа минут 5 и вот уже есть SSH.

Образ FreeBSD там есть далёкий по свежести, даже pkg update уже не
сработает. Но можно из своего .iso поставить систему. IPv4 получается по
DHCP, а вот IPv6... никак не получился. Связался с техподдержкой и через
какое-то время заработал SLAAC, а то RA я tcpdump-ом не видел прежде и,
даже добавив единственного соседа (по tcpdump увиденного), всё равно
ничего не взлетало.

IPv4 PTR можно добавить через панель управления, а IPv6 через письмо в
техподдержку. Добавил, написал, но в течении двух суток ничего нигде не
обновилось. Написал в техподдержку и сегодня утром заметил что где-то
PTR появился, но через раз -- явно кэши сейчас протухают/переобновляются.

Удалённый доступ (KVM) у меня заработал в старом Firefox (отдельная
машина, включённый JS) из коробки: никаких Java-applet-ов, как на
прошлой VPS, не нужно ставить. Это большой плюс.

Не очень конечно круто что, куда ни стукнусь, то не работает, но да
ладно, бывает. Если компания молодая (copyright на странице начиная
2018-го года вроде где-то было), мой id вообще 8xxx, то не так страшно,
я считаю. Главное чтобы дальше работало. Пока мониторинг (ping/TCP
коннекты) показывает что с доступностью всё хорошо. Но неужели у них
никто не поднимает почтовые сервера? Или это просто так совпало и
временные проблемы были? Но пока впечатление положительное, хотя IPv4
PTR до сих пор не прососался, но я вижу что теперь за зону хотя бы
отвечает hexcore.ru DNS сервер, а прежде какой-то совсем не родной был.

А ещё сегодня заметил вот такие SOA записи:

    a.0.0.0.0.0.c.a.4.0.a.2.ip6.arpa. 3600 IN SOA ns-ipv6.hexcore.ru. 2020081605. 3600 900 604800 3600 3600

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

4 years agoГодное предложение по современному Web-у
Sergey Matveev [Mon, 17 Aug 2020 07:45:05 +0000 (10:45 +0300)]
Годное предложение по современному Web-у

http://www.stargrave.org/WebForbidden.html
Годное с моей точки зрения. Добавил абзац с тем, как я видел бы
возможность посещения современных Web-страничек в Интернете. Хороший
вопрос, конечно же, а зачем? Но если им не задаваться, то вместо того,
чтобы серверы отдавали кучу исполняемого кода, который наши машины
должны выполнять, можно было бы делать VNC/X11/whatever подключение по
которому у нас фактически просто удалённый доступ. Как в BBS-ках было. Я
вот про себя думаю чем бы это сильно отличалось от "классического"
использования Chrome и не нахожу чем. На современных сайтах уже нормой
является перехват нажатий клавиш чтобы делать то, что броузеры 25+ лет
назад умели (поиск, прокрутка) (ff1d0be750ab73518138fe8f04b423822081d5d1),
а значит удобно настроенный броузер (Pentadactyl для Firefox и всё такое)
уже не будут работать, ибо родной функционал броузера не будет рабочим.
Сохранить страницу на диск, чтобы в offline смотреть, тоже не выйдет,
это же real-time rendered single page application какой-нибудь. В итоге,
удалённый запуск всё равно ничем не будет менее удобен, зато локального
никакого кода не выполняется, не ставится безопасность под удар, не
нужно тонны невероятно сложного (c07d35c602ac5422060333ff43fff37d4d44b38f)
софта, который надо регулярно-регулярно обновлять. А если это будет
X11-like протокол, а не просто передача растрового изображения (RDP/VNC),
то и трафика наверняка будет куда меньше. Даже с хорошим сжатием растра
RDP/VNC, мне кажется, выигрыш в трафике будет.

Только всего этого не будет, ибо как же о нас собирать данные то!?

4 years agoNotepad++ заблокирован в Китае
Sergey Matveev [Mon, 17 Aug 2020 07:33:35 +0000 (10:33 +0300)]
Notepad++ заблокирован в Китае

https://www.opennet.ru/opennews/art.shtml?num=53559
Так держать, ибо есть только два редактора Vi(m) и Emacs! А если
серьёзно, то ожидаемо, раз автор программы начал приплетать к ней
политику. Его право, как автора, безусловно. Но и право других
отказываться/запрещать/whatever, особенно когда приплетается то,
чего не просят и не ждут. Я б вот тоже бы не прочь запретить
пользоваться своим софтом некоторым людям/нациям, но... софт я
пишу для людей и для решения задач и в надежде что он ещё кому-то
поможет, как и мне. А когда я вижу политические вставки, особенно
с которыми не согласен, то... используя софт в котором прописано
"против оккупации Крыма" (которой нет, с моей точки зрения), я,
получается, поддерживаю автора и поддерживаю это высказывание, ведь
оно же неотъемлемо от доки/релиза/сайта проекта. Если бы автор это
писал в своём личном блоге -- ну был бы неприятен как человек, но да
и пофиг, ведь и убийцы (Райзер) и психопаты и больные на голову люди
могут делать отличный софт. Если бы Роб Пайк/Ян Ланс Тейлор на личных
страницах писали о поддержке черножопых, то и пофиг, но когда на
golang.org весит эта поддержка, то как бы вот хочется выкинуть Go.
По моему, никому лучше от привлечения политики в софт не к месту (ну
какая может быть взаимосвязь между редактором и Уйгурами?) не может
стать лучше, ну кроме автора, сделавшего вброс. Чёрт, да мне уже
приходилось у себя делать fork софта чтобы вернуть назад работавшие
whitelist/blacklist переменные конфигурации. Ну вот и, спрашивается,
нафига всё это?

4 years agoПобеда проприетарных централизованных цензурированных средств общения
Sergey Matveev [Sat, 15 Aug 2020 08:48:04 +0000 (11:48 +0300)]
Победа проприетарных централизованных цензурированных средств общения

В 8e063a1d7c3febd7e9770b1cca6b6a33cfb8a0f8 писал что у меня был и Jabber
и SIP когда-то. А перестал их использовать потому что общаться через них
не с кем. Реально раньше проще было найти того кого не было бы в Jabber.
С девушкой я вовсю по SIP общался. А сейчас даже на работе люди
используют какой-нибудь Mattermost (благо к нему есть IRC-мост). Не то
чтобы Jabber был чем-то объективно сильно лучше, но для него десятки
самых разных клиентов, а для MM вот с гулькин нос. У друзей только
централизованные IM-ы остались, но с ними или email-ом перебрасываюсь
или в живую встречаюсь.

С другой стороны и мне IM-то не горит ни для чего. Нужен он только на
работе (некоторые вопросы с ним проще обсуждать/решать), но там MM через
IRC всё же да есть.

Всё же смартфоны это гениальнейшее 1984-изобретение!

4 years agoКозий начёс
Sergey Matveev [Fri, 14 Aug 2020 19:40:39 +0000 (22:40 +0300)]
Козий начёс

http://koz-naches.narod.ru/
На narod.ru я вообще делал всего два сайтика: свою домашнюю и вот сайт
супер панк-хардкор группы Козий Начёс. Ну точнее я только помогал в
начале и делал HTML-вёрстку. Наполнение всё одногруппники придумывали.
До сих пор жив!

4 years agoМоя древняя домашняя страница на narod.ru
Sergey Matveev [Fri, 14 Aug 2020 19:19:31 +0000 (22:19 +0300)]
Моя древняя домашняя страница на narod.ru

https://web.archive.org/web/20071215090104/http://stargrave.narod.ru/
Один знакомый поделился вот такой вот заархивированной ссылкой моей
домашней страницы, похоже, в первые годы вообще моего нахождения в
Интернете. Из контактной информации всё мертво: email-а нет, jabber не
использую (хотя клиент есть и тестовые учётные записи), SIP давно
прекратил вообще (надобности нет). Среди выложенного софта только torn
сейчас доступен у меня в git и, более того, постоянно используется.
Жесть, куча JavaScript-а какого-то, даже не помню чего делающего. Ещё
даже не помню что я на D вообще что-то писал оказывается. Странно, но
написано что дома у меня Debian, а на работе FreeBSD... этот момент
что-то совсем не помню, но, судя по http://www.stargrave.org/WareHistory.html
у меня ноутбука действительно ещё не было. Мог бы я тогда поверить что
среди музыкальных групп у меня появится Lenka и Dolores O’Riordan :-)?
А вот почти весь софт в ETegro Technologies позже был открыт и сделан
свободным ПО.

Вообще свою домашнюю страницу я переделывал уйму раз. На narod.ru многое
для института выкладывал отсканированного (точнее отфотографированного,
ибо это сильно быстрее, а качество really is good enough, переведённое в
DjVu). Как-то домашняя страница точно была сделана чисто в виде
dirlisting-а с README-шками, как-то только в виде FTP, если память не
изменяет. Как-то была доступна только по Gopher. Как-то была написана на
Python Sphinx. Вроде была версия целиком сделанная и на VimWiki плагине.
Со стороны звучит как: я годами только домашней страничкой и занимался
:-), но точно на это время я много не тратил никогда. Да и информации то
там особо не было, тем более полезной.

4 years agoУровень статей на Хабре
Sergey Matveev [Thu, 13 Aug 2020 15:15:56 +0000 (18:15 +0300)]
Уровень статей на Хабре

https://habr.com/ru/post/514996/
Ну зашибись статья: как я смотрел tcpdump и видел что ESP не передаётся
и поправил настройку firewall. Я даже в домашних условиях подобные вещи
делаю в течении пары минут и эта сущая рутина. Что дальше? Статьи из
серии "как я обнаружил что в PATH отсутствует директория и поэтому vim:
command not found"? Коллега с работы уже много лет назад говорил что для
него весь Хабр стал таким. Действительно подобных статей много, но всё
же и интересных не мало. Но эта вот прям побесила.

4 years agoВыбираю VPS/VDS
Sergey Matveev [Thu, 13 Aug 2020 08:33:49 +0000 (11:33 +0300)]
Выбираю VPS/VDS

Текущий хостер совсем забил на то, что нельзя через его Java-applet
зайти (да, для этого у меня отдельный компьютер физический аж выделен)
удалённо зайти на сервер. Сервер поэтому не трогаю, пока работает. Но
переходить придётся из-за этого на что-то, что можно будет восстановить
в случае неполадок. Пока просто хожу по сайтам и читаю их договоры и
условия. А VPS-ка нужно только для одного: для исходящей почты, ибо
гадский Ростелеком предоставляет возможность прописывания PTR записей
только для юрлиц, в отличии от NetByNet.

* у одних я в договоре увидел прям отдельный пункт о том, что почта к
  ним должна быть в кодировке CP1251 или KOI8-R, а всё остальное
  отсеется. Даже улыбнуло
* у многих прописано что нельзя ставить даже IM-ы. То что нельзя ставить
  Tor ноды -- это было уже давно и мне знакомо. Я когда в прошлый раз
  искал хостера, то спрашивал можно ли (если явно нигде не было
  отмечено). Некоторые мне честно отвечали что можно, но до первого
  abuse письма к ним. Всё честно, как надо -- среди таких и выбирал. Уж
  чем может не угодить IM я не понимаю
* у некоторых написано что нельзя ставить VPN софт. Зашибись, я поднимаю
  IPsec между DNS серверами, как минимум, чтобы защитить репликацию между
  master/slave, но это у них будет запрещено? Сразу отметаются
* отдельная тема это IPv6 адреса. Уже писал в
  633e7c0c2f3f30fd35cca2823ac27c18318d3fa6 что это смешно когда выдают
  единичные IPv6 адреса. Это просто прям полнейший лохотрон, я считаю.
  Но заметил что такое предлагают только самые дешёвые хостеры, видимо,
  которые и ценами пытаются привлечь. Начиная с какого-то момента, с
  какой-то цены, все уже честно выдают /64, а то и /32 за какие-то сотни
  рублей/мес
* ещё боль это удалённый доступ до сервера. На моём текущем используется
  Java-applet... ну который в итоге и перестал работать. Да даже
  первоначальная установка была тем ещё приключением. Я думал что хуже
  уж вряд ли быть что может. Ан нет, у одних вообще Flash-based KVM.
  Честно, у меня вообще никогда в жизни не было Flash ни на одном
  компьютере, даже родительском. Я уж и забыл про эту технологию

4 years agoLTE голос можно дешифровать
Sergey Matveev [Wed, 12 Aug 2020 15:25:43 +0000 (18:25 +0300)]
LTE голос можно дешифровать

https://blog.cryptographyengineering.com/2020/08/12/attack-of-the-week-voice-calls-in-lte/
https://revolte-attack.net/
Из-за говёных реализаций LTE, можно дешифровать голосовой трафик, потому
что шифр в потоковом режиме и один и тот же ключ переиспользуется. Точно
так же по этой же причине я не могу в принципе доверять китайским WiFi
реализациям -- протокол то они блюдут, но кто их знает как?

4 years agoencoding/asn1 в Go
Sergey Matveev [Wed, 12 Aug 2020 06:57:37 +0000 (09:57 +0300)]
encoding/asn1 в Go

https://golang.org/doc/go1.15
Они реально в ASN.1 SET OF не делали сортировку, производя совершенно
невалидный DER. Плюс строгость из декодера очень низкая и они только
сейчас добавили проверку на минимальность кодирования OBJECT IDENTIFIER.
Я уже давно им отправлял патч на аналогичную проверку в INTEGER, но
проигнорировали. Эта библиотека ужасна и как кодер и как декодер.
Впрочем, её никогда и не представляли как какую-то настоящую и
полноценную, а только чтобы ей *хоть как-то* можно было распарсить X.509
сертификаты. У меня уже была мысль на Go написать нормальную, ибо опыт с
PyDERASN-ом уже есть, но задач нет, а на работе Go не хотят видеть.

4 years agoAphex Twin оказывается в 1994-ом зарёкся к нам приезжать
Sergey Matveev [Tue, 11 Aug 2020 20:12:13 +0000 (23:12 +0300)]
Aphex Twin оказывается в 1994-ом зарёкся к нам приезжать

https://www.youtube.com/watch?v=CFrNYdpqNMY
Некоторые выпуски документального фильма о русской попсе смотрю и вот
узнал что в 1994, оказывается, был фестиваль электронной музыки. И на
нём был Aphex Twin. Я немного шокирован -- не слышал о таком. Так зал
был полупуст, а Ричард отравился у нас какой-то едой и пролежал в
какой-то больнице, после чего ноги больше не будет в России. Я конечно
был маленький тогда, но сейчас на Aphex Twin я бы сходил не задумываясь.

4 years agoESNI, HSTS безопасность
Sergey Matveev [Tue, 11 Aug 2020 12:50:11 +0000 (15:50 +0300)]
ESNI, HSTS безопасность

https://en.wikipedia.org/wiki/ESNI#Encrypted_Client_Hello
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security#Preloading_Strict_Transport_Security
В дополнении к предыдущему посту, увидел тут что для работы ESNI в
Firefox требует включённого DNS-over-HTTPS. Замечательно, но какая
взаимосвязь? Хотят аутентифицировать DNS ответы? Замечательно, DNSsec
значит броузером не шибко доверяется, а CloudFlare/Google серваки вполне
себе. Просто DoH это значит сливать информацию о том куда ты собираешься
подключаться, по умолчанию, в CloudFlare/Google, насколько помню. А
будет кто геморроится переключением DoH на другие серверы? В итоге,
*по умолчанию*, включая ESNI в Firefox мы мешаем DPI, но и теряем свою
приватность, сливая данные в США.

А ещё сегодня узнал про HSTS preloading. Про себя подумал: уж неучто
обращение к какому-то централизованному серверу для загрузки HSTS?
Именно! И не удивительно что это сервер от Google, конечно же. Ещё
больше сливаем, не стесняемся!

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

4 years agoTikTok, США и иже с ними
Sergey Matveev [Tue, 11 Aug 2020 08:17:30 +0000 (11:17 +0300)]
TikTok, США и иже с ними

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

Очевидно, всё это происходит с любым популярным приложением в смартфонах
от всем известных компаний: Facebook, Google, Apple, Telegram и подобных.
Но наезд у США только к TikTok. Опять же, очевидно что только из-за того
что TikTok не под их контролем (или они не хотят "делиться" этим
контролем). Поэтому они и делают что могут чтобы вынудить и заставить
TikTok продаться. В статьях пишут что они нагло, беспредельно, ещё и с
требованиями откатов/комиссий этой делают. А кто им запретит это? США
имеет самую большую террористическую организацию в мире и никто ничего
не может с ней поделать, ибо у неё есть сила. Право силы никто не
отменял. Вот и в случае с TikTok-ом: доходы зависят от возможности
установки и сотрудничества с устройствами и ПО которыми управляют США --
поэтому их право, потому что это их платформы и софт.

Аналогично, существовал не один глобально доверяемый полностью
бесплатный certificate authority для выдачи X.509 сертификатов для
сайтиков. США просто немного поздно опомнилась и увидела что никого из
них (а они популярны, ибо бесплатны!) нет под их контролем. Поэтому
быстренько от всех избавилась, просто сказав Microsoft/Google/Apple
убрать под всякими предлогами их из доверенных CA ОС/броузеров. Ну и при
этом сделав Let's Encrypt. Аналогичная уже неоднократно существующим
поделие (ну только со своим софтом/протоколами), добавив во всех CA
ОС/броузеров, только, наконец то, под контролем США. Ну а чтобы
заставлять регулярно взаимодействовать с ними и усложнять жизнь умникам
с certificate pinning-ом, ещё и довольно короткий срок жизни сделали у
сертификатов.

У меня к США нет никаких нареканий или негодований: они делают что
должны, пользуются тем, что их устройства, с их софтом, у преобладающего
большинства населения Земли в штанах находятся. Они никого не заставляют
покупать эти Android/iOS, не доплачивают, не просят -- люди сами охотно
себе эту слешку в штаны засовывает и почему бы этим не воспользоваться?
Даже когда ты (Facebook/Apple) неоднократно будешь уличён в тотальном
нарушении приватности людей... да и пофиг, люди всё равно никуда не
денутся ибо для них всё это дороже чем собственная безопасность,
отсутствие цензуры, приватность.

Но основная масса людей то и о ракетах, ПВО, ПРО и о вообще войсках не
задумывалась бы -- захватывай кто хочешь. Поэтому есть отдельные органы
вынужденные думать и брать у людей средства на обеспечение их
безопасности. И в этом плане Китай молодец что изолировал своих граждан
от тьмы продуктов Google/Facebook. С Apple они договорились и ключи
шифрования от облаков Apple своих граждан у них есть:
https://blog.cryptographyengineering.com/2018/01/16/icloud-in-china/
А США молодец что старается изолироваться от КНР, тоже не дураков
воспользоваться своим положением. Думать про свободный, не изолированный
Интернет, без границ, по моему, уже глупо, ибо вектор развития Интернета
идёт только в сторону национализации и бороться с этим... я даже не знаю
как. Да и какой смысл с этим бороться? Государствам -- хорошо, ибо у них
всё под контролем. Основной преобладающей массе людей тоже хорошо -- ибо
им и Интернет то не нужен, а нужны развлечения и пофиг-хоть-какая
соцсеть для общения со своими знакомыми, а скорости каналов
увеличиваются, контента становится всё больше. Нужны китайцам эти наши
Google и Facebook? Да у них свои и не меньше есть. Банки будут
продолжать работать между собой. Компаниями тоже никто не отказывает в
whitelisting-е. Люди говорить могут всё что угодно, но когда они
приобретают смартфон и ставят туда WhatsApp/Telegram и регистрируются в
Instagram/Facebook/whatever -- они показывают что им насрать на
Интернет, на всю эту свободу и приватность. Поэтому думать о препятствии
национализации Интернет(ов) -- просто глупо. И на всём этом фоне мне
печально видеть что РФ пока не проявляет свою силу и волю чтобы
ограничить своих граждан от слежки со стороны США. Ну тут понятно: мы на
весь этот мир смартфонов и связанных с ними приложений никак не влияем,
в отличии от страны с самой сильной экономикой и страны с самой сильной
террористической организацией, пишущей софт для этих смартфонов.

4 years agoИнтернет то куда катится?
Sergey Matveev [Tue, 11 Aug 2020 08:04:44 +0000 (11:04 +0300)]
Интернет то куда катится?

https://www.opennet.ru/opennews/art.shtml?num=53520
https://habr.com/ru/company/cloud4y/blog/514606/
https://nag.ru/news/newsline/107560/frantsuzyi-lishatsya-bezlimitnyih-tarifov-vinovat-standart-5g.html
https://nag.ru/articles/article/107548/a-chto-tak-mojno-ssha-otjimayut-amerikanskiy-segment-tiktok.html

* В США хотят сделать свой великий firewall
* В КНР блокируют ESNI (ECH?) TLS 1.3 соединения
* Во Франции хотят покончить с безлимитными тарифами
Короче тьма цензуры, неработающие соединения, whitelist-ы да и просто
дороговизна будет. Всё будет тип-топ если только использовать несколько
национальных (к сожалению, в случае с многими странами не национальных,
а СШАшных) сервисов, без какой-либо приватности. Я уже не первый год
говорил что всё катится к этому и так оно и есть.

Я наверное сейчас первый раз увидел логотип TikTok (картинки включил в
броузере) -- это же самый настоящий вырви-глаз! Они делают типа
стереоскопическое изображение на которое ты смотришь без очков
соответствующих. Приятно? Мне прям психологически жутко неприятно на это
смотреть и хочется закрыть страницу. В начале я вообще подумал что это
автор статьи/картинки с Трампом специально эффект такой применил.

4 years agoTrueCrypt/VeraCrypt то не свободное ПО
Sergey Matveev [Mon, 10 Aug 2020 13:28:49 +0000 (16:28 +0300)]
TrueCrypt/VeraCrypt то не свободное ПО

http://lists.opensource.org/pipermail/license-discuss_lists.opensource.org/2013-October/018670.html
https://www.gnu.org/licenses/license-list.html#Truecrypt-3.0
Даже не open-source approved.

4 years agoFallout Sonora
Sergey Matveev [Sun, 9 Aug 2020 14:19:18 +0000 (17:19 +0300)]
Fallout Sonora

https://dtf.ru/games/145821-fallout-sonora-pretendent-na-lishenie-zdorovogo-sna-obzor-mnenie
Есть вот такая вот игра на движке от Fallout 2. Говорят, что это прям
как старый добрый Fallout 2. Беру на заметку, когда-нибудь за сыграю
наверняка.

Среди всех игр из Fallout серии я играл только в Fallout 2 и чуть-чуть в
Fallout 1. Если оценивать игру по тому сколько времени она из жизни
человека отнимает, готов ли он снова её поставить и сыграть, то лучшей
игрой из когда-либо созданных, для меня, будет как-раз Fallout 2.
Fallout 3 и более поздние: уже нет тёплой ламповой пиксельной спрайтовой
графики и нет никого кто бы отзывался так же восторженно о всех
последующих игр. Fallout 2 это шедевр шедевров, без преуменьшения.

Кажется, что уж несколько раз пройдя игру, ничего интересного в ней не
останется. Я F2 проходил не один десяток раз (40-50?) и ни разу не было
чтобы я пожалел о потраченном времени или о том, что я ничего нового но
не открыл.

Впервые я сыграл Fallout 1 у знакомого, когда мне было совсем ничего
лет. Для маленького пацана система управления Fallout была чересчур
сложной и, вроде, я и крысу то не смог убить и выйти из подземелья в
начале игры. В более осознанном возрасте у меня уже появился Fallout 2,
благо, не требовавший ресурсы на ПК. Точно не помню, но вроде это всё
было ещё на 486-ом компьютере (у нас всё же был 120 DX2 MHz) под Win95,
так что речь ещё о 90-х годах. По моему не было и года чтобы я не
поставил (плюя на всё!) WineHQ под которым не запустил бы F2 -- так что
эта игра у меня 20+ лет запускается.

Мне кажется что она ещё так круто заходит потому что очень много
заставляет достраивать в воображении, ведь тьма вещей там никак не
показывается, никак в графике не отображается -- есть только тьма
диалогов. Чем-то Fallout напоминает IF, где тоже только масса текста, а
дальше уж сам визуализируй в голове.

Отдельной темой в ней является музыка. Среди всех игроделов музыкальных
я знаю только одного человека: Марка Моргана (ну ok, с недавних пор и
Мика Гордона -- создателя Doom (4) soundtrack). Потому что он делал
soundtrack для Fallout 1/2. Я знаю каждый звук наизусть в его музыке.
Знаю *абсолютно* всё в ней. Ни разу не было чтобы я в фоне поставил
какую-то другую музыку (играть в Fallout 1/2 можно и без звука вовсе без
проблем), хотя "родную" я заслушал уж до дыр. 1a3127583b1f762a39ee32a9907d68b1fee5d297

Пока искал системные требования для F2 (ну чтобы убедиться что он точно
мог пойти на мощном 486-ом), то увидел:
https://www.game-debate.com/games/index.php?g_id=658&game=Fallout%202
https://www.game-debate.com/games/index.php?g_id=654&game=Fallout%201
1.4GHz/512RAM/128VRAM -- они там совсем того что ли на голову больные?
Или это минимальные требования которые современные геймеры вообще могут
представить? Так то его официальные требования это 90MHz/16MRAM/SVGA.
Причём на жёстком диске он мог занимать несколько мегабайт места и все
сохранённые игры -- всё остальное прозрачно считывалось с единственного
CD-ROM диска. Кстати Fallout 1 шёл штатно под DOS. Движок F2 вообще-то
ничем не отличается от первой части, но его уже заставляли запускать под
Windows 95.

4 years agoFSF -- всё, закончилась, стыд и позор
Sergey Matveev [Fri, 7 Aug 2020 19:16:28 +0000 (22:16 +0300)]
FSF -- всё, закончилась, стыд и позор

http://www.fsf.org/blogs/community/the-fsfs-approach-to-using-online-videos-for-advocacy
Только недавно была новость про её президента, так теперь новость о том,
что: да, как бы Apple не была плоха в поддержке свободных форматов, мы
всё равно пойдём ей навстречу и будем поддерживать AVC.

FSF/GNU всегда прежде использовали только Ogg (Theora/Vorbis) и позже
WebM. Столлман и его подходы мне нравились своей беспринципностью и
жёстко позицией в своих убеждениях. Чесать языком может каждый -- вон,
политики этим как занимаются то умело. А вот дела делать и отвечать за
свои слова мало кто могёт. А FSF сейчас просто как шлюха легла под Apple.
Теперь я на 100% уверен в том что правильно сделал что не доверял ей,
когда они выгнали Столлмана, и все свои проекты на GPLv3-only перевёл.

4 years agoGoogle корпоративная сеть на IPv6-only
Sergey Matveev [Fri, 7 Aug 2020 13:16:46 +0000 (16:16 +0300)]
Google корпоративная сеть на IPv6-only

https://habr.com/ru/post/514250/
SLAAC, NAT64+DNS64 для legacy Интернета. Молодцы!
Я в 973e17cba7e250d696f136339a2cb8010d66205d дома тоже пробовал делать
NAT64/DNS64 -- работает, без заметных проблем. BitTorrent конечно не
будет с legacy Интернетом работать, но для сайтов в самый раз.

4 years agoРазочарование в софте
Sergey Matveev [Fri, 7 Aug 2020 07:47:28 +0000 (10:47 +0300)]
Разочарование в софте

https://m.habr.com/ru/post/423889/
Я уже писал про эту статью в bb09bd6fb88009c4db4caf0e8372bbde38a56701,
но вчера снова её перечитал и как же хорошо она написана! А вышел на неё
через https://m.habr.com/ru/post/514144/, где пытаются что-то сделать с
загрузкой страниц где 2500 комментариев. Мир броузеров и JS решений это
просто ужас: они реально предлагают перехватывать "Ctrl-F" нажатия для
поиска и что-то там ещё по поводу перехвата PgUp/PgDown есть. У меня
наверное больше десяти лет ни в одном броузере этих Ctrl-F не было, ибо
стоят плагины где эмулируются Vi-like нажатия. По сути на JS прям
переизобретают движки броузеров и их интерфейсы, ломая то что уже есть.

И я понял почему я так не люблю современную "Linux"-экосистему: она же
стала точно таким же дерьмом как и смартфоны с 50-мегабайтными
приложениями для фонарика или современные web-страницы, которые на любом
железе и софте будут всё равно медленно открываться. У кого бы я не
видел смартфоны, то всегда поражаюсь что любое действие сопровождается
визуальной задержкой. На моём Palm любое действие было моментально:
тыкнул -- сразу на экране результат (если речь не про загрузку игры,
большой .fb2 книги, и т.п.).

4 years agoОн написал статью не глядя на клавиатуру
Sergey Matveev [Thu, 6 Aug 2020 17:48:25 +0000 (20:48 +0300)]
Он написал статью не глядя на клавиатуру

https://habr.com/ru/company/dodopizzadev/blog/462747/
Посмотрел бы на мою клавиатуру, всё равно бы ни одной буковки не увидел :-)
Эх, вот у меня не было в жизни такого времени когда я бы смотрел и
завидовал тем кто печатает в слепую. Я просто таких начал встречать
только уже когда и сам так начал делать. А вот что всё же удивляет, так
это то, что люди этому специально учатся. Просто надо меньше отвлекаться
от компьютера, меньше в руки брать мышку/трэкбол/trackpoint/whatever, не
тратить время на жизнь вне компьютера -- слепой метод печати сам по себе
придёт :-). Ведь сам организм же будет стремится делать так, чтобы было
удобно и эффективно: то бишь не отвлекаться глазами на то куда жмёшь. Но
мне больше конечно запомнился комментарий в
5cc80017a3a5b30aa8a4e74b80abb8ea2f175a3f, когда людей просто зажали за
клавиатуры без "родных" букв на них и через пару месяцев всё летает.

4 years agoПользуются ли правым shift при наборе текста?
Sergey Matveev [Thu, 6 Aug 2020 17:37:20 +0000 (20:37 +0300)]
Пользуются ли правым shift при наборе текста?

https://habr.com/ru/company/dodopizzadev/blog/511664/
Статья не про Shift, но я удивлён опросу, в котором 90% опрошенных
говорят что не пользуются им. Я понятия не имел, пока не посмотрел какой
Shift я нажимаю. На данный момент я не особо понял когда я *левый*
нажимаю. При литературном тексте моя рука вроде как 100% времени
нажимает только правый. Причём без разницы в какой части клавиатуры
находится набираемый символ: я всё равно жму мизинцем правый shift.
Как же люди отличаются в наборе текста!

4 years ago3 года эволюции S3 в mail.ru
Sergey Matveev [Thu, 6 Aug 2020 17:23:19 +0000 (20:23 +0300)]
3 года эволюции S3 в mail.ru

https://habr.com/ru/company/mailru/blog/513356/
Интересно было почитать простым и доступным языком про то, как у них
эволюционировалось хранилище и стало поддерживать S3. В принципе ничего
нового для себя не открыл и не узнал -- ибо прекрасно понимаю что для
чего и почему. Можно сказать что прям классическая история как растут и
развиваются системы подобные.

4 years agoLLVM 10 в OpenBSD и Apache 2
Sergey Matveev [Thu, 6 Aug 2020 13:07:43 +0000 (16:07 +0300)]
LLVM 10 в OpenBSD и Apache 2

https://www.opennet.ru/opennews/art.shtml?num=53499
Оказывается, Apache2 запрещён к использованию в OpenBSD! А ведь именно
эта лицензия рекомендуемая на GNU.org в качестве permissive варианта. В
Google табу на AGPLv3, а в OpenBSD и на GPLv3 и даже на permissive
Apache 2. Только всё равно отошли от своих принципов то.

4 years agoGeoffrey Knauth -- новый президент FSF
Sergey Matveev [Thu, 6 Aug 2020 11:48:42 +0000 (14:48 +0300)]
Geoffrey Knauth -- новый президент FSF

https://www.opennet.ru/opennews/art.shtml?num=53500
Сейчас я понимаю что мне совсем Фонд СПО уже не интересен. Поглядел я
резюме его -- ну просто толковый разработчик, поддерживает СПО, но... в
основном то он работал и писал для проприетарных систем всё. Идеологом и
примером для подражания как Столлман он быть уже не может по определению.
Впрочем, я и так то смутно понимаю что делает и чем занимается FSF,
особенно когда в нём больше нет RMS. Кнаут выглядит просто обычным
толковым мужиком, ничего плохого, но и ничего примечательного.

4 years agoВзрыв в Бейруте
Sergey Matveev [Thu, 6 Aug 2020 11:26:31 +0000 (14:26 +0300)]
Взрыв в Бейруте

http://lleo.me/dnevnik/2020/08/05
Солидарен со всем что сказано в статье этой. Жалко людей погибших и
пострадавших. Конечно, никто из нас не знает всех деталей, но у меня в
голове абсолютно аналогичные мысли возникали что выглядит так, что
решили взять поборы, из-за этого судно не смогло выйти, а его груз, по
сути, спёрли к себе, но не смогли найти кому продать.

А я ведь в прошлом году как-раз пару ночей вроде бы там недалеко проживал.

4 years agoМоё резюме от работы с redo
Sergey Matveev [Wed, 5 Aug 2020 18:19:25 +0000 (21:19 +0300)]
Моё резюме от работы с redo

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

* писать для него цели *значительно* проще! Вспоминая какие бы я
  прописывал цели в Make, ещё и нифига не работавшие бы одинаково под
  BSD и GNU версиями, бросает в дрожь
* он очень хорошо заставляет подумать над зависимостями и аккуратностью
  их прописывания, над стадиями/целями на которые хочется разбить
  задачу. Если ранее написанные цели и меняются сильно, то зачастую
  только упрощаясь
* то что раньше я в Make бы прописывал как цель, сейчас многое вынесено
  просто в отдельные скрипты, не касающиеся системы сборки. Зачем,
  спрашивается, иметь цель у которой никаких зависимостей и никакого
  взаимодействия с системой сборки? Это ещё больше вылизывает проект
* я никогда не видел столь тщательно работавшую сборку: ничего лишнего
  не пересобирает, не бывает чтобы что-то не дособралось. Конечно, всё
  это напрямую зависит от того как я пропишу зависимости, но в Make
  никогда нельзя было удобно и по человечески это всё сделать: либо
  слишком много соберёт, либо на что-то забьёт (уже чисто по своей
  природе зависимости от mtime). Я до сих пор не всегда верю redo и
  делаю по привычке clean -- уже выработавшиеся рефлексы от Make

4 years agoПервым словом всё же было "hell"
Sergey Matveev [Wed, 5 Aug 2020 10:52:08 +0000 (13:52 +0300)]
Первым словом всё же было "hell"

https://stackoverflow.com/questions/602237/where-does-hello-world-come-from/12785204
Первыми символами выведенными всё же были "hell", а уж потом "o, w" и "orld".
Оказывается, это ограничения на длину символов в B.

4 years agoРоссийские госсайты без HTTPS
Sergey Matveev [Tue, 4 Aug 2020 19:25:03 +0000 (22:25 +0300)]
Российские госсайты без HTTPS

https://habr.com/ru/post/513800/
И авторы статьи пишут "нормальный SSL-сертификат от Let's Encrypt". Вот
уж LE это как-раз и есть иллюзия безопасности. А с госсайтами видно
просто по http:// URL-у что безопасности нет, никаких иллюзий, чётко
оценивайте риски, всё чётко и понятно. Ну и вопрос к серьёзности того
что делает хостер и что нужно для TLS-а ФСБшного сайта -- это разные
требования.

Да и главный вопрос: это какой же CA будет отвечать за аутентичность
сайтов ФСБ, МВД, СВР, и т.д.? Кто будет *доверенной* третьей стороной
для них? А кто из CA при этом присутствует во всех этих броузерах и ОС
пользователей?

А вообще, где надо, так криптографией, исключительно ГОСТовой, всё
обёрнуто ещё как.
из Интернета это не приоритет.

4 years agoOla Bini то, оказывается, сел в Эквадоре
Sergey Matveev [Tue, 4 Aug 2020 15:07:00 +0000 (18:07 +0300)]
Ola Bini то, оказывается, сел в Эквадоре

https://en.wikipedia.org/wiki/Ola_Bini
https://www.otr.im/blog/
Разработчик OTRv4 оказывается посажен год назад в тюрьму в Эквадоре. А я
то удивлялся почему OTRv4 репозиторий так давно не обновлялся.

4 years agoПереключение между .c/.h файлом в Vim
Sergey Matveev [Mon, 3 Aug 2020 11:50:43 +0000 (14:50 +0300)]
Переключение между .c/.h файлом в Vim

https://vim.fandom.com/wiki/Easily_switch_between_source_and_header_file
Много всяких решений, но одно из самых простых, это руками вызвать
редактирование с подстановкой нужного расширения: :e %<.h

4 years agoBlood: Fresh Supply -- нельзя брать
Sergey Matveev [Mon, 3 Aug 2020 08:13:39 +0000 (11:13 +0300)]
Blood: Fresh Supply -- нельзя брать

https://www.youtube.com/watch?v=EkG29e-nE-A
Судя по видео, недостатки/баги/изменения делают перевыпущенную версию
игры ощутимо хуже оригинальной. Даже я помню многие моменты и понимаю
что они изменились, отмеченные в этом ролике. Blood мне ещё запомнилась
как самая сбалансированный FPS из всех. Если в Doom/Quake полно моментов
когда у тебя полтысячи патронов к куче оружия, то в Blood, как правило,
ничего лишнего, почти единичные точно выверенные количества. А если 400
патронов к автомату -- да их с двумя автоматами в руках можно спустить
за 10 секунд, как мне казалось. В Doom/Quake баланс то есть, просто при
очень хорошей игре всегда переизбыток. А в Blood всегда вроде бы и
достаточно, но ощущение что вот-вот не хватит и закончится.

4 years agoБольше нет анонимных пополнений кошельков
Sergey Matveev [Mon, 3 Aug 2020 07:39:26 +0000 (10:39 +0300)]
Больше нет анонимных пополнений кошельков

https://lenta.ru/news/2020/08/03/beznal/
Плохая новость. А я ведь только так и оплачивал VPS и DNS: через
терминалы. Тройку я уже который месяц не использую, потому что мало езжу
в Москву, но вроде бы её ещё можно пополнять анонимно. В противном
случае, значит, пришлось бы использовать только одноразовые карты,
которые в разы дороже... плата за приватность. Раньше в Интернете если
что-то оплачивать надо было, то никаких сотовых никто не требовал и я
даже PayPal когда-то вполне себе использовал. Сейчас же, насколько
понимаю, ни один банк не будет позволять такое делать без принятия SMS
на сотовый.

4 years agoDuke Nukem 3D, Blood, SiN vs id Software
Sergey Matveev [Sun, 2 Aug 2020 10:31:09 +0000 (13:31 +0300)]
Duke Nukem 3D, Blood, SiN vs id Software

https://habr.com/ru/company/ruvds/blog/510436/
https://en.wikipedia.org/wiki/Richard_Gray_(game_designer)
https://en.wikipedia.org/wiki/Duke_Nukem_3D
https://blood-wiki.org/index.php/Blood
https://en.wikipedia.org/wiki/SiN
Все знают про Doom, Quake 1/2 игры. Duke Nukem очень известен, а вот SiN
почти никто не играл из моих знакомых. Как и о Blood многие только
слышали. А вот по моему, что Blood, что SiN -- КУДА более клёвые игрушки
чем от id Software. id -- люто уважаю, кланяюсь, они гении,
законодателями были. Код от Quake, если не путаю, до сих пор частично
есть в Half-Life 2 движке. Но все их уровни в Doom и Quake -- ну ходишь,
ну стреляешь, ну немного они меняются. Но не более. Duke Nukem -- всё
аналогично, но только вот уровни сделаны под наши реальные города,
множество разнообразия относящегося к современному миру. Мне это,
особенно в детстве, особенно нравилось, чем просто какие-то непонятные
уровни Doom/Quake. Quake 2 уже будет поразнообразнее, но в целом всё
равно +- одно и то же. Отлично провести время за ними безусловно можно,
и я не раз переигрывал и готов снова сыграть в них.

Но это ни в какое сравнение не идёт с Blood или SiN! Blood по моему
вообще выделяется как никто своим чёрным но офигенным юмором. Очень
много разнообразия в его уровнях. Много жести, но при этом всё равно с
массой юмора! Одна его озвучка -- да это лучшее что я когда-либо слышал
по атмосферности! Его визуальное оформление -- ни на что не похоже и
всегда узнаваемо!

И SiN мне всегда безумно нравился. Хотя с ним я познакомился сильно
позже и наверное даже появления Half-Life 2. Но чисто технически, как
мне казалось, он был куда продвинутее своими эффектами и интерактивом
чем любой Quake или Half-Life первый. HL я тоже люблю, но если делать
выбор, то однозначно SiN.

А ещё для меня было открытием что один человек причастен к созданию
уровней всех трёх этих игр: Ричард Грей. Оказывается он живёт в России.

4 years agopkg.go.dev sucks
Sergey Matveev [Sun, 2 Aug 2020 10:13:15 +0000 (13:13 +0300)]
pkg.go.dev sucks

https://drewdevault.com/2020/08/01/pkg-go-dev-sucks.html
Возможно у меня мало опыта, возможно я не допонял автора, но не согласен
с ним. Точнее, согласен что pkg.go.dev чем-то там не идеален. Я вообще
понятия не имел до этой статьи что это за ресурс такой. И, узнав, не
заинтересован в нём вообще. То, что оно как централизованное средство не
блюдёт интересы СПО-общества -- да и пофиг. Лично я принципиально не
хочу зависеть от каких-то внешних и централизованных решений. И как-раз
таки Go предоставляет возможность использовать разнообразные
Git-репозитории в качестве источников пакетов. Кто не хочет качать с
репозитория напрямую -- может использовать proxy.golang.org, но, при
этом, действительно только некоторые ресурсы можно будет заиспользовать.
Но если хочется хостится самому -- достаточно статическую HTML страницу
подложить. Я не вижу в этом проблемы и наоборот это здорово тем, что
никто не заставляет централизованные решения использовать.

В Python, в общем случае, конечно тоже никто не заставляет тянуть пакеты
из PyPI, но замучаешься их подкладывать руками откуда то добывая. У меня
диссонанс: автор говорит про прелесть децентрализованных Git-ов, но при
этом ругается на централизованный pkg.go.dev.

Да, какой-нибудь GoGOST поэтому особо не очень известен и где-либо
"светится", потому что proxy.golang.org его никогда не мог скачать,
потому что прежде использовался CACert.org CA для HTTPS, а теперь вообще
мой самоподписанный. У нас нету общих точек доверия и поэтому GoGOST
через Google инфраструктуру не прососётся. Надо учится и придумывать как
жить без централизованных решений для поиска библиотек -- да и обычный
поисковик никто не отменял.

А ещё я не понимаю недовольства автора по поводу того, что go doc
распилили на две команды: CLI остаётся в "go", а Web версия становится
отдельным модулем. Хоть Web-версия и простая, но зачем держать лишний и
*редко* используемый код. Ответ авторов Go о том что Web версия крайне
редко используется -- полностью поддерживаю на своём опыте. Наоборот
чётко разделили и вынесли редкие вещи из основного tarball-а.

4 years agoЗарелизил PyGOST 4.9
Sergey Matveev [Thu, 30 Jul 2020 20:09:20 +0000 (23:09 +0300)]
Зарелизил PyGOST 4.9

http://lists.cypherpunks.ru/pipermail/gost/2020-July/000120.html
Делать в нём разные алгоритмы для работы с современными CMS я начал ещё
в отпуске. Сами CMS думал что быстро протестирую. В итоге, вчера, с
вечера и до 2:30 ночи всё погружался и не мог понять почему у меня не
сходятся некоторые примеры, а другие работают. Сегодня с 10 до 15:30,
уже с привлечением коллеги у которого примеры сошлись, продолжал.
Оказалось, что у скрученных кривых Эдвардса cofactor=4, а у всех
остальных=1. Единственное место где это играло роль: 34.10-VKO. В итоге,
VKO для Эдвардса мог не работать (а мог и работать, если после деления
по модулю эта 4-ка роли не сыграет) и так было всегда в PyGOST. Хотя
кривые Эдвардса там относительно недавно появились. Но я грешил на что
угодно, но не на этот многолетний код. А раньше никто не заметил, потому
что эти Эдвардсы на практике пока мало где задействованы, тем более в
VKO случаях.

4 years agoТК26 рекомендации вызывают эмоции похлеще фильмов
Sergey Matveev [Wed, 29 Jul 2020 17:49:01 +0000 (20:49 +0300)]
ТК26 рекомендации вызывают эмоции похлеще фильмов

Сегодня делал тестовые вектора для современных рекомендаций для CMS. Это
нечто! HMAC, KDF, KDF-TREE, KEG... чтобы получить ключи. А для
дешифрования нужно взять UKM, поделить на части, одна будет IV-ом для
одной функи, другая для другой. Шифруется содержимое плюс MAC от него.
Зашифрованный MAC при это хранится вообще в отдельном поле ASN.1
структуры. То есть что-то, что само по себе даже обрабатывается вместе
-- делится на части и раскладывается по структурам, а что-то наоборот
просто конкатенируется.

Если нужны самые непонятные объяснения по самым простым вещам:
аналогично пальма первенства у них. Раньше я поражался объяснению в
целый абзац про little-endian представление целого числа. Много минут
мне потребовалось чтобы с бумажкой понять что же они имеют в виду, не
веря что это просто LE. Но сегодня это было переплюнуто пояснением про
одно число, которое оказалось просто публичным ключом от приватного.

Как выработать ключи для CMS целей? Где-то KDF надо использовать из
одного стандарта, а где-то KEG функции из... ГОСТ TLS 1.2 стандарта.

Плюс ещё добавить что их PDF-ки сделаны как-будто их распечатали, потом
отсканировали, потом распознали и получайте хаотично разбитый по кускам
текст при выделении/экспорте, да ещё в котором "1" может быть заменён на
"l", "0" может на "O", латинские "ABCE" на кириллические аналоги. А
теперь это всё ещё и в Base64 применить, причём в котором некоторые
буквы "слиты" и преобразованы в один символ, поди догадайся какой.

С этого можно забыть про IF-игры! Это для детей. Теперь моим
challenge-ем будут попытки реализовать ГОСТовые рекомендации :-)
Но среди них есть и такие, где мне просто тупо не хватает знаний
математики даже для того чтобы интерпретировать/прочитать (не
осознать, а просто прочитать) что там написано. Тут самое место
будет слову ультра-насилие!

4 years agoКраткие обсуждения задач с менеджерами ivi
Sergey Matveev [Wed, 29 Jul 2020 08:17:05 +0000 (11:17 +0300)]
Краткие обсуждения задач с менеджерами ivi

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

- А разве есть фильмы у которых альтернативные названия сильно
  отличаются?
- Спиздили

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

4 years agoЗаряжайте ваши флешки!
Sergey Matveev [Wed, 29 Jul 2020 07:10:51 +0000 (10:10 +0300)]
Заряжайте ваши флешки!

https://habr.com/ru/post/512886/
https://habr.com/ru/post/379345/
Название конечно полушуточное и про зарядку в прямом смысле речи нет. Но
объяснены базовые принципы связанные с износом страниц памяти в них. А
также упомянуто то, что заряд со всех этих устройств утекает. Во второй
ссылке вообще говорят о том, что в промышленных SSD при некоторых,
отнюдь не нералистичных условиях, заряд может вообще всего неделю держаться.

4 years agoПосмотрел "Десятку"
Sergey Matveev [Wed, 29 Jul 2020 07:03:54 +0000 (10:03 +0300)]
Посмотрел "Десятку"

https://ru.wikipedia.org/wiki/%D0%94%D0%B5%D1%81%D1%8F%D1%82%D0%BA%D0%B0_(%D1%84%D0%B8%D0%BB%D1%8C%D0%BC)
Забавная комедия, где в некоторых местах продолжительно смеялся. Сюжет
ничем не нов: мужик ищет идеальную женщину, находит (как ему кажется),
пускается за ней в погоню, да вот только его идеал ждёт его давно дома,
чего он в упор до самого конца фильма не понимал. С удовольствием
пересмотрел бы снова.

4 years agoПерестал видеть Свердловские слойки
Sergey Matveev [Tue, 28 Jul 2020 08:52:18 +0000 (11:52 +0300)]
Перестал видеть Свердловские слойки

В течении месяца я несколько раз был в огромном Глобусе и обыскивал все
полки, но Свердловских слоек не нахожу более. Причём был я в магазине и
в будние и выходные, с утра и с середины дня -- точно исключается что их
разбирают. А я в хлебный отдел там шёл только за ними, больше ничем. Как
же мне они нравятся! В моём доме (магазине) их вообще пару раз завозили
наверное. Похоже не популярное изделие, а ведь моё самое любимое наверное.

4 years agoИстория русской попсы
Sergey Matveev [Tue, 28 Jul 2020 08:47:28 +0000 (11:47 +0300)]
История русской попсы

https://lenta.ru/articles/2020/07/27/ruspop92/
Lenta самостоятельно начала писать вот такую вот историю про русскую
эстраду, поп, немного рока. Эх, сколько всего помню что из всего
перечисленного крутили по ТВ. Тёмное же было время. И ещё всё как в
"Поколение П" -- богачам нужно показать что они могут взять и спустить
миллион долларов на видеоклип или там продюссирование очередной поп
группы. Ещё не знал что был концерт с Сектором Газа и Мальчишником:
последних закидали бутылками. Одобряю. Только в фильме Ленты я впервые
увидел этот Мальчишник -- ну в какое сравнение он с Сектором Газа то?
В детстве подобных груп, как и рэпа, не видел: видимо, если это и
показывали по ТВ, а смотрели то его родители, то сразу же переключали.

4 years agoМяу удаляет тысячи баз данных
Sergey Matveev [Mon, 27 Jul 2020 19:26:48 +0000 (22:26 +0300)]
Мяу удаляет тысячи баз данных

https://habr.com/ru/company/itsumma/news/t/512576/
Боюсь что совершенно не вызывает жалость никто из админов кто выставляет
без авторизации свои БД наружу. Более того, когда уже не раз публично
показывалось как много открытых MongoDB и прочих -- можно сказать что
предупреждали по хорошему ещё задолго. А если это логи каких-нибудь
провайдеров... так это ж наоборот здорово для конечного пользователя,
что о нём приватная информация не утечёт, ибо удалена!

Мои NDA (2.5 года) от ivi уже истекли, да и времени прошло уже много, но
я, когда там работал, просто ради интереса запустил один раз nmap на всю
сеть и обнаружил что все Redis-ы кэширующих прокси серверов торчат
голыми портами без авторизации наружу. Подключайся redis-cli и делай
flushall. Можно просто for циклом в shell делать по IPv4-адресам.
Приватной информации в них нет, но, очистив Redis-ы, можно вывести
обновление системы кэширования на 10 часов или вообще сутки (точно уже
не помню). И если это сделать в полдень, то была хорошая вероятность что
прокси сервера, а в след за ними и файловые, не справлялись бы с
вечерней нагрузкой. Недосмотрели, поправили. Но нагадить ivi можно было
легко, когда они были открыты.

4 years agoGoogle против AGPL
Sergey Matveev [Mon, 27 Jul 2020 17:27:31 +0000 (20:27 +0300)]
Google против AGPL

https://drewdevault.com/2020/07/27/Anti-AGPL-propaganda.html
https://opensource.google/docs/using/agpl-policy/
Не знал, но у Google есть запрет на использование AGPL лицензированного ПО.
Статья Drew DeVault-а поясняет что всё это конечно фигня и использование
AGPL не шибко чем-то затруднено. Информация на странице Google в
основном дезинформация, которой в общем-то полно против свободного ПО.

4 years agoSGBlog переведён на использование шаблонов
Sergey Matveev [Mon, 27 Jul 2020 16:14:27 +0000 (19:14 +0300)]
SGBlog переведён на использование шаблонов

http://git.stargrave.org/cgit.cgi/sgblog.git/tree/cmd/sgblog/http.go#n49
http://git.stargrave.org/cgit.cgi/sgblog.git/tree/cmd/sgblog/gopher.go#n40
Уже давно бывший коллега подтолкнул к идее их использования. Для
внешнего наблюдателя в нём ничего не поменялось, кроме исправления
нескольких косяков (кое где отсутствовал открывающий <tr>). А внутри,
вместо чисто ручного "собирания" HTML и Gopher менюшек, стали
использоваться https://golang.org/pkg/text/template/ По сути я впервые
использую эти шаблоны (прежде были только крайне простые случаи).
Непривычно, после Jinja и Django-овских, но в целом задачи выполняют,
вполне себе гибки и расширяемы. Чисто по строчкам кода его стало больше,
но это из-за объявления структур и их заполнения для подачи в шаблоны:
сам код ощутимо упростился, а шаблоны дают полную картину того, как
будут выглядеть страницы HTML/Gopher. Собственно, MVC типа.

4 years agoHelp! Linux ate my RAM!
Sergey Matveev [Mon, 27 Jul 2020 16:03:12 +0000 (19:03 +0300)]
Help! Linux ate my RAM!

https://www.linuxatemyram.com/
Не знал про этот сайт. Очень полезный для большинства, ибо я на практике
встречал не раз людей которые считали что нулевой free это что-то плохое
и нужно больше памяти в компьютере. На этом сайте верно сказано что в
идеале free должен быть равен нулю.

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

4 years agoУдаление файлов на ФС
Sergey Matveev [Mon, 27 Jul 2020 15:58:16 +0000 (18:58 +0300)]
Удаление файлов на ФС

https://habr.com/ru/company/droider/blog/512654/
В комментариях кто-то с умным видом доказывает что удаление файла это
очень дешёвая операция. Ага, при удалении конечно же выставляется бит
"удалён" (сарказм) у иноды, вот только как система узнает про
освобождение места? Эта задача очень сложная и чего только создатели ФС
не ухищряются делать. Прям вот бесит когда чушь такую несут. А вообще
всё верно говорят что очистка это операция дорогая, поэтому её ещё через
TRIM стараются сделать заранее, а не только при перезаписи.

4 years agoGut -- Disciples Of Smut
Sergey Matveev [Mon, 27 Jul 2020 14:43:59 +0000 (17:43 +0300)]
Gut -- Disciples Of Smut

http://www.hitkiller.com/intervyu-s-gut-my-bolee-ne-xixikaem-i-ne-zanimaemsya-provokaciyami.html
http://www.hitkiller.com/cumback-chto-nado-novyj-albom-gut-disciples-of-smut.html
Возвращение Gut! На их концерте был аж более десяти лет назад и помню
что Мирус пинком под зад со сцены, мешающий музыкантам народ, выбивал.
С трудом нашёл альбом в Сети. Да, теперь это действительно не совсем
goregrind. Но и не метал. Что-то необычное. Звучание горграйндовое,
вокал во многих местах тоже, да как и темп. Мне альбом понравился, сразу
захотелось переслушать его, уж больно хорошо под него работа шла.

4 years agoНаписал свой BufTabline плагин для Vim
Sergey Matveev [Sun, 26 Jul 2020 16:14:00 +0000 (19:14 +0300)]
Написал свой BufTabline плагин для Vim

http://git.stargrave.org/cgit.cgi/dotfiles.git/tree/vim/.vim/plugin/buftabline.vim
Глядя на видео из предыдущего поста, мне понравилось что вверху у них
показывается список буферов, вместо списка табов. Табы в Vim я не
использую и даже не хочу. А вот список буферов возможно пригодится, ибо
в нём я могу сразу увидеть номер буфера. Ещё точно не знаю, возможно
бесполезная трата лишней строки, но попытка не пытка.

Поискал какие плагины показывают список буферов в tabline. Нашёл
https://github.com/ap/vim-buftabline и его, похоже, авторы роликов и
используют. Он может показать номер буфера, но не показывает другие его
атрибуты, типа альтернативный ли он буфер или нет. Начал копаться в
vimscript, но что-то вообще не нахожу фунок которые бы выбрасывали
какой-нибудь словарик с полным описанием буферов как это в :buffers
происходит.

Ну... ok, я пошёл напролом и просто сохраняю вывод :buffers, парсю его и
преобразую в вывод для tabline. Оказалось всё это очень просто. Текущий
буфер подсвечивается, все аттрибуты показываются. Это всё настолько
просто, что никаких возможностей внешнего плагина не понадобилось.

4 years agoAdvanced Vim workflows
Sergey Matveev [Sun, 26 Jul 2020 13:24:29 +0000 (16:24 +0300)]
Advanced Vim workflows

https://www.youtube.com/watch?v=futay9NjOac
https://www.semicolonandsons.com/series/A-Decade-of-Vim
Чуть ли не впервые я увидел статью/видео где показывался бы advanced
уровень использования Vim. Для меня ничего нового не было, но на работе
реально частенько мы подобные штуки выделываем. Именно тут показана
крутая мощь Vim.

4 years agoПосмотрел Барбареллу
Sergey Matveev [Sun, 26 Jul 2020 10:26:29 +0000 (13:26 +0300)]
Посмотрел Барбареллу

https://ru.wikipedia.org/wiki/%D0%91%D0%B0%D1%80%D0%B1%D0%B0%D1%80%D0%B5%D0%BB%D0%BB%D0%B0
Ибо сказали что Blood Machines (58fa132f0b47b98b0768096b1226e6f31c43abc8)
чем-то похожи на это. Действительно! Абсолютно ужасный простотой и
наивностью сюжет, радость для глаз от красивых девушек. В Wikipedia
увидел что делалось это всё по комиксу, поэтому сюжет простителен, будем
считать что для детей. Но в целом всё забавно и очень эротично.

4 years agoВыбор напарника для ИТ-шника
Sergey Matveev [Sun, 26 Jul 2020 08:55:58 +0000 (11:55 +0300)]
Выбор напарника для ИТ-шника

https://habr.com/ru/post/512492/
Статья не столь обширна как хотелось бы, но мне всегда дико любо
почитать и посмотреть на животинку. Плюс комментарии ценны. Много
конечно чего не рассмотрено, например птицы всякие, как очень
распространённый вариант питомцев. Я когда-то много думал про заведению
крысы, ибо начитался насколько же они умны. Сейчас я не думаю, но
подписан на блог и всё читаю про хрюшек: https://www.babai.ru/

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

У бывшей коллеги видел здоровую улитку в аквариуме живущую. Но только
видел. Не общался. Хомяков тоже у разных знакомых видел, но как-то о них
особо и не рассказывает никто. Говорят что живут действительно недолго,
плюс глупые. Черепах пару раз встречал в квартирах, но оба раза в
спячках. Кроликов видел в деревне в клетках, ни даже не слышал что в
квартирах их держат. Всегда хочется их погладить. Крыса Лариса у нас
кстати в школе в начальных классах жила, но я тогда интереса особо не
проявлял к ней никакого. Рыбок видел, но... совсем я их не понимаю: не
пообщаешься, на внешний мир, в отличии от птичек, не реагируют.

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

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

А вот про собак многие мало чего знают, кроме самой банальщины или почти
мифов каких-то. У нас (у родителей) в доме появились с самого моего
детства. В начале это просто дворняжка была (Дези), с которой я вместе в
обнимку спал (а она не против и засыпала раньше моего, глядя сны, двигая
лапами и даже погавкивая) 13 лет: http://www.stargrave.org/photoes/oldies0.webp
А потом только чихуа-хуашки. Первую чихуашку (Кнопа) завели когда ещё
Дези была жива. Как-раз к власти пришёл Путин и жизнь стала существенно
налаживаться и я хоть ещё и не работал, но деньги уже появлялись не
только для базовых бытовых и жизненных потребностей. А мама с детства
мечтала о маленькой собачке и вот исполнили мечту. Когда Дезька умерла,
то завели вскоре Лапку -- ещё одну чихуашку. И с того момента у нас по
две всегда: молоденькая и куда более постарше. Кнопки и Лапки уже не
стало, теперь Бонька (Бонитта по паспорту) и Таська. Родители в этом
году собираются в Крым: жду не дождусь когда уедут и оставят мне собак.

Причём разница между такими маленькими собаками и большими в плане
ухода: колоссальна. Маленькие дома ходят в лоток в туалет и им не нужны
пробежки и долгий выгул. Улицу то они любят -- на даче лежат постоянно
вне дома. Но и месяцами в квартире им абсолютно нормально. Больших собак
то я тоже навидался -- в деревне и у знакомых, которых разводят
лабрадоров, кроме которых ещё куча всяких других собак. Разницы между
большой и маленькой в плане нет. Есть полно людей которые презрительно
называют их крысами -- ну... если это говорит мужчина, то я делаю вывод
что у него маленькое хозяйство и ему просто нужно поэтому всё большое,
чисто по Фрейду, как говорят. Или этим людям нужна собака для
самоутверждения: я хозяин, смотрите какая у меня натренированная опасная
тварь, под моим контролем, слушается, и т.д.. Никого, действительно
любящего собак, именно как собак, как друга -- никогда про маленьких
ничего подобного не говорит. С маленькими собаками разве что не
побросаешь палку, не поваляешься в снегу вместе. Зато едят не много и
спокойно живут в квартире. Тупо просто более практичны для городской
жизни.  А большой собаке всё нужна большая площадь, в идеале это
загородный дом/дача.

Многие говорят про запах от собак. Я вот сколько не перевидал людей с их
собаками, но могу сказать одно: если собаку не мыть и не убирать за ней
вовремя, то безусловно запах появится. В основном речь про больших,
которые вне квартиры живут, которые чаще сами наверное моются в прудах.
А собачьи лужи, особенно когда это не приученные щенки, хотя бы не
въедаются запахом как кошачьи проделки. У тех то глаза резать может и
фиг выветришь. Собаки в этом плане удобнее. Но, не исключаю что, так как
я прожил всю жизнь (кроме последних лет, когда съехал от родителей) с
ними в обнимку, то я не замечаю "родного" собачьего запаха и у меня
острота возможна просто не та. Так то сам по себе он есть (не в
квартире, а вообще у собаки), но мне дико нравится и я даже скучаю по
нему. После самоизоляции, когда приехал на дачу к родителям, то
первым делом занюхнул чихуашек, а они меня заоблизывали.

И говорить о собаках какие они гавкающие, кусающие или ещё какие: вообще
бесполезно. Они все совершенно разные. И я не про породы, а про
отдельных особей. У нас вот четыре чихуашки: кто-то злой, кто-то 100%
времени добрый, кто-то гавкает, от кого-то раз в год услышишь тявк,
кто-то ленивый и спокойный, кто-то заводной, кто-то ревнивый, кто-то
нет, кто-то обижается легко, кому-то пофиг. Наверное бывают породы более
склонные к гавканию, безусловно. Большие собаки, особенно атлетичные
охотничьи, само собой в большинстве своём хотят прогулок и бега. Но в
целом собаки все ОЧЕНЬ разные. Наша Дезька вот вполне могла и кусаться и
я, сам напрашиваясь и играя в компостер, тысячи раз наверное был до
крови то искусан. Но мы и не стремились запрещать и отучать от этого.
Большую собаку конечно обязательно надо, ибо она уже серьёзную угрозу
для жизни может представлять. С большой -- больше ответственности.

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

А ещё запомнилось с детства что слюна у собак очень помогает в
заживлении. Как-то я конкретную здоровую ссадину себе посадил на ногу.
Пришёл домой, Дезька учуяла и давай лизать её. Я уж не помню что я тогда
делал, но минут 5-10 она лизала, а я наверное книгу что ли какую-нибудь
читал или за компьютером играл. А потом посмотрел на ссадину, которая
минимум неделю в принципе не должна была сходить -- а её как не бывало!

4 years agoПосмотрел Грейхаунд
Sergey Matveev [Sat, 25 Jul 2020 08:34:23 +0000 (11:34 +0300)]
Посмотрел Грейхаунд

https://ru.wikipedia.org/wiki/%D0%93%D1%80%D0%B5%D0%B9%D1%85%D0%B0%D1%83%D0%BD%D0%B4_(%D1%84%D0%B8%D0%BB%D1%8C%D0%BC)
Ожидал что, как всегда, будет показано что пришла США и всех победила
(хотя все мы знаем как они воюют и где побеждают). Но нет, особо эта
тема не затрагивалась. Фильм вряд ли захочется пересматривать, но вообще
40-50 минут хорошего напряжённого action-а сделаны отлично. Ничем,
абсолютно ничем этот action не прерывается и ни на что не отвлекается.
Том Хэнкс, как всегда, хорош. А его (капитана) первого помощника играет
Стивен Грэм: https://ru.wikipedia.org/wiki/%D0%A1%D1%82%D0%B8%D0%B2%D0%B5%D0%BD_%D0%93%D1%80%D1%8D%D0%BC
Сейчас он выглядит трушным матёрым серьёзным человеком. А прежде я его
мог видеть только как Томми из Большого Куша. Оказывается, он вообще
пришёл устраиваться на съёмочную площадку Большого Куша и Гай Ритчи его
взял на роль Томмии, его первую роль.

4 years agoЛюди перестают использовать suckless проекты, так как они неонацисты
Sergey Matveev [Sat, 25 Jul 2020 07:55:03 +0000 (10:55 +0300)]
Люди перестают использовать suckless проекты, так как они неонацисты

https://www.paritybit.ca/blog/i-was-wrong
https://www.paritybit.ca//blog/switching-to-alacritty.html
https://lobste.rs/s/kpuj8p/why_i_use_suckless_tools
Конечно же они не такие и вообще к политике отношения, слава богу, имеют
самое минимальное. Но сделав фотографию с факелами ночью... всё,
заклеймят нацистом и бросят использовать твой софт. Тут же вспомнили и
про Ганса Райзера.

К сожалению, если ты не хочешь политики, то она всё равно сама придёт к
тебе. Я вот не могу считать адекватным и нормальным человека который
избавляется от master/slave терминологии. Да, возможно он делает это по
политическим причинам, возможно он просто козёл отпущения в трэкере и
нужна была жертва которая бы выполняла политические задачи
Microsoft/Google/Apple, так же как я вынужден revert-ить подобные патчи
чтобы использовать устоявшуюся работающую терминологию не вызывая
путаницы. Но к человеку у меня нормального отношения не будет, как и к
его работе. В принципе, я наверное ничем не отличаюсь от всех этих людей
что прекращают использовать st терминал из-за фотографии suckless
конференции с факелами.

Использование английского языка, даже если он не родной, это поддержка
гегемонии США. Кстати, что в моих проектах и происходит и на русском у
меня мало чего переведено. Даже на работе только английский в коде и
документации.

Но в suckless вообще вполне себе нормальные и адекватные люди. Политики
вообще не припомню. Конструктивных разговоров -- временами тьма. Если
хочется увидеть грубость, то достаточно почитать большинство писем Тео
Де Раадта из OpenBSD (но это не отменяет моего уважения к нему).

Да и мне один раз писали что, раз я буду участвовать на мероприятии где
будет какая-то журналистка из Новой Газеты, то это ни в какие ворота и
автор письма рад что не использовал мой софт и принципиально не будет. Я
спрашивал: а что я должен о журналистке знать (да и о Новой Газете),
чтобы понять всю ужасность моего участия? Человек не ответил. Ну,
откровенно говоря, тоже какой-то политический придурок, который считает
что люди обязаны следить за всякими оппозиционными событиями и знать
каждую мразь, типа Навального (да, уж его то по новостям знаю), в лицо.
По моему, у занятых людей времени на всё это быть не должно. А Новая
Газета на встрече так и не была (9c51476a382f92bf3691e10bd843899f7b97d6de),
зато был Саркис Дарбинян, которого, лично мне, всегда интересно услышать.

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

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

4 years agoGo, redo и verbose вывод программ
Sergey Matveev [Fri, 24 Jul 2020 20:19:55 +0000 (23:19 +0300)]
Go, redo и verbose вывод программ

Где-то у кого-то из создателей Go я видел рекомендацию/условие что
программа в идеале должна выводить как можно меньше всего. Только,
грубо говоря, если возникают ошибки. Собственно в Go всё так и сделано:
go get огромный проект, тянущий кучу зависимостей и собирающий
C-объектные файлы -- может вообще ничего не вывести.

Но мне это не особо нравилось и я много где добавлял -v флаги. Всё
больше и больше проектов своих перевожу на redo (уже наверное почти
ничего и не осталось) и теперь мне уже verbosity не нравится и я
склоняюсь к тому, что, действительно, лучше ничего не выводить лишнего.
С redo просто приходится за этим аккуратно уже следить, так как stdout
команд он поймает и сохранит как результат. А stderr покажет во время
сборки. И мне реально хочется видеть только пересобираемые цели и больше
ничего, если всё идёт успешно.

4 years agoGo 1.15 требует SubjAltName домена в X.509 сертификатах
Sergey Matveev [Fri, 24 Jul 2020 20:05:59 +0000 (23:05 +0300)]
Go 1.15 требует SubjAltName домена в X.509 сертификатах

https://tip.golang.org/doc/go1.15
Поэтому перегенерировал все свои сертификаты чтобы они содержали это
не критичное расширение.

4 years agoДобавил MGM режим в PyGOST
Sergey Matveev [Fri, 24 Jul 2020 17:10:13 +0000 (20:10 +0300)]
Добавил MGM режим в PyGOST

http://www.pygost.cypherpunks.ru/News.html#Release-4_002e8
Просто калька с реализации в GoGOST.

4 years agoWSL2 использует 9P2K протокол
Sergey Matveev [Thu, 23 Jul 2020 23:06:13 +0000 (02:06 +0300)]
WSL2 использует 9P2K протокол

https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux#WSL_2
Для совместного доступа к ФС в WSL2 используется протокол от Plan 9.
Просто любопытный факт.

4 years agoOpenBSD всё же скатилась в унылое чёрножопоподлизывание
Sergey Matveev [Thu, 23 Jul 2020 23:00:50 +0000 (02:00 +0300)]
OpenBSD всё же скатилась в унылое чёрножопоподлизывание

https://github.com/openbsd/src/commit/5bde2954c180034a27b079acaff46073dc75139b

4 years agoПочувствовал разницу между "notebook" и "laptop"
Sergey Matveev [Thu, 23 Jul 2020 22:04:44 +0000 (01:04 +0300)]
Почувствовал разницу между "notebook" и "laptop"

В предыдущем посте, во время игры, понял разницу между этими двумя
словами. В игре я открыл ящик и там находится "notebook". У меня в
голове представляется "ноутбук". Делаю "x notebook" и там говорится
о "pen"-ах используемых с ним. Я с пару секунд не понимал причём тут
ручки. Потом уже вспомнил что "notebook" это вообще то "записная книжка"
(дословный перевод и есть). У нас в языке "ноутбук" заимствованное слово
которое ни с чем не спутаешь. А у них есть "laptop", который ни с чем не
спутаешь, а "notebook" понятен только из контекста будет.

Теперь у меня возник вопрос: почему же они сами то laptop не шибко то
часто используют? Зашёл на Dell, Lenovo, HP, Asus -- везде используется
"laptop", как и положено. Ещё одно открытие для меня, ведь я прежде про
себя думал что там будут "notebook". В общем, надо запомнить что ноутбук
это "laptop".

4 years agoПоиграл и прошёл Violet
Sergey Matveev [Thu, 23 Jul 2020 21:01:18 +0000 (00:01 +0300)]
Поиграл и прошёл Violet

https://en.wikipedia.org/wiki/Violet_(computer_game)
В b0788ea47ae459b8174e92fee5a36ab0e4abe641 писал что надо бы пройти
Violet. Офигеннейшая игрушка! И короткая, за пару часов осилил. Но, не
без HINT-ов встроенных. Я играл не так много в IF-ы, но эта очень
впечатляет богатством всего что говорится. Собственно, нет никакого
ощущения заранее вбитых простых программистских фраз,
детерминированности происходящего. Отличный парсер. Отлично игра
заботится о тебе и не заставляет проделывать одни и те же действия
нудные повторно. Всё время происходит какая-то движуха, мир живёт, время
течёт. А ещё в игре всего одна комната. Ещё я до самого конца особо не
понимал что же всё таки в действительности творится и были мысли что у
меня (у персонажа) раздвоение личности как-будто. Но, раздевшись до
гола, помочившись на кактус, разгромив единственную комнату, чуть не
устроив пожар, голышом, с страшным пауком на голове, прищепкой на носу,
добравшись по улицам с зомби и пиратами до дома, получаю записку что всё
было в пустую... прям опечалился в реальной жизни. Но... конец внезапно
меняется на другую ноту и всё проясняется.

Вообще, если бы в реальной жизни девушка задумала учудить и говорить
подобное, то к чёрту бы сразу же расстался бы, без оглядки. Но
понравилась фраза (отсылка известная компьютерщикам)
"Any sufficiently awesome girlfriend is indistinguishable from magic."
в ответ на "XYZZY".

Игру точно мог бы порекомендовать, тем более что проходится довольно
быстро, если использовать HINT-ы. В одном месте я точно не догадался бы
использовать один глагол который только и подходил, судя по HINT-у.

Violet не совсем классическая квестовая игра, где всякие
комнаты/локации, задания, инвентарь и нужно понять как что с чем
совмещать. Но она всё же содержит предметы которыми нужно пользоваться.
Photopia и Shade (95add09d3a656b95b926c499ce0cd2ace8b2fc92) были совсем
далеки от "классики". Lost Pig (a3ebdf77580a6474ea912a52ecd434b7eac78c2a)
и Spider and Web (12c1444d382c87f220eb6a376b3d509b732a9c19) уже классика
квестов. Violet что-то среднее, но очень клёвое.

Про Photopia в блоге кстати не писал, ибо в неё играл ещё до его
создания. И играл в самолёте по пути в Иран на Palm-е. Она очень
короткая, по сути то особо ничего там делать вообще не надо, просто
несколько движений, а дальше только читать и смотреть. Мне понравилась,
но в целом это почти просто как небольшой рассказ был, в котором
"interactive" то толком никакого.

4 years agoДмитрию Бачило приехал ПК и сервер на Эльбрусе
Sergey Matveev [Thu, 23 Jul 2020 17:34:29 +0000 (20:34 +0300)]
Дмитрию Бачило приехал ПК и сервер на Эльбрусе

http://16-bits.ru/%d1%8d%d1%82%d0%be%d1%82-%d0%bc%d0%be%d0%bc%d0%b5%d0%bd%d1%82-%d0%bd%d0%b0%d1%81%d1%82%d0%b0%d0%bb/
Ну лично я то работал и с ПК и с серверами разноядерными Эльбруса, но
всё равно очень интересно будет посмотреть его обзор. Но за два года моё
отношение к ним (bed996f069b807a680a5d915e47fc6b2f79619bb) не поменялось.

4 years agoПрочитал "Умереть первым" Джеймса Паттерсона
Sergey Matveev [Thu, 23 Jul 2020 11:39:28 +0000 (14:39 +0300)]
Прочитал "Умереть первым" Джеймса Паттерсона

https://ru.wikipedia.org/wiki/%D0%9F%D0%B0%D1%82%D1%82%D0%B5%D1%80%D1%81%D0%BE%D0%BD,_%D0%94%D0%B6%D0%B5%D0%B9%D0%BC%D1%81
Так как аудиокниги у меня просто в перемешку, то "читаю" их в каком
порядке что попадётся. Если в течении получаса не захватывает, не
нравится, то бросаю. Эта книга вообще каким-то попсовым детективом
должна быть современным, ещё и явно для женщин ориентированным, но
я про книгу заранее ничего не читаю перед прослушиванием. Но втянулся,
уж дослушал до конца. И в очередной раз понял что детективы мне очень и
очень нравятся в целом.

4 years ago6 часов лекций
Sergey Matveev [Thu, 23 Jul 2020 08:44:17 +0000 (11:44 +0300)]
6 часов лекций

Рассказывал про IPv6 (в том числе NDP), про (S)ATA/SCSI/SAS, ISA, NVMe,
FC, iSCSI, про сжатие изображений и немного мультимедиа в целом (YUV,
DCT, DWT, психоакустику звука, историю аудио/видео кодеков, контейнеров),
а также войну громкости.

4 years agoПосмотрел "Кровавые машины"
Sergey Matveev [Tue, 21 Jul 2020 11:49:20 +0000 (14:49 +0300)]
Посмотрел "Кровавые машины"

https://en.wikipedia.org/wiki/Blood_Machines#Blood_Machines_(2020)
50-ти минутный фантастический фильм. Одна из фишек: использовать музыку
Carpenter Brut-а. Сюжет... фигня какая-то, если честно. Но картинка!
Весь этот технофетиш, качество всего что экране видно, тьма голых
красивых девиц! Получил огромное удовольствие от просмотра! Вообще
картинка меня уже давным давно (наверное после Аватара какого-нибудь) не
впечатляет. Я тащусь от хорошего звука, но на изображение мне в общем по
барабану. Сейчас же меня смогли впечатлить! Вспоминаю тонны
голливудского кино современного и самое первое слово которое его
изображение описывает: синтетика. Выглядит ничего, но понятно что это
сплошная графика. В Кровавых машинах же очень круто всё, просто любо
разглядывать. Ну и десятки красивых девушек тоже не оставляют
равнодушным. Альбом Carpenter Brut-а то я слышал уже и прежде и... не
запомнился, в отличии от его Leather Teeth (3e62eabf7fb6b068409535a32074940302438401).
Но для этого фильма его трэки прям в самый раз, лучше и не придумать!

И наверное это вообще первый фильм который я смотрел в H.264 20Mbps+ bitrate.

4 years agoKorn vs Tardigrade Inferno
Sergey Matveev [Mon, 20 Jul 2020 15:19:29 +0000 (18:19 +0300)]
Korn vs Tardigrade Inferno

В aebd159f4883ba8ee8a3184baa78f37a52c64d14 писал что сильное дежавю на
песнях Korn. Как оказалось, не на одной песне. Только сегодня сообразил
что Tardigrade Inferno (51ba062d2bcfdd9644f7090bf509a190153fb664)
использует их "приёмчики" местами и поэтому было ощущение что знаком с
ними уже был.

4 years agoВспоминая своё знакомство с GNU/Linux, FreeBSD, первая работа
Sergey Matveev [Mon, 20 Jul 2020 08:31:06 +0000 (11:31 +0300)]
Вспоминая своё знакомство с GNU/Linux, FreeBSD, первая работа

Раз уж завёл я в блоге тему про воспоминания, то надо и про конец
Windows написать. Дело было в конце 90-х, когда я купил небольшую
дешёвую книгу "Как стать хакером". По сути это был перевод ESR-ного
http://www.catb.org/~esr/faqs/hacker-howto.html плюс ещё какие-то
статьи. Но меня впечатлила именно его статья, в которой не раз
говорится что нужно изучить "Linux", под Windows жизни нет.

А у одного родственника на компьютере как-раз появился GNU/Linux. Я с
трепетом попросил показать мне сие чудо. Увидел какой-то Windows-like
GUI (KDE). Через пять минут компьютер повис, перегружали reset-ом. А
я ведь читал что это должна быть сама стабильность и надёжность. Но
особо это впечатление не испортило. Уже позже я понял что это просто
завис KDE и можно было переключиться в консоль и грохнуть его.

А вскоре после этого, мне на день рождения (вроде в 2000-ом) подарили
диск Linux Mandrake 7.0 (с версией могу ошибаться). Тогда я после
бассейна подхватил воспаление лёгких и поэтому отлёживался дома, в школе
не ходил. И очень вовремя, так как всё это время проводил за Mandrake.
100500 раз переустанавливая его, так как чуть что, то я не знал как
вернуть всё в зад, спросить не у кого было. Никто из знакомых никак не
знаком с этими системами, Интернета не было, про Фидо я возможно даже не
слышал ещё. Тогда же я прошёл vimtutor, начал что-то делать на C и на
Perl.

Родители разрешали приобретать книги типа таких:
https://bookzone.com.ua/books/5202-unix-instrumentalnye-sredstva-izd-2/
по которым я и учился и узнавал про различные технологии и инструменты.
Учитывая что подобные книги брали прямо с полок книжных магазинов,
которых в Королёве по пальцам посчитать, то создавалось впечатление что
завозили к нам единичные экземпляры. А родители получали так мало, что
одна эта книга стоила больше чем половина зарплаты одного человека. Я
тогда этого не понимал, но родители одобряли мой интерес, особенно видя
что я от корки до корки их вычитывал. Особенно, конечно же, ценны были
"Архитектура компьютера", "Компьютерные сети", "Современные операционные
системы", "Распределённые системы" Эндрю Таненбаума.

Позже я доставал диски на Савёловском (или Митино, Горбушке, уже не
помню) с Red Hat 7.x, более поздним Mandrake. Ставил, игрался, учился
программировать.

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

Но событием было когда я с отцом как-то шёл с ВДНХ и по пути к метро там
находилось много палаток с компакт-дисками. Уж не помню как я
заприметил, но там была FreeBSD 4.5 в коробке на четыре диска. Уговорил
отца что яростно хочу её, мочи нет. В тот же день пробовал её поставить.
http://www.stargrave.org/photoes/fbsd-45.webp
Тогда в ней не было devfs и /dev содержал 100500 файлов устройств. А
чтобы что-то сделать, то надо указать диск/блочное устройство, а я
просто не мог понять как же именуется то у меня жёсткий диск. dmesg я
наверное не знал ещё, а привычного /dev/hda не было. Или диск то может
быть и был, но партиции указывались там по другому и это меня тоже
как-то сбивало.

Но как-то в итоге смог её поставить и на шесть лет оставался на ней,
обновляясь до 5.x-х версий постоянно, доставая их на пиратски
произведённых дисках рынках. Я уж точно не помню что именно мне
нравилось в FreeBSD 4.5, в которой и devfs нет, и GEOM не появился, и не
было ULE планировщика, без которого она точно выглядели более
тормознутой для интерактивных задач, по сравнению с GNU/Linux.

В то же время я приобрёл дешёвую небольшую книжку "Модемы". Из неё узнал
про Фидо. Родственник отдал за ненадобностью 9600bps ISA модем, на
котором я впервые попал на BBS-ки и начал за этим делом проводить уйму
времени. С BBS-ок я достал информацию о том, кто принимает Фидо поинтов.
В Королёве была своя нода (Angband Castle, её сисоп -- Morgoth). Через
Интернет (покупал несколько раз Рол карточки для dialup доступа) завёл
себе ящик stargrave@rambler.ru, с него написал Морготу что хотел бы в
Фидо. То ли на этот, то ли на следующий день звонок, родители мне
передают трубку, мужик представляется Алексеем Конюховым (Моргот). Я
наверное с полминуты вообще не понимал кто это и говорил что не туда
явно попали, ибо я совершенно не ожидал что скоро мне возьмут и позвонят
и позволят быть поинтом. В общем потом всё встало на свои места. Моргот
спрашивает какой я поинт-адрес хочу, а я отвечаю что вообще без разницы,
он мне выдал 20 и мой адрес 2:5020/2115.20. Первый выход в Фидо у меня
вроде всё же был из под OS/2, которая стояла на отдельном 486-ом
компьютере, тогда как основной компьютер уже был на K6-2. По утрам, до
школы, я звонил на ноду, получал корреспонденцию, читал немного, шёл в
школу. И ещё один звонок делал поздно вечером чтобы отправить что
накопилось из написанного мною в эхи. Но Фидо вроде очень скоро у меня
переехало на FreeBSD полностью.

FreeBSD и Фидо это было 9-ый класс школы. Тогда же пару раз ходил на
поинтовку, где почти все поинты Королёва собирались в гостях у Сэра
Садиста (.666 вроде у него был). На тот момент я был настолько
застенчив, что на полном серьёзе я два часа мог молчать, только слушая
разговоры всех остальных. Хотя в сети меня не заткнёшь на тот момент.
Там я же я впервые увидел Window Maker, очень мне понравившийся, и на
него пересел. И тогда же я услышал Nightwish, после чего мои увлечения
металлом только росли и развивались. Именно поинтовка меня сдалала
металлистом :-).

Через несколько лет появились доступные сотовые с GPRS и я уже штатно
подключился через этот GPRS в Интернету. Тогда же ещё и поступление в
три института у меня было, подготовка ко всему этому, и как-то я из Фидо
и выпал. Помню что ночью настраивал я PPP под FreeBSD и техподдержка
Мегафона вообще ни в чём не могла мне помочь с этим делом. Но всё же
удалось. Главное это то, что связь всё равно была лучше чем по нашим
отвратительным телефонным линиям, где до Москвы всё было очень плохо.
А с GPRS не надо платить за время.

В институте я на первом же семестре завалил матан. Как раз это было
после моего первого грайндкор концерта с Anal Nosorog-ом. Родители в
качестве наказания сказали что пойду работать летом. В июле устроился в
ETegro Technologies и в нём проработал шесть лет с того момента. Вообще
планировалось что я поработаю только летом, но дела там шли так хорошо,
что вот уже со второго курса я после института ездил на работу. А первым
делом я там занимался допиливанием https://en.wikipedia.org/wiki/M0n0wall
для 4-х портовых маршрутизаторов, чтобы все порты были равноценны. Плюс
ещё кучу фич, многие из которых писались на Perl. И это всё было так
же, как и мой домашний компьютер, на FreeBSD. Причём, если ничего не
путаю, то при устройстве договаривались на 300$ зарплаты, но мне
заплатили 700$ (и дальше так же), ибо я чуть ли не сразу же за первый
месяц уже сделал что-то стоящее и готовое к продаже.

Кстати, всё это время под FreeBSD я действительно сидел в консоли, без
каких-либо запущенных X-ов. Во-первых, консоль в FreeBSD, в отличии от
Linux-овой, отлично держала мышку, большие разрешения, кириллицу. А X-ы
просто были не нужны. Более того, я не использовал синтаксическую
подсветку, считая что она отвлекает, и у меня реально уйму лет монитор
всегда выглядел как сплошная зелёная портянка по чёрному. Разноцветность
была наверное только в mICQ и Фидошном Голом Деде (GoldEd).

4 years agoПопробовал FreeBSD шифрование корневого раздела
Sergey Matveev [Sun, 19 Jul 2020 12:49:26 +0000 (15:49 +0300)]
Попробовал FreeBSD шифрование корневого раздела

Прежде никогда не имел с этим опыта. Собственно, никаких проблем не
увидел, даже GPT label можно без проблем везде использовать. Точнее с
одним неудобством, похоже hard-coded в ядре: в начале при загрузке он
попросит пароль для какого нибудь daXsY и, введя неправильно несколько
раз пароль, он начнёт спрашивать уже про gpt/XXX устройства. Вот
примерный план как установил систему, с отдельным /boot разделом и
зашифрованным ZFS:

    # gpart create -s GPT diskid/XXX
    # gpart add -t freebsd-boot -a 4K -s 512K -l MYLOADER diskid/XXX
    # gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 diskid/XXX
    # gpart add -t freebsd-ufs -a 4K -s 1G -l MYBOOT diskid/XXX
    # gpart add -t freebsd-zfs -l MYROOT diskid/XXX
    # dd if=/dev/urandom of=/tmp/key bs=64 count=1
    # geli init -K /tmp/key -s 4K gpt/MYROOT
    # geli attach -k /tmp/key gpt/MYROOT
    # geli configure -b -g gpt/MYROOT
    (не знаю нужен ли эти флаги, или только -b или вообще никого, не пробовал отключать)
    # zpool create zroot gpt/MYROOT.eli
    # zfs set mountpoint=/tmp/zroot compression=lz4 atime=off zroot
    # zfs mount zroot
    # for what in base kernel ; do tar xfC /usr/freebsd-dist/$what.tar.xz /tmp/zroot ; done
    # mkdir /tmp/boot
    # newfs -Ut /dev/gpt/MYBOOT /tmp/boot
    # cd /tmp/zroot
    # tar cf - boot | tar xfC - /tmp/boot
    # zfs set mountpoint=none zroot
    # zpool export zroot
    # geli detach gpt/MYROOT
    # mkdir /tmp/boot/boot/keys
    # mv /tmp/key /tmp/boot/boot/keys/myroot.key
    # cat > /tmp/boot/boot/loader.conf <<EOF
    geom_eli_load="YES"
    geom_myroot_keyfile_load="YES"
    geom_myroot_keyfile_type="gpt/MYROOT:geli_keyfile"
    geom_myroot_keyfile_name="/boot/keys/myroot.key"
    zfs_load="YES"
    vfs.root.mountfrom="zfs:zroot"
    EOF
    # umount /tmp/boot
    # reboot

4 years agoVim плагин traces
Sergey Matveev [Sat, 18 Jul 2020 21:09:31 +0000 (00:09 +0300)]
Vim плагин traces

https://github.com/markonm/traces.vim
Недавно поставил, но каждый раз когда вижу его в деле, то радует глаз.
Он просто в real-time визуализирует результат применения :s-like команд.
Каких-то странностей или тормозов не увидел пока. Не могу сказать что он
ощутимо помогает, но надо ещё подольше с ним посидеть. Но я бы себе его
ставил пожалуй.

4 years agoЗаценил Madonna -- Ray Of Light альбом
Sergey Matveev [Sat, 18 Jul 2020 21:02:55 +0000 (00:02 +0300)]
Заценил Madonna -- Ray Of Light альбом

https://en.wikipedia.org/wiki/Ray_Of_Light
Только что прям два раза подряд прослушал этот альбом, который мне
рекомендовали уже давным давно. Сильно удивлён, но мне прям почти каждый
трэк понравился! Да и вообще альбом и так содержит хиты которые на
Greatest Hits альбоме присутствовали. Причём хиты именно с этого альбома
мне больше всего и нравятся. Похоже именно на нём звук и её пение прям
то что надо для меня!

4 years agoBluetooth поддержка в Linux и FreeBSD
Sergey Matveev [Sat, 18 Jul 2020 12:46:12 +0000 (15:46 +0300)]
Bluetooth поддержка в Linux и FreeBSD

https://lists.freebsd.org/pipermail/freebsd-questions/2020-July/290665.html
Человек пишет что вообще ни одного адаптера не смог найти из современных,
который бы работал под FreeBSD. И только десятая часть работает под Linux.
В OpenBSD я вообще помню что полностью всю Bluetooth подсистему выпилили.

Я Bluetooth когда-то использовал чтобы беспроводно соединять компьютеры.
Типа WiFi для бедных, плюс медленный, но зато через bluez3 это было
легко делать. В bluez4 вроде PAN поддержку (точно не помню так ли
называется) выпилили и я уже больше не мог соединиться (из коробки). Ну
а теперь вот, как оказалось, ещё и в принципе его поддержка никакая стала.

4 years agoПриятная простая утилита pktstat
Sergey Matveev [Fri, 17 Jul 2020 18:49:01 +0000 (21:49 +0300)]
Приятная простая утилита pktstat

https://github.com/dleonard0/pktstat
В одной рассылке увидел упоминание такой вот утилиты. Давно я искал
штуку которая бы как top могла бы показывать различный трафик, объединяя
и показывая сколько какое TCP соединение (например) потребляет в какую
сторону сколько трафика. Зависимостей, кроме pcap/curses, нету. Жрёт на
моих серверах под 10% одного ядра, но я считаю что вполне себе терпимо.

4 years agoГоворят что я выгорел. Похоже на то
Sergey Matveev [Fri, 17 Jul 2020 17:58:29 +0000 (20:58 +0300)]
Говорят что я выгорел. Похоже на то

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

Вот и я так же считал. Но с прошлого года у меня всё паршиво со мной в
плане работы. О задачах которые мне дают я прежде мог только мечтать.
Сроки и требования ставят абсолютно вменяемые. Условия работы
идеальнейшие. Жаловаться просто грешно бы было на что либо. Но мой КПД
всё равно дико упал и составляет жалкие доли от того, как я работал кучу
лет прежде. Я думал много о причинах и склонялся к тому, что я просто
зажрался. Или обленился, потому что сроков "а! всё горит! ничего не
успеваем!" не ставили давно и не давали пинка. Или потому что давно
стрессов никаких нет, по жизни обустроился и поэтому впал в стагнацию
или регресс. Всё это сводилось к тому, что я себе мог сказать только
одно: соберись и работай, тряпка, не отвлекайся от работы.

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

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

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

Совесть дико мучает уже с прошлого года. Пытаюсь по выходным
компенсировать хоть как-то дичайше низкий КПД. Сейчас у меня месяц
отпуска, но в нём я аналогично пытаюсь как-то побольше выполнить работы,
компенсировать дно производительности. Что-то я конечно делаю и
выполняю, но это небо и земля по сравнению с той производительностью что
у меня была, например когда я писал PyDERASN. Тогда я без преувеличений
и преукраса буквально каждый день, две недели был в режиме: проснулся,
водные процедуры, завтрак, фигачение по клавиатуре в режиме берсерка без
отвлекания на что-либо до самого обеда, быстрый обед, снова фигачу до
21-22 вечера, водные процедуры, сон. С коллегой когда-то по VoIP связи
вместе фигачили сессии с утра до вечера, тоже отвлекаясь только на
какой-нибудь обед.

Недавно пообщался с умнейшим родственником (поэтому знает меня хорошо) и
сверх-опытнейшим разрабом/руководителем разработки. Говорит что всё
очень похоже на выгорание у меня. И произошло оно (скорее всего) на фоне
того, что работа является смыслом жизни. Советует заиметь ещё что-то в
жизни где можно реализовываться помимо работы. А я давным давно
стремился и уже поставил себе условие что живу для работы. Вот и
приехал... стал тем, над кем сам же посмеивался, работать не выходит уже
(КПД 10-20% от того что было два года раньше). И так уже на протяжении
более чем полугода. В общем, дело серьёзное и, закрыв несколько тикетов
в этом месяце, надо будет искать ёмкое занятие, что-то ещё в жизнь
привносить.

4 years agoМакКузик пробует hammer ФС
Sergey Matveev [Fri, 17 Jul 2020 10:42:11 +0000 (13:42 +0300)]
МакКузик пробует hammer ФС

https://www.youtube.com/watch?v=HBXlVl5Ll6k

4 years ago5 часов читал лекцию по файловым системам
Sergey Matveev [Fri, 17 Jul 2020 10:38:14 +0000 (13:38 +0300)]
5 часов читал лекцию по файловым системам

Вчера более пяти часов без перерыва рассказывал про различные ФС и их
устройство. Плюс про RAID, LVM. Много времени конечно ZFS посвятил.
Точно понял что мне каждый час-полтора нужно обязательно пить, а то
горло совсем пересыхает и не могу говорить.

4 years agoLinux RAID официально не советует покупать WD Red диски после 2019
Sergey Matveev [Thu, 16 Jul 2020 10:56:46 +0000 (13:56 +0300)]
Linux RAID официально не советует покупать WD Red диски после 2019

https://raid.wiki.kernel.org/index.php/Linux_Raid
Молодцы что предупреждают и позор производителям дисков которые не
предупреждают о SMR.
https://raid.wiki.kernel.org/index.php/What_do_you_want_in_your_stack%3F#Why_not_btrfs_.28or_another_modern_filesystem.29
А ещё вот говорят что btrfs не заменит вам RAID :-). Вообще, если btrfs
действительно делает аналогичный CoW то в нём не будет write-hole, а
просто mdadm лишь недавно и только с дополнительным диском стал защищать
от этого.

4 years agoetcd, Kubernetes
Sergey Matveev [Wed, 15 Jul 2020 09:01:26 +0000 (12:01 +0300)]
etcd, Kubernetes

https://www.roguelazer.com/2020/07/etcd-or-why-modern-software-makes-me-sad/
Автор статьи считает что Kubernetes это худшее что случалось в мире
системного администрирования, конечно же после systemd. Опыта с
Kubernetes у меня нет, но про него наслышан, приходилось знать, удивлюсь
что если моё мнение будет отличным от этого автора. Что творится с миром
контейнеризации в GNU/Linux-ах... мягко говоря, просто пугает.

4 years agoMumble опыт
Sergey Matveev [Tue, 14 Jul 2020 09:18:36 +0000 (12:18 +0300)]
Mumble опыт

https://anarc.at/blog/2020-04-09-mumble-dreams/
https://en.wikipedia.org/wiki/Mumble_(software)
Как и у автора, у меня крайне положительный опыт использования Mumble.
На работе мы его используем уже не первый год. Мне не нравится его
зависимость от Qt, особенно его Murmur демона. Но в статье я увидел что
есть его реализация на Go -- надо будет попробовать. Ибо это
единственная программа (правда она не в основной системе, а в Jail
живёт) из-за которой у меня стоял Qt. Но Mumble реально just works.

Ведь нужно не просто транслировать звук, но и echo cancellation делать,
отсекать шумы, уметь регулировать всё это. Сам протокол шифрования не
смотрел, но за длительное время уж наверное его не раз поломали бы.
Использует OCB режим шифрования (теперь AES-GCM), что я очень уважаю.
Для звука Opus кодек, что лучше и не придумать. Сервер поднимается (за
исключением сборки Qt) легко и просто. Ресурсов ест вообще незаметно.
Пропажу пакетов обрабатывает очень и очень достойно (у коллег были
плохие линии связи в своё время). Можно сказать что идеальный VoIP
такой, быстро поднимающийся, работающий за NAT, имеющий хорошую
безопасность.

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

4 years agoНаучил clangd работе со своим кодом
Sergey Matveev [Tue, 14 Jul 2020 08:59:03 +0000 (11:59 +0300)]
Научил clangd работе со своим кодом

clangd выполняет роль LSP сервера для C* кода. Никакой настройки не
требуется: он уже будет многое отрабатывать без проблем. Однако, если
есть специфичные пути для include-ов, о которых он ничего не знает, то
он будет выдавать warning-и на неизвестные ему вещи. Я видел что
упоминался compile_commands.json -- в нём задаются все опции компиляции
каждого исходного файла. CMake подобные файлы может делать
самостоятельно, но я его не использую. Делать руками у меня получалось,
но как-то не хочется руками вести redo- (прежде Make) based систему
сборки и ещё этот compile_commands.json. Но никто не запрещает это
автоматизировать конечно же. В https://clang.llvm.org/docs/JSONCompilationDatabase.html
есть упоминание compile_flags.txt в котором просто перечисляются флаги
компиляции общие для всех файлов. Вот такой redo целью в своём C проекте
его создаю:

    % cat compile_flags.txt.do
    redo-ifchange ../cc
    . ../cc
    echo "$PCSC_CFLAGS $TASN1_CFLAGS $CRYPTO_CFLAGS $CFLAGS -I$INCDIR" |
        tr " " "\n" | sed "/^$/d" | sort | uniq

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

4 years agoУдалил asyncomplete плагин
Sergey Matveev [Tue, 14 Jul 2020 08:22:50 +0000 (11:22 +0300)]
Удалил asyncomplete плагин

http://git.stargrave.org/cgit.cgi/dotfiles.git/commit/?id=66cddd290fccf8b219d8590b07a6292ec4204434
Я думал что дополнение методов/атрибутов работает исключительно через
asyncomplete. Но его real-time работу я отключил, ибо безбожно тормозит.
Но сегодня до меня дошло что возможно дополняет то не он, а omni
completion, который я прежде никогда не использовал осознанно.
Попробовал -- да, действительно, за это отвечает исключительно он. В
итоге, asyncomplete мне становится полностью не нужным. А Ctrl-B у меня
вызывает omni completion, что приятно тем, что оно не plugin-specific.
Так что для LSP у меня остаётся ровно один vim-lsp плагин.

4 years agoТорвальдс люто негодует по поводу AVX512
Sergey Matveev [Mon, 13 Jul 2020 09:57:29 +0000 (12:57 +0300)]
Торвальдс люто негодует по поводу AVX512

https://www.phoronix.com/scan.php?page=news_item&px=Linus-Torvalds-On-AVX-512
Набор инструкций вон как может выводить человека из себя! Я тут не
силён, но поддерживаю, что транзисторы можно потратить с куда больше
пользой, ведь AVX512 автомагически не будет использоваться если его
не держит компилятор и, зачастую, прикладной софт.

4 years agoNeoVim актуальность
Sergey Matveev [Mon, 13 Jul 2020 08:35:38 +0000 (11:35 +0300)]
NeoVim актуальность

Пока возился эти дни с LSP, то очень много упоминаний и ссылок делается
к NeoVim. Всякие tutorial и прочее тоже приводятся для NeoVim. Почему
его выбирают? Самый частый ответ (если его дают) -- ну типа он более
современный. Ну это чисто хипстерство.

В 9277f9c64ce93baad82ec8dd8f9a938b25cf93dd уже писал про попытку его
использования. В целом оно работает, безусловно. Но почти с самого
начала всё равно присутствуют отличия в мелочах. Мелочи, но всё равно
заметные, а значит полной совместимости нету. Основная feature NeoVim
на момент его появления -- асинхронная работа с job-ами. Но в Vim8
появилась более простая, JSON based реализация этого: главную feature
NeoVim она аннулирует и сделана просто более удобнее и проще. Async IO,
channels, background jobs, timers -- всё это очень просто работает и без
всякого MessagePack (против формата ничего не имею, даже люблю его, но
это Vim это не HPC). Эмулятор терминала, если и кому нужен был -- в
Vim8.1 появился. Менеджер пакетов появившийся в Vim8 -- идеальный, каким
и должен быть, аннулирует надобность во всех остальных. А Vim8.2
содержит popup-ы и text properties которые как-раз задействованы вовсю в
LSP плагинах.

Возможно, с точки зрения разработчика Vim, NeoVim попроще и лучше
архитектурно устроен, но с точки зрения пользователя (меня), я не вижу
ни одного преимущества. Но вижу два недостатка: всё же он не полностью
совместим и его поведение отличается; для сборки нужен C++ и CMake и
сборка длится очень долго. Vim же собрать на моём ноутбуке: полминуты,
нужен только Make и C.

Главная ценность NeoVim схожа с nvi: при их появлении они чем-то лучше
Vim и это даёт пинок Мууленаару для улучшения Vim. Они являются
акселераторами развития Vim. И Мууленаар делает в итоге, с точки зрения
пользователя, лучше и проще.

4 years agoВспоминая свой первый бошкотряс
Sergey Matveev [Sun, 12 Jul 2020 20:08:24 +0000 (23:08 +0300)]
Вспоминая свой первый бошкотряс

Впервые я делал headbanging на третьем концерте в жизни. Это уже не
симфо- Therion и не folk- метал типа Korpiklaani, а какой никакой но
фестиваль всякого дет-метала. Это делать надо с умом, чего у меня не
было на тот момент. На полном серьёзе, я три дня после концерта не в
состоянии был держать голову на плечах. У меня все мышцы шеи совершенно
не способны были держать никакой малейшей нагрузки. Голова у меня могла
быть только идеально ровно в вертикальном положении, когда сила тяжести
идёт чисто по позвоночнику и мышцы не задействованы. Малейший наклон и
голова полностью падает, ибо мышцы просто не держат её веса. Повернуть
тоже нельзя, ибо нужно задействовать мышцы. Поворачивал свой торс. Но
так как концерт был в пятницу, то у меня как-раз было время чтобы дома
безопасно пережить хотя бы два дня. Если надо опустить голову или
посмотреть вниз, то я подставлял кулак и рукой "регулировал" угол.

Дальше с опытом организм уже понимает как ему быть чтобы сделать себе же
удобнее. Я научился правильно трясти башкой, что не сложно. Главное это
наклонить корпус. На видео с Anal Norosog:
https://www.youtube.com/watch?v=Ylmy9AL5BzU
где-то на 12:20 минуте видно как это делать максимально безболезненно.
Корпус вообще наклонить под 90 градусов имеет смысл. Не всегда возможно
если ты в толпе и тесно -- поэтому нужно изогнуться вопросительным
знаком, но ни в коем случае не фигачить что есть силы шеей. Недостатком
сильного нагиба может быть ещё то, что тела людей при этом очень и очень
неплохо поглощают звук, и если находится в длинном/большом помещений
далеко от под углом наклонённых колонок, то реально громкость может
очень значительно упасть если нагнутся (звук идёт не "сверху" на тебя, а
"плашмя" по людям). Поэтому я всегда стараюсь подходить поближе. Но,
если не знаешь клуб и его звук, то и к сцене подходить вплотную тоже не
желательно, ибо у самой сцены очень часто звук бывает слабым и плохим.

Уж не знаю у всех ли так, но думаю что у всех -- у каждого есть какой-то
свой собственный внутренний ритм. Некоторые группы играют с одним,
некоторые с другим. Под одних можно легко и спокойно и быстро и медленно
помотать башкой или подвигать торсом с большими амплитудами. Вот Anal
Nosorog мне близок: все их быстрые ритмы я чувствую и моя частота
вращения хаером отлично с ними совпадает, а все их медленные ритмы тоже
мне подходят -- частота выпрямления/сгибания с выбросом хаера тоже
совпадает. Но бывает так, что скорость игры бывает чуть-чуть медленнее у
некоторых групп и я уже просто не могу ничего делать под них. Скорость
на разных "режимах" моих движений, грубо говоря, одна и не варьируется,
тут уж так организм устроен и внутренний биоритм. У некоторых групп
быстрые темпы приемлемы, но медленные нет. Я заметил что совсем
медленный темп я не могу держать, мне он не приносит удовольствия.
Большинство могут. Зато большинство не могут держать быстрый, в отличии
от меня. Хотя до скоростей вертушки вокалиста Cannibal Corpse мне
конечно далеко (да против его лошадиной шеи бесполезно мерится!).

И кроме наклона есть ещё один "секрет" о котором мало кто знает кто не
пытался делать хаеротряс. Собственно, вертушка, которую делает Anal
Nosorog на 12:20, выглядит так (как и у всех), что он яростно
прикладывает кучу усилий чтобы его волосня вот так вот во все стороны
развивалась или крутилась. Если просто взять и попробовать сделать в
квартире, то волосы будут хаотически куда-то там выбрасываться, но это
не будет похоже на то, что на видео. А дело то простое: после одной или
двух песен голова начинает сильно потеть и волосы становятся мокрыми,
хотя бы немного. И благодаря этому, благодаря тому, что волосинки теперь
тупо тяжёлые из-за влаги, достаточно совсем чуть-чуть отклонять голову в
бок при относительно небольших амплитудах мотания головы вверх-вниз и
ваша волосня будет вот так вот по кругу без проблем и без усилий летать.
Мочить волосы не нужно -- 1 (максимум 2) песни на концерте, при которых
вы хоть что-то пытались поделать, и волосня станет сама достаточно мокрой.
А ещё вертушку любят делать в первую очередь не потому что это понтово
выглядит, а тупо потому что волосы, штука которая очень хорошо держит
воздух служащий теплоизоляцией, в полёте при этом находятся максимально
далеко от головы и они постоянно создают обдув. Вертушка тупо позволяет
очень и очень хорошо охлаждать голову и заставлять циркулировать воздух,
приток которого несёт необходимый кислород.

И ещё один "секрет": когда после песни заканчиваешь мотать головой, то
встаёшь в вертикальную позу и голова наваливается на мышцы шеи, волосня
снова обволакавает голову и удерживает тёплый воздух... тебе тупо фигово
и не комфортно. Что делать? Мотать башкой, делать вертушку! Это реально
просто навсего комфортнее и удобнее для, всё равно постоянно работающих
мышцы шеи! Или не начинать трясти башкой. Или раз уж начал, то проще
продолжать до самого конца концерта. Ибо хотя бы на концерте тебе будет
комфортно и хорошо. Да, потом будет плохо. Наверняка на следующий день
мышцы всё равно будут болеть. Но лично я жаждал всех этих ощущений и они
стоят того. Я никогда не был пьян, тем более не имел похмел, но наверное
это что-то сравнимое: когда делаешь это, то тебе хорошо, хотя знаешь что
потом, чем дальше и больше, тем будет хуже, но ты всё равно это
продолжаешь делать и будет делать снова и снова.

4 years agoGrace Disgraced и Anal Nosorog
Sergey Matveev [Sun, 12 Jul 2020 19:36:41 +0000 (22:36 +0300)]
Grace Disgraced и Anal Nosorog

https://technicaldeathmetal.org/grace-disgraced-immortech-2020/
В новостной рассылке увидел выкладку альбома сабжевой группы. Не забуду
одно их выступление ещё в 2006-ом году. Был какой-то фестиваль (то ли
Анти-крылья Фест, то ли Hordes Ov Evil), на котором в основном сплошной
грайнд был. Техничный дет-метал был просто не очень к месту. В общем во
время выступления Grace Disgraced (где на вокале женщина кстати), всем
как-то было никак. И я стоял и просто ждал когда отыграют и начнётся
что-то весёлое. Однако, вокалистка совершенно не понимала настроение
толпы. Она пыталась скандировать "grace... disgraced" в микрофон и ждала
ответа от толпы. Его не было. Ok, можно было сразу понять что нет
обратной связи, не надо это повторять. Но она не унималась. В итоге был
какой-то момент, когда музыка затихла и вокалистка снова давай кричать
"grace!" и ожидать "disgraced!" ответа от зала. "grace!"... гробовая
тишина... и, откуда-то из конца зала, выкрик ей в ответ "пошла на хуй!".
Вообще конечно не очень красиво со стороны слушателей: нравится, не
нравится, прояви уважение к артистам, своё мнение оставь при себе. Но,
вокалистка настолько не понимала что нет никакого feedback и она
откровенно надоела своими "grace!", что этот выкрик из зала в целом
передал всё настроение людей. Большинство, включая меня, начало ржать.
Вокалистка явно очень обидевшимся голосом подавлено последний раз
произнесла "disgraced" и больше скандирования не предпринимались. Этот
момент в целом оставил положительное и запоминающееся впечатление от
выступления группы!

Да и действительно нефиг подобным группам делать на фестивале где вот
такой отличный бульдозер-gore Anal Nosorog:
https://www.youtube.com/watch?v=Ylmy9AL5BzU
Где-то там на видео с правой стороны (в клубе Релакс я там любил
находится) я должен колбаситься. Одни из моих первых концертов после
которых всё болело и отваливалась шея. Только много лет спустя я стал
переносить активный бошкотряс без последствий на следующий день.

4 years agoПосмотрел "Окча"
Sergey Matveev [Sun, 12 Jul 2020 17:18:20 +0000 (20:18 +0300)]
Посмотрел "Окча"

https://ru.wikipedia.org/wiki/%D0%9E%D0%BA%D1%87%D0%B0
Не смотря на то, что снят тем же режиссёром что и сделал "Паразитов" и
"Воспоминания об убийстве" (два отличнейших фильма!), этим я не
впечатлился совсем. Снят отлично, но... больно уж поведения всех людей
там какие-то наивные и простые. Мне кажется, что фильм скорее надо
отнести к детским -- дети там наивного и непродуманного поведения (типа
отсутствия вменяемой охраны) не заметят, зато на красивую свинку
посмотрят и то, как за неё борется маленькая девочка. И в жизни бывают
случаи когда дети привыкают к хрюшкам или каким-нибудь подобным
животным, которые пойдут на еду. Ничего не поделаешь, такова жизнь.

4 years agoНачали работать колонки в мониторе по HDMI
Sergey Matveev [Sun, 12 Jul 2020 17:08:05 +0000 (20:08 +0300)]
Начали работать колонки в мониторе по HDMI

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=229190
Пока искал проблему к предыдущему посту, то решил уж посмотреть нет ли
чего на тему подобных сообщений в dmesg:

    [585361] hdacc1: Unexpected unsolicited response with tag 63: ffffffff
    [609717] hdacc1: Unexpected unsolicited response with tag 63: ffffffff

И они точно связаны с HDMI звуком. Оказалось, что проблема тоже известна
и в качестве workaround предлагают одну sysctl настройку выставить. И
действительно я впервые с FreeBSD на своём мониторе услышал звук. Вообще
при покупке я даже не подозревал что в нём есть колонки: один раз,
как-то зачем-то, загрузившись в Ubuntu, я внезапно услышал какие-то
звуки доносящиеся из совершенно неожиданного для меня места.

4 years agoПроблема с drm:intel_pipe_update_end
Sergey Matveev [Sun, 12 Jul 2020 17:03:31 +0000 (20:03 +0300)]
Проблема с drm:intel_pipe_update_end

https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/1660619
Сегодня заметил что время от времени компьютер жутко тормозит, особенно
когда что-то происходит с графикой (например изменение размеров окна с
проигрываемым видео, аппаратно ускоряемым). А в dmesg как-раз возникают
строчки как в тикете на Launchpad-е. Быстренько решил поискать в
Интернете по сообщениям и проблема вообще не FreeBSD-specific оказалась.
И решения не видно, только перезагрузка.

4 years agoЗараза головы на тему замены whitelist/blacklist в vim-lsp
Sergey Matveev [Sun, 12 Jul 2020 16:30:54 +0000 (19:30 +0300)]
Зараза головы на тему замены whitelist/blacklist в vim-lsp

https://github.com/prabirshrestha/vim-lsp/pull/847
https://github.com/prabirshrestha/asyncomplete-buffer.vim/pull/19
https://github.com/prabirshrestha/asyncomplete.vim/pull/204
Благо что эти коммиты пока ещё можно revert-нуть и использовать
нормальные термины.

4 years agoLSP в Vim: авто popup дополнения
Sergey Matveev [Sat, 11 Jul 2020 13:46:55 +0000 (16:46 +0300)]
LSP в Vim: авто popup дополнения

http://git.stargrave.org/cgit.cgi/dotfiles.git/commit/?id=31daf53ac7ef57c39cc0f11762d74228763b8dd7
Поработав побольше с vim-lsp и asyncomplete, выключил его auto_popup
функцию, которая на лету показывает все дополнения. С приемлемой
скоростью оно работает только в Go проектах. Python и C безбожно
тормозят. Это мешает работе сильнее чем помогает. Но я добавил сочетание
клавиш которое по запросу может показать мне дополнение. Так как, как
правило это будет уже какой-нибудь метод или атрибут, то это работает
существенно быстрее. Просто штатное Ctrl-P дополнение и так отлично
помогает дописывать названия переменных или подобных вещей. Но сигнатуры
он всё равно продолжает показывать.

4 years agoCarnivorous Erection
Sergey Matveev [Sat, 11 Jul 2020 11:32:36 +0000 (14:32 +0300)]
Carnivorous Erection

https://en.wikipedia.org/wiki/Carnivorous_Erection
На Wikipedia увидел что обложка этого альбома кем-то даже названа как
худшей обложкой всех времён. Ужас! Мне она настолько нравится, что у
меня на почти всех сотовых до последнего времени она на background
всегда была. Трушная goregrind картинка!

4 years agoВсе домашние маршрутизаторы имеют уязвимости
Sergey Matveev [Sat, 11 Jul 2020 08:38:39 +0000 (11:38 +0300)]
Все домашние маршрутизаторы имеют уязвимости

https://volos-news.ru/tehnologii/besprovodnaya-ugroza-domashnie-routery-uyazvimy-pered-atakami.html
А я вот никогда в жизни их и не использовал. Конечно, в ADSL модемах
прошивки могли делать и DHCP, DNS, NAT, firewall, но всю жизнь я их
использовал только как мост. WiFi у меня тоже был только в режиме моста.
Маршрутизатором всегда был старый компьютер, старый нотубук, GuruPlug,
неттоп, сейчас вот целый Xeon сервер.

Но сама идея что у меня дома устройство имеющее полноценный TCP/IP стэк
и что-то с ним делающая до "меня" (до моих FreeBSD или GNU/Linux-ов) --
противна. Само собой внутри них точно такие же Linux со всякими BusyBox
и прочим. Но кто их делает? Китайцы. А у меня в подобных вещах к ним нет
абсолютно никакого доверия. Тяп-ляп и готово. Да и я хочу иметь полный
контроль над всем трафиком. Если устройство as-is в итоге мне пересылает
IP пакет как он пришёл от провайдера -- ok, собственно это и есть мост.

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

Более того, понимать что у тебя криворукое поделие, которое имеет
доступ на канальном уровне до всех твоих серверов, ноутбуков -- стрёмно.
Не стрёмно если после него поставить сразу же какой-нибудь firewall/шлюз,
но и смысла тогда в "домашнем роутере" нет никакого, только возможно для
задач моста (оптику/ADSL "преобразовать" в Ethernet).

А ещё я нисколько не могу доверять безопасности китайцами сделанного
WiFi. Не, я против китайцев ничего против не имею. Промышленное
оборудование (Huawei) и тому прочее они конечно делают достойно. Но вот
для дома, всякий ширпотрёб -- я не смогу поверить что достойно. Сами
WiFi протоколы безопасности у меня нареканий не вызывают. Вот только...
что будет если PRNG внутри WiFi точки доступа будет низкокачественной?
Что будет если программист счётчики пакетов не корректно обрабатывает?
А будет фатально с точки зрения безопасности. Кто-то понесёт наказание
если это явно выявится? Нет, всем насрать. А я, когда пробовал работать
через WiFi, совершенно не хочу чтобы у меня радиоволнами broadcast-ился
мой трафик с очень сомнительным уровнем безопасности. Если в ноутбуке
WPA протоколы я могу делать программно в ОС, то на точке доступа уже я
ни на что не влияю. Поэтому я в любом случае поднимал VPN туннель.
Тогда я считал что IPsec это дико сложная и архаичная фигня и поэтому на
него не смотрел. OpenVPN... боль и страдание. WireGuard-а ещё не было. Я
взял и написал GoVPN. Сейчас я правда абсолютно везде использую IPsec
или SSH TUN-туннель для простейших случаев когда надо через NAT
соединиться.

4 years agoСистема на обычной флешке
Sergey Matveev [Sat, 11 Jul 2020 08:02:04 +0000 (11:02 +0300)]
Система на обычной флешке

https://www.linux.org.ru/gallery/screenshots/15803298
Главная проблема обычных флешек -- их быстрый износ. Я несколько раз
поднимал свой домашний шлюз, на котором был и Postfix, на обычных USB
флешках, где скорость не критична. Во-первых, я вроде бы ни разу не
видел чтобы флешка не отваливалась. Хотя бы раз в месяц, но обязательно
что-то да происходит (возможно не флешка плоха, а USB контроллер) из-за
чего блочное устройство отваливается. Самые разные системы (от
ноутбуков, до неттопов, до серверных материнских плат) -- везде USB это
нестабильная штука. Это основная причина, кстати, почему я всерьёз даже
не смотрю в сторону решений где Ethernet подключается по USB (вторая
причина -- большая нагрузка этого USB на CPU при активной работе). Но
главное: за несколько месяцев ЛЮБАЯ флешка начинала иметь badblock-и,
изнашивалась, приходя в негодное состояние. Почтовый сервер с fsync-ами
для нужд меня и нескольких рассылок -- убивает флешки. Если особо ничего
не писать, то конечно долго проживут.

По этой же причине я долго сторонился SSD-шек. Один раз, когда знакомый
по дешёвке новенький SSD продавал (он чуть-чуть по размерам больше
оказался и не мог влезть в его ноутбук), то я приобрёл и решил
посмотреть какого это. Но тогда у меня уже была ZFS, которая значительно
более равномерно изнашивает диск чем классические ФС. Прослужила она мне
лет пять или больше. Честно говоря она до сих пор рабочая и никаких
проблем не встретил -- просто по происшествии столько времени мне уже
немного боязно, ведь она же уже должна начать ломаться и я приобрёл
новую, немного большего размера. И это обычные, чуть ли не самые
дешёвые, Kingston SSD. Но после этого опыта я доверяю их износостойкости
для своих нужд. Большие объёмы мне не нужны, а скорость у них конечно
очень приятна и поэтому в основном моём рабочем компьютере я только SSD
и использую. Для надёжного хранения HDD конечно никуда не деваются, но
они стоят в сервачках.

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