Портрет 4X_Pro
Был в Сети 21 дек. 2024 г., 14:10
Мультиблог
4X_Pro
Кратко о себе: Web-разработчик. Пишу на PHP, Python, JavaScript. Знаю Ruby и Go, со студенческих времён более-менее помню C и asm. Специализируюсь на ускорении загрузки сайтов и разработке ботов для Telegram. Linuxоид (использую Debian+LXDE). Сторонник IndieWeb, slow lifer.

Социальные сети


Новости сайта в Telegram

t.me/4x_pro

Лог жизни

Лог моей жизни, где я фиксирую наиболее эмоционально значимые для меня события и текущее настроение. Является продолжением блога, который я вел в ЖЖ с ноября 2004 по апрель 2018 года.


«Остров кошек» и расталкивание задолженностей перед жизнью

4X_Pro
В субботу удачно сходил на настолки. Один раз сыграли в «Роскошь», где я наконец-то оказался не на последнем месте, а на предпоследнем. Но зато наконец-то почувствовал, как нужно выстраивать долгосрочную стратегию. А то прежде набирал ресурсы по жадному алгоритму — чтобы получить ту карту, для которой нужно меньше всего жетонов прямо сейчас.
Затем Ал.С. собрала всех на игру «Остров кошек», с которой она недавно зафанатела. Вникнуть в правила игры достаточно непросто, так как нужно понять, когда кто что делает. Хотя когда понимание пришло, игра становится простой. Главное — не путаться, что на каком шаге делать. Но пока разбирались, времени прошло очень много, и из положенных пяти раундов успели отыграть только неполные три. И по-моему, все закончили с отрицательными результатами. Но всё равно, с нетерпением жду, когда сыграем снова.
Вернувшись домой, снова засиделся до глубокой ночи. В воскресенье встал с трудом и поздно. Зато остаток дня потратил на то, чтобы разобраться с «задолженностями перед жизнью»: доделал всё, что оставалось по freelance-деятельности и теперь могу почувствовать себя свободным человеком. А ещё сходил на выборы, так как подать вовремя заявку на участие в электронном голосовании не смог. И наконец-то вернулся к книжке по файловым системам. Ещё немного и её дочитаю.

Образовательные сны и прогулка

4X_Pro
В последние дни с самочувствием творится что-то странное. В ночь со среды на четверг отлично отоспался, показатели Welltory были просто великолепные. Но день прошёл куда-то мимо, а под вечер возникло ощущение какой-то липкости сознания. Ни на чём не мог сосредоточиться. Причем Welltory вечером показывала вполне приемлемые результаты, то есть дело было не в переутомлении. В пятницу ситуация повторилась (только показатели Welltory были вполне типичные).
Ещё уже третий день подряд снятся сны на образовательную тематику. Сначала — вполне типичный сон про то, что прошло уже полсеместра, а я никак не мог определиться с предметом по выбору, и в итоге прогуливал их. В конце концов выбрал какой-то дополнительный курс математики, пришёл взять задание, а преподавательница продиктовала его очень быстро и нехотя, и я не успел записать. А повторять — не стала. Хотя вот что необычно: как решать — знал (и даже сейчас помню, что нужно было записать систему уравнений), но вот из-за того, что не успел записать точно, понимал, что задание сделать не могу. И из-за этого проснулся.
Второй сон был интереснее. Мне приснился, если так можно выразиться, «антилицей» — учебное заведение, которое было противоположно лицею 1502. И я шёл туда с радостью и интересом. И даже когда вдруг возник конфликт с кем-то из учеников, это тоже как-то быстро решилось. И помню, что в конце сна была фраза «в нашем лицее на бывшей Марьинской улице вражды не бывает» (тут я задумался, когда это Марьинскую улицу успели переименовать и почему, и от этого проснулся). Оффтоп: интереса ради проверил по Яндекс.Карте, оказывается просто Марьинской улицы в Москве нет, есть только Большая Марьинская, причём в район проспекта Мира, а не Марьино, как можно было бы предположить из названия.
Третий сон был про Институт. Там я должен был сделать две лабораторных работы то ли по физике, то ли по электротехнике. Первую сделал, но там возникли какие-то проблемы с защитой (эх, напоминает реальную ситуацию с химией в Первом семестре). А во второй всем достались нормальные лабораторные установки, которые были именно такие, как в описании работы, а мне — вроде похожая, но немного другая и без каких-либо обозначений, по которым можно было бы понять, что куда подключить. И главное, спросить не у кого и помочь никто не может. В итоге когда проснулся, испытал огромное облегчение по этому поводу.
А проснувшись, увидел, что за окном отличный день, и решил выбраться на прогулку в Измайловский парк. Обычно предпочитаю не гулять в выходные, но подумал, что у моста над Серебрянкой в самом центре парка народа будет немного. Как выяснилось, я был не совсем прав: народа даже там хватало. У моста увидел, что вдоль реки протоптана достаточно хорошая тропинка по левому берегу реки, который прежде был достаточно диким. Пошёл по ней вверх по течению, и добрался до места напротив устья Косинского ручья. Но увы, ничего особо интересного на том берегу нет, лучше бы пошёл по правому — смог бы посмотреть и ручей. Взял с собой фотокамеру сэра Мика, попробовал снимать ей, но результаты на компьютере пока ещё не смотрел.
В общем, прогулялся неплохо, разгрузил голову как следует, повспоминал прошлое, в частности, 2002—2003 годы, когда Серебрянка была для меня своего рода убежищем от постоянно висящих над душой «надо» и страха не успеть вовремя. Местом, где я чувствовал себя по-настоящему свободным. Самочувствие вроде улучшилось, больше нет той липкости. Сейчас испытываю некоторый внутренний подъём и хочу даже выбраться на настольные игры ненадолго!

Свой сайт или сообщество?

4X_Pro
Продолжаю сидеть на Яндекс.Кью. С одной стороны, узнаю немало интересного — реализую ту самую ценность Познания, о которой писал на странице «Обо мне». С другой — переживаю по поводу того, что этот процесс Познания весьма бессистемный, и большая часть узнанного, в общем-то, нигде и никак мне не пригодится. В общем, извечное моё противоречие: с одной стороны, негативно отношусь к вопросу практической полезности, ибо не хочу быть похожим на «ускорителей жизни», с другой — не могу полностью его игнорировать…
Также задумался над тем, что Яндекс.Кью во многом напоминает то, каким я хотел бы видеть своё сообщество идеалистов Интернета. И из-за этого снова начал переживать, не зря ли я пытаюсь сделать что-то своё, что будет слабым подобием того, что сделано таким крутым игроком как Яндекс, превзойти которого даже самому талантливому одиночке малореально. (Кстати, это навело на очередной вопрос для Кью: где может реализоваться одиночка, для которого работа в команде неприемлема.) Из-за этого снова задумался над вопросом, а не попытаться ли сделать своё сообщество на Кью в ближайшее время вместо того, чтобы ждать неизвестно сколько, когда я допишу MLCE.
Правда, сайт идеалистов Интернета я рассматривал как место единомышленников с широким кругом тем по общению, а на Кью уместным будет несколько другой, более узкий формат, который я назвал «Жизнь по уму». Сегодня даже набросал контент-план и попытался сформулировать, что же в эту самую жизнь по уму входит. (Подсказка для знающих типологии: внеценностные ЧС и БИ, высокая Вечность и 6 ТУАИ — наше всё).
Но с другой стороны, опять возникает вечная дилемма: что круче — быть владельцем малоизвестного, но полностью своего сайта или же администратором более многолюдного сообщества на чужой площадке. Второй момент — это свой сайт был бы местом единомышленников, точнее, людей со сходной системой ценностей, тогда как сообщество в Яндексе — всё же в меньшей степени. Третий — на своём сайте я могу реализовать идеи по созданию самоуправляемого сообщества, тогда как Кью управляется с помощью традиционной модерации нескольких уровней. Ну и последнее — мне категорически не нравится, как Яндекс принуждает к использованию оффлайнового имени. (Кстати, я из-за этого не могу комментировать ответы и опросы.)

Вторая прививка прошла тяжелее

4X_Pro
Мда, вторую прививку я перенёс гораздо тяжелее. Ночью температура поднялась до 38.4 и держалась так почти десять часов. Спал урывками по часу. В итоге день прошёл мимо, только сейчас начинаю приходить в себя. Но голова соображает плохо, всё раздражает, и ещё усталость сильная…

Непростое обновление, превратившееся в бессонную ночь

4X_Pro
Вчера договорились с corsico заняться обновлением его сервера. Планировали поставить версию PHP 7.x. Заранее протестировали код на временном сервере, и я думал, что всё пройдёт достаточно легко и просто, за час-полтора справлюсь. Но не тут то было! Типичное обновление превратилось в весьма непростой IT-квест.
Первая неприятность вылезла уже в пакетном менеджере: он не хотел ставить никакой новый софт и выдавал кучу непонятных предупреждений на все пакеты. После более тщательного изучения вопроса оказалось, что предупреждения безвредны (просто слишком старая версия apt), а работать он отказывается из-за неудачных предыдущих попыток поставить PHP 7.3. Применив force-директивы dpkg, я удалил остатки этого пакета, после чего заработал apt update и появилась возможность поставить более новый софт, включая PHP 7.4.
Казалось бы, всё хорошо, ещё немного и всё заработает. Но увы: PHP 7 потребовал обновления Apache до 2.x. Поставил, попытался запустить, и тут ошибка: не удаётся инициализировать генератор случайных чисел. Первая реакция — «чё?». После непродолжительного поиска выясняется, что это из-за старой версии ядра. Делаю apt update && apt upgrade. Вижу, что обновляется почти вся система (причём часть пакетов появляется в предлагаемых к обновлению не сразу, а после повторного выполнения команды), в том числе и ядро. Становится ясно, что нужно перезагрузиться, но и у меня, и у corsico по этому поводу были самые нехорошие предчувствия.
corsico связался с датацентром, на всякий случай запросил доступ по KVM. Те предоставили, и мы отправили сервер на перезагрузку. Как выяснилось, это было очень правильное решение: после перезагрузки сервер перестал пинговаться. Зайдя по KVM, я увидел, что загрузка оборвалась на этапе запуска GRUB, который ушёл в rescue mode. Причём GRUB все диски видел, но при попытке подцепить модули normal и linux выдавал ошибку missing symbol или что-то подобное. По всей видимости, он обновился но криво.
Стало ясно, что дело попахивает крупными неприятностями: чтобы восстановить сервер, нужно загружаться со стороннего носителя. Но сервер стоит далеко, ночью к нему не факт что пустят, а время идёт, сайт недоступен, пользователи паникуют. Тут я обратил внимание, что в меню KVM-приложения есть пункт для монтирования ISO-образов CD-ROM. Сначала даже не поверил, что это сработает: слишком уж фантастичным это казалось: грузить физический сервер с виртуального диска. Срочно скачала Puppy Linux и отправил сервер в перезагрузку. Следующая пара минут прошла в напряжённом ожидании. Время тянулось очень медленно… И всё же экране возникло изображение загрузочного экрана Puppy. Вот оно, спасение!
Загрузка длилась очень долго. Видимо, виртуальный CD-ROM работает медленно. Но вот появилась GUI (выбрать текстовый вариант загрузки я на эмоциях не сообразил), я запустил терминал и напечатал долгожданное grub-install /dev/sdb. И вроде даже сработало, но вывод сильно отличался от обычного и выдалось сообщение, что какого-то пакета не хватает. Было опасение, что что-то опять пошло не так.
Снова перезагрузка. На этот раз grub запускается в нормальном режиме, но вместо меню показывает свою командную строку. Пытаюсь ещё раз загрузиться в Puppy в надежде, что получится доустановить недостающие пакеты и сгенерировать нормальный конфиг, но упираюсь в то, что IP-адрес и прочие параметры нужно настраивать статически. IP-адрес я знаю, а вот шлюз, DNS и прочее — нет. В итоге отказался от этой затеи, вместо Puppy решил загрузиться с образа Ubuntu mini. Увы, тот просто не увидел /dev/sdb, возможно, из-за того, что там используется RAID-контроллер.
Делать нечего, пришлось снова перезагрузиться и в командной строке GRUB вводить вручную команды root, initrd, kernel. Точных имён файлов я, естественно, не помнил (иначе бы не стал заниматься всеми этими сложностями с повторной загрузкой Puppy и Ubuntu Mini). Но оказалось, что GRUB умеет делать автодополнение имён по Tab. Это меня и спасло!
Вроде бы процесс загрузки начался, но длился он недолго. Дальше я попал в оболочку busybox, запущенную с initrd. Пытаюсь монтировать диск, но безрезультатно: пишет path not found (точное сообщение уже не помню). Минут 20, наверное, ломал мозг, как такое может быть: вот он, файл /dev/sdb2, на него можно cat даже сделать (заглючив в процессе терминал), но вот mount его не видит. Потом оказалось, что дело было не в этом. Нужно было явно указать тип файловой системы. После этого наконец-то всё смонтировалось и загрузилось.
Первым делом побежал проверять Apache. Ура, запускается! Но сайт всё равно недоступен. Оказалось, не подцепились настройки Интернета, да и сам интерфейс отключен. Перезапускаю networking, вроде заработало. Делаю снова grub-install и grub-mkconfig и облегчённо вздыхаю: вот оно, спасение!
Дальше было более прозаично: обновлял конфиги Apache, перенастраивал модули, так как у 2.4 хватает отличий в настройках, но вскоре сайт запустился. Оставалось только проверить, что теперь сервер корректно переживёт перезагрузку.
Но не тут то было: на следующей перезагрузке сеть снова не подключилась. Почему — так и не понял, по всей видимости, из-за того, что раньше её инициализировала служба System V, которая из-за обновления перестала запускаться. В итоге нашёл конфиг с сетевыми настройками и переписал его под systemd. Но проверка работоспособности всего этого потребовала ещё нескольких перезагрузок, а сервер там запускается ну очень не быстро…
Потом ещё очень долго возился к кодировкой главной страницы сайта. Я думал, она на статике, пытался прописать charset везде, где только можно, но без толку. Был момент, когда хотелось биться головой о клавиатуру от непонимания. Потом оказалось, что corsico когда-то сделал index.php, где проверял, с какого устройства заходит пользователь, и который потом включал в себя эту статическую страницу. Только после этого вопрос решился!
В итоге всё закончилось около 5 утра. И ещё раз убедился, что я — человек, который всё делает со второго раза (и хорошо если со второго), предварительно «собрав» все неподходящие варианты действий. Например, если бы я перед запуском выполнил grub-update, этап с плясками с виртуальным CD-ROM и Puppy Linux бы не потребовался. (Но с другой стороны, не узнал бы про возможность загрузки с виртуального образа.)

