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

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


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

t.me/4x_pro

Лог жизни

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


Халява кончилась

4X_Pro
Сегодня узнал, что закрылся небольшой источник халявы — проценты на остаток в банке Тинькофф. Хотя в целом там за месяц получалось всего две-три сотни рублей, но всё равно неприятно. Что ж, буду теперь в качестве основной использовать карту Сбера. Там процентов на остаток тоже нет, но хотя бы бонусов больше начисляют. Или, как вариант, заказать пластиковую от МКБ вместо виртуальной. А если бы не второй брокерский счёт в Тинькофф, который сейчас в минусе, вообще закрыл бы карту…

О сиюминутности, вечности и движке сообщества

4X_Pro
Кажется понял, что нужно использовать в качестве источника вдохновения, когда буду писать свой движок сообщества на базе MLFW — CMS под названием Osnova. Смешно, что на ней работают именно те сайты, которые я терпеть не могу из-за большого количества людей правых взглядов и ненавистников коммунизма в комментариях: vc.ru, dtf.ru и tj.ru. Но вот в плане интерфейса, пожалуй, этот движок даже лучше чем Pikabu. Просто чувствуется, что сделано профессионально, хотя и не могу формализовать, в чём это заключается. Просто каждый элемент на своём месте.
Правда, и эти сайты не миновала болезнь современности под названием редизайн: на DTF сделали новый дизайн, который явно хуже. Почему нельзя сделать что-то однажды хорошо и больше не менять?
Впрочем, есть то, что мне не нравится. Например, я считаю неэтичными такие штуки, как постоянно висящее активное уведомление для гостя или бесконечная лента, соответственно, у себя такое делать не буду. И древовидные комментарии — это тоже зло. Сейчас прихожу к выводу, что нужно делать как на Dzen — максимум два уровня вложенности.
В общем, сейчас у меня план такой: сначала сделать на своём frameworkе MLFW что-нибудь совсем простое, например, гостевую книгу, чтобы как следует его обкатать. А вот дальше — не знаю, то ли сразу браться за движок сообщества, в котором, в том числе будет и каталог бесплатностей (или вообще сделать его просто одной из групп), то ли сначала всё-таки сделать каталог отдельным проектом. И ещё всё-таки пугает такой объём проекта. Сколько же я это делать буду? И как сделать так, чтобы не сносило потоком жизни? Потому что одно дело заниматься почти каждый день по 3-4 часа, а другое — только когда в жизни наступает затишье.
Подумалось тут, что вся моя жизнь — это отражение атак сиюминутности ради того, чтобы выкроить хоть немного времени для того, что я считаю работой для вечности. Только вот получается это гораздо реже, чем хотелось бы: сиюминутность наступает и наступает… Единственное, что могло бы помочь — это выкачать в оффлайн всю необходимую документацию (например, использовать оффлайн-режим того же DevDocs) и отключить Интернет до момента, пока не сделаю всё задуманное. Но увы, на такие крайние меры я вряд ли решусь. Да и за сайтом должен кто-то приглядывать.

Возвращение на настолки

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

Неожиданное пожертвование

4X_Pro
Вчера день начался с неожиданного приятного события — я получил ещё одно небольшое пожертвование на развитие SiteKnockerBot. В очередной раз убеждаюсь, что это наиболее оценённый и востребованный из моих проектов на данный момент времени. И всерьёз задумался о том, чтобы сделать бота для вывода данных с devdocs.io. Но никак не могу понять, как там устроен поиск.

Первый день весны и прогулка в Измайловский парк

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

Вырвался из болота жизни

