Мясо, чай и гитара будут. Дрова есть. Сегодня на солце было вполне по-весеннему, хотя сне́га ещё полно и на бубликах с гор ездить можно. Прогноз — слегка отрицательная температура с переменной облачностью и снегом — за неделю не растает.
P.S. Вишлиста традиционно не существует. Но можно исходить из того, что я по-прежнему могуч и гитарист. Ну и турист, велосипедист, автомобилист, бас-гитарист, вокалист, программист и даже сисадмин.
В свежем Debian GNU/Linux (вроде, и в Ubuntu 16.04 LTS четырёхлетней давности аналогично) для синхронизации часов используют не ntp, а timesyncd. Только оно по умолчанию не работает — ни на рабочем компьютере, ни на домашнем ноутбуке.
Начал разбираться — выяснил:
Настройки хранятся в /etc/systemd/timesyncd.conf: там есть адрес основного сервера для синхронизации и список запасных — и оба этих списка закомментированы. Понятно, что надо раскомментировать плюс можно в качестве основного адреса указать тайм-сервер своего провайдера.
VirtualBox препятствует синхронизации — его можно запустить (sudo VBoxService --timesync-set-start — мне не помогло) или совсем проигнорировать, если используется редко, как я и сделал.
После этого останется лишь перезапустить демонов и время наконец-то станет точным.
Если субграф используется только для группировки вершин, а отображать его совсем не надо, можно дать ему любое имя, но в таком случае надо добавить параметр rank=same для того, чтобы вершины выстроились рядом.
Writer — текстовая часть пакета LibreOffice — аналог Microsoft Word — имеет странную особенность: если поставить в диалоге замены галочку «Регулярные выражения», то выражение \n будет иметь разное значение в зависимости от того, где его написать: в строке поиска оно соответствует переводу строки ↲, вставляемому сочетанием клавиш Shift+Enter, но в строке замены это же самое будет уже концом абзаца ¶, который вставляется одиночным нажатием клавиши Enter.
Иногда код, хранимый локально, дорастает до состояния, что его уже можно выложить на GitHub. Конечно же, с сохранением уже накопленной истории изменений. Если установлен gh — клиент для Гитхаба с интерфейсом командной строки, то решить такую задачу будет просто: достаточно зайти в каталог с существующим кодом, создать командой gh repo create новое GitHub-хранилище — оно автоматически будет указано в качестве удалённой ветки (remote branch) — после этого останется отправить всё наружу командой git push origin master (да, git всё-таки ещё главную ветвь называет мастером, а не main). То есть, достаточно всего двух команд.
path/to/code$ gh repo create slide-python --public -d 'Slides for Python classes'
? This will create 'slide-python' in your current directory. Continue? Yes
✓ Created repository shoorick/slide-python on GitHub
✓ Added remote git@github.com:shoorick/slide-python.git
path/to/code$ git remote -v
origin git@github.com:shoorick/slide-python.git (fetch)
origin git@github.com:shoorick/slide-python.git (push)
path/to/code$ git push origin master
Enumerating objects: 370, done.
Counting objects: 100% (370/370), done.
Delta compression using up to 4 threads
Compressing objects: 100% (368/368), done.
Writing objects: 100% (370/370), 832.24 KiB | 13.87 MiB/s, done.
Total 370 (delta 249), reused 0 (delta 0)
remote: Resolving deltas: 100% (249/249), done.
To github.com:shoorick/slide-python.git
[new branch] master -> master
Рисую ориентированный граф с помощью GraphViz, понадобилось нарисовать одинокую вершину, ни с чем не связанную.
digraph G {
graph [ rankdir=LR ]
node [ shape=box, fontname="PT Mono", fontsize=32 ]
name [ shape=cds, style=filled, fillcolor=wheat ]
name -> 42
"'value'" [ fontcolor=grey, color=grey ]
}
Вершина оказывается слева, но я хочу сдвинуть её правее. Подсмотрел на stackoverflow идею сделать невидимое ребро и попробовал применить её в своём случае. Для начала попробуем добавить ещё одну вершину и связать её ребром с той, которую надо сдвинуть — успешно:
none -> "'value'"
Сделаем невидимым ненужное ребро:
none -> "'value'" [ style=invis ]
и ненужную вершину — тоже. После этого получится именно то, что надо:
Константин Севостьянов заметил, что с дороги М-5 «Урал» «сняли зелёные знаки» — убрали статус магистрали. Ездил в субботу-воскресенье — не заметил, поэтому в дополнительный выходной в среду специально смотрел повнимательнее. Так и есть: двадцатишестикилометровый участок, начиная с 35-го километра (1844, если считать от Москвы) теперь обычный, с ограничением скорости в 90 км/ч. Причина предсказуема — на магистрали не должно быть наземных пешеходных переходов поэтому в ответ на многочисленные просьбы трудящихся решили привести всё-таки в соответствие переходы и скоростной режим. Сегодня 74.ру проснулось и решило всё-таки сделать новость для главной страницы — теперь причиной называют дефекты проезжей части
Пешеходный переход возле Витаминного
Ограничение скорости возле Витаминного
Ограничение скорости возле Тимирязевского
Впрочем, я предполагал, видя активное строительство мостов на Уфимском тракте, что всё-таки поставят мосты и на магистральной части, однако фиг — знаки поменять дешевле и проще.
Если что-то в интернете можно посмотреть, значит, это можно и скачать, хоть это и не всегда удобно.
Вот, например, челябинский провайдер «Интерсвязь» всюду развесил камеры видеонаблюдения да видеодомофоны и даёт возможность своим абонентам смотреть не только то, что происходит прямо сейчас, но и архив за последнюю неделю. При этом архивную запись с общедоступной камеры скачать можно — на странице есть соответствующая кнопка, но вот с камеры домофона — нельзя.
Как известно, если нельзя, но очень хочется, то можно.
Метод
1. Заходим на страницу с архивом, находим нужный фрагмент, открываем отладчик (клавишей F12), переключаемся на вкладку Network — так и в Google Chrome, и в Mozilla Firefox.
3. Когда запросы перестанут идти (то есть, всё нужно, уже скачалось), можно, щёлкнув по ним правой кнопкой, выбрать пункт “Save all as HAR” — запросы и ответы на них будут сохранены единым файлом с расширением HAR — на самом деле это JSON.
В отладчике открыта вкладка Network
4. Берём какой-нибудь HAR-extractor (есть всякие варианты — мне подошёл первый попавшийся, написанный на Node.JS), натравливаем его на HAR-файл, получаем папку, в одной из подпапок которой будут лежать видеофайлы с расширением TS.
5. Смотрим эти видеофайлы — под линуксом с гномом можно использовать стандартный видеоплеер totem или всеядный mpv (ну или mplayer, из которого он и вырос).
6. Создаём текстовый файл, каждая строка которого состоит из слова file, пробела и имени файла в апострофах:
Аналогичный способ — сохранение кучи мелких файликов через HAR — можно использовать для того, чтоб добыть тайлы — небольшие квадратные картинки из которых состоят интерактивные карты на сайтах, а потом, делая свою карту, разместить эти тайлы где-нибудь у себя, чтоб не создавать лишнюю нагрузку на тайлопровайдера — они этого не любят: OpenStreetMap просит не брать тайлы непосредственно у них, а фонд ВикиМедиа всё время клянчит денег на поддержку функционирования Википедии. Реальный пример такого подхода — карта Global SUSU на сайте Южно-Уральского университета: тайлы там сгенерированы Википедией из общедоступных данных OpenStreetMap, но хранятся на одном из университетских серверов.
Пока машина в ремонте, воспользовался общественным транспортом.
Новые низкопольные троллейбусы на кольце возле вокзала железнодорожной станции Миасс I
Добраться семьёй с Машгородка (север Миасса) до центра Челябинска — 3 × 15 + 712,80 + 3 × 20 = почти 818 рублей.
На машине, если считать только бензин, получилось бы раза в два дешевле — 350-400 рублей на 120 км. С другой стороны, в троллейбусах и электричках самому рулить не надо — на то есть специально обученные люди. А если прибавить стоимость расходных материалов, ремонта и технического обслуживания автомобиля, а также транспортный налог и ОСАГО, то стоимость проезда сравняется. А уж если приплюсовать сюда амортизационные отчисления, то даже на максимально заполненной машине получится дороже, чем на общественном транспорте.
В электричке контролёр пыталась требовать справку из школы для девятилетнего пассажира, но всё-таки отстала. Якобы справки обязательны, хотя автомат на станции спокойно продаёт билеты и без справок, да и живые кассиры в Москве и Подмосковье в сентябре никаких справок не хотели.