Сделал вторую прививку

4X_Pro
Сегодня сделал вторую прививку от COVID-19. На этот раз очереди почти не было, заполнил документы, после чего сразу же сделали укол, и я отправился домой. Последствия примерно такие же, как прошлый раз: где-то через 20 минут появилось чувство загаженности организма, к вечеру чуть подросла температура и заболело горло. И какая-то апатия, делать толком ничего не хочется… Даже в блог хотел написать ещё в 19 часов, но никак не мог собраться. По этому поводу даже опять вспомнилась фраза: «жизнь — это то, что с тобой происходит, когда у тебя совсем другие планы».
Но зато есть надежда, что к октябрю можно будет перемещаться по городу и ходить на настолки без страха заразиться!

Снова играю в «Меч самурая»

4X_Pro
Сегодня снова съездил на настолки. Из дома выбираться как-то не хотелось, поэтому приехал поздно. После долгого перерыва увиделся с Ал.С. и К.Ш. Присоединился к «японскому бэнгу» (он же Меч самурая) на шестерых, и в первую партию начал очень мощно, за один из ходов сразу отжав два жетона чести. Но увы, дальше дело застопорилось. Тем не менее, первую партию мы выиграли с отрывом в одно очко от К.Ш., которая тогда была ронином. Потом ещё пару раз сыграли на семерых, но увы, дальше не везло: проигрывал всё время. Тем не менее, играми остался доволен, хотя и в меньшей степени, чем в прошлый раз. Хотел было ещё сыграть в «Роскошь» или «Project L», но один из присутствующих сманил большинство в Codenames. Участвовать в этом не стали только наиболее ярые сторонники бэнга, и мы стали дальше играть в бэнг впятером. Но и там мне не везло… В итоге после двух партий все как-то резко решили расходиться.

Антикоучинг и ещё одно противоречие

4X_Pro
Я придумал название тому, что я хочу нести в мир — «антикоучинг» (по аналогии с «антикафе»). Суть его в следующем: учить людей не ставить всё новые и новые цели и переживать по поводу недостигнутого, а быть довольным тем, что есть. Не гнаться за финансовыми успехами или статусом, а действовать в соответствии со своими истинными целями. Не заниматься «пробиванием стеклянных потолков», а спокойно дожидаться, когда накопится достаточно личной силы и мудрости, чтобы потолок исчез сам собой. Не заморачиваться тайм-менеджментом, а жить в своём естественном ритме. И так далее.
Но обдумывая это, осознал сегодня, что и сам постоянно занимаюсь «пробиванием стеклянного потолка», только по другому показателю: посещаемости своих сайтов, которые обычно легко дорастают до 100—120 человек/сутки, а дальше останавливаются. (Исключением был только разве что ЕТП в свой лучший период.) И если доводить это до логического  завершения, то получается, что мне самому надо отложить попытки выйти на более высокие показатели, а просто заниматься, чем нравится.

Преветнтивные баны ВК

4X_Pro
Забавно: нашёл в Сети сайт, с помощью которого можно просканировать список людей ВКонтакте, добавивших меня в чёрный список. Оказалось, это сделали 7 человек. Из них двоих я вообще не знаю от слова совсем: один — какой-то 1Фный обыватель (судя по интересам), вторая — психолог из Санкт-Петербурга. Интересно, в чём смысл таких «превентивных банов»?

Есть ещё умные люди в Интернте!

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

Задать вопрос

Здесь можно задать мне вопрос или спросить совета по любой теме, затронутой в блогах или на форуме. После того, как я отвечу, вопрос и ответ появятся в соответствующем разделе. Но не забываем, что я — сторонник slow life, поэтому каких-либо сроков ответов не обещаю. Самые интересные вопросы станут основой для новых тем на форуме или записей в блоге.
Сразу предупреждаю: глупости, провокации, троллинг и тому подобное летит прямо в /dev/null.