4X_Pro
Опять ощущение вязкого болота жизни. Висит куча самых разных мелких недоделок, но заниматься ими не хочется от слова совсем. А хочется наглухо отключить Интернет и целыми днями играть в Starcraft.
В частности, снова вылезла проблема с ложными срабатываниями SiteKnockerBot. Попробовал было вернуться к Go-версии. Но получается вот что: первый запуск бота проходит нормально, все проверки завершаются за 60-80 секунд, ложных срабатываний почти нет. Запускаю вторую проверку с теми же параметрами (количество параллельных запросов, задержки после выполнения каждого и таймауты) и либо начинают сыпаться ложные срабатывания, либо (при включённой настройке SO_REUSEADDR) происходит остановка проверки на время, существенно превышающее проверочный цикл. Видимо, истощаются какие-то внутренние ресурсы системы. Сначала думал, что не хватает портов для исходящих соединений, но в настройках системы их в разы больше, чем проверок — с 32001 до 65535 (а проверок на тестовой базе всего 1745). Поставил кеширование DNS из соображения, что DNS-запросы тоже могут съедать ресурсы, но особых изменений не вижу. И что делать — непонятно. Даже подумываю поднять виртуальную машину с FreeBSD и попробовать на ней — вдруг там сетевой стек лучше реализован и такой проблемы нет. Правда, перспектива полной переустановки системы на VDS с ботами и кучей всего остального тоже как-то не радует.
UPD: пока писал, совершенно случайно выяснилось, что проблема была совсем в другом. Я тестировал бота на домашнем компьютере, и от большого количества соединений переполнялась таблица NAT на роутере. Перенёс бота на сервер с прямым IP — всё заработало как надо даже при 200 параллельных проверках (на большее количество я пока не решился, тем более, что даже по сравнению со 120 ускорение было весьма незначительным — всего на пару секунд) + параллельном прогоне через сервер видеотраффика с YouTube. Единственный минус — время получения ответа от проверяемых серверов выросло раза в два, что может вызвать больше срабатываний о медленном ответе.
Ещё никак не могу обновить страницу про свои компьютеры на втором личном сайте. А ещё хочу закончить статью про мир школы и мир улицы, позавчера немного продвинулся, но потом снова дело встало. И ещё висит задача по freelance-деятельности. Вроде и небольшая, но никак не могу настроиться.
Но вообще, к вечеру, после того, как решилась проблема с ботами, жизнь как-то наладилась. Хоть и не успел ничего больше, кроме этого.

Мой первый опыт с ChatGPT

4X_Pro
Сегодня попробовал ChatGPT  в действии через Telegram-интерфейс (бот ChatGPT_ForTelegramBot). Забавная штука! Задал ему несколько нормальных вопросов и несколько провокационных, например, кто такие враги народа и умеет ли он ботать по фене. Ответы вполне адекватные, хотя зачастую и слишком общие. Поэтому использовать его для holywars в духе Android vs iOS или Intel vs AMD вряд ли получится. Хотя надо будет попробовать закидывать в него цитаты противников из конкретных споров, возможно, результат будет лучше. Тогда можно будет с одной стороны, не тратить время на спор со всякими дурнями, с другой — не оставлять идеологически неправильные высказывания незакрытыми.
Не упустил возможности обучить его тому, что лицей 1502 — это отвратительное учебное заведение, которое иначе как отстойником назвать нельзя. (Хех, вспомнилось, как в 2001 году учил этому программу ChatMaster. Впрочем, не знаю, достаточно ли сообщения от одного пользователя, чтобы как-то повлиять на обучение. Более эффективно, наверное, было бы написать негативные отзывы на Яндекс.Карте и Google.Maps).
Ещё, как выяснилось, ChatGPT удобно использовать как справочник по функциям библиотек. Просто вбиваешь имя функции и язык программирования, и он выводит информацию. Удобнее, чем в Google, где нужно сначала по ссылке ткнуть. Правда, задержка перед ответом великовата. (И сразу возникла мысль написать бота, который будет специализирован именно под такие запросы, а данные брать с DevDocs.io.)
Эх, а вообще, удивительно, что то, о чём я только мечтал в подростковом возрасте, стало реальностью… Правда, тогда я представлял это в виде desktop-приложения, которое только изредка синхронизирует базу через Интернет, чтобы его можно было использовать в оффлайне. Но не факт, что для такого хватило бы вычислительных мощностей и места на диске.

Набег на Волоколамск

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

Смотреть все фото

Заметка в Instagram от February 25, 2023 at 10:13AM

4X_Pro
Вчера с @natalia_tella совершенно внепланово отправились в Волоколамск. Ради этого сумели даже встать рано и выехать чуть раньше 10 утра! Дорога была долгой и тяжёлой. Перед самим Волоколамском (о нем — в следующем сообщении) побывали ещё в Иосифо-Волоцком монастыре. В отличие от большинства монастырей, от которых главное впечатление — это покой, Иосифо-Волоцкий создаёт какое-то ощущение приподнятости, радости в душе! Ещё рядом с ним расположено весьма красивое озеро.
Ещё узнал о противостоянии нестяжателей и иосифлян. Удивительно, что ещё пятьсот лет назад возникал вопрос о том, что правильнее — не стремиться к владению материальными ресурсами вообще или же владеть, но использовать их на благо окружающих.
В общем, очень доволен, что побывал в этом месте.
#монастырь #поездка

Смотреть все фото

Связь времён

4X_Pro
Сэр Мик сегодня прислал цитату, которая прямо про меня (только слово «действительность» уместнее было бы заменить на «сиюминутность» или «повседневность»):
он был совершенно уверен, что все, что происходит в стране, очищает для него дорогу к самому себе. Всю жизнь ему мешала найти себя эта проклятая, фантастическая действительность, всасываясь в него, заставляя думать о ней, но не позволяя встать над нею человеком, свободным от ее насилий.

Только вот написано это почти сто лет назад. Если конкретно, это Максим Горький, «Жизнь Клима Самгина».

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

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