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

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


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

t.me/4x_pro

Лог жизни

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


Дурной день

4X_Pro

Сегодня опять получился какой-то дурной день. Эх, видимо, старость года сказывается. Какая-то повышенная дурная активность у всех. Одни только спаммеры пытались позвонить 4 раза (правда, антиспам от МТС и «Не бери трубку» благополучно их отбили). Плюс ещё выползло на связь несколько человек, о которых я забыть успел благополучно. Из-за этого под вечер накатила паника на тему «опять ничего не успеваю» (или даже так «опяяять ничего НЕ УСПЕВААААЮЮЮ», как сказала бы Kitsune).
Впрочем, было и несколько неплохих моментов: я сходил на короткую прогулку в Терлецкий парк, помог 10geekу написать текст для борьбы с дезинформацией, а Kitsune прислала интересную книжку.

Осознал причину своих метаний

4X_Pro

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

Читать далее…

Нашёл поворотный момент в 2007 году

4X_Pro

В последнее время часто задавался вопросом, почему я не могу творить так же, как это было в 2003—2007 годах, и что тогда изменилось в моей жизни. И вот, кажется, нашёл ответ. Раньше для меня то что я делаю, имело некоторую самоценность уже в силу того, что я сделал это сам. Даже если это была всего лишь собственная раскладка клавиатуры для Quake или подборка настроек реестра для Windows. Я воспринимал сделанное как то, что выделяет меня из толпы, которая пользуется стандартными настройками, возвышает над ней.

Читать далее…

Глючный день

4X_Pro

Вчера получился какой-то очень глючный день. Сначала засиделся в Сети до 6 утра — доделывал ещё одного бота для Telegram. Решил сделать эхо-бота для упрощения изучения и отладки Telegram API, который выдаёт в качестве ответного сообщения тот JSON, который приходит на webhook бота от Telegram. Вроде задача очень простая, но хотел было сначала сделать её в виде бессерверной функции lambda AWS на JavaScript. Но сломал там мозг с тем, как отправить POST-запрос без асинхронности или callbacks. И уже к утру не выдержал, переписал всё на PHP и положил в подкаталог на своём тестовом сайте. Вот там заработало всё сразу же! Потом пришла в голову ещё одна идея: отправлять боту JSON, который тот бы использовал в качестве параметров для ответа, чтобы тестировать всякие ReplyKeyboard и т.п. Но сил на реализацию этого уже не хватило. И ещё решил, что если и буду делать ботов на AWS, то либо на Python, либо на Ruby (нужно будет поэкспериментировать, что из них потребляет меньше памяти).

Читать далее…

Прощай, FirstByte!

4X_Pro

Сегодня всё-таки решился и перенёс socionics.me с отдельного VDS на хостинг с моими старыми сайты на Reg.Ru. А TypograferBot отправил на облачный сервер на Amazon. Прощай, FirstByte! Четыре года я прожил там, и хотя особых проблем не наблюдалось, канал связи был явно хуже, чем на Reg.Ru.

Читать далее…

«Антихрупкость»

4X_Pro

Начал читать «Антихрупкость» Талеба. Похоже, это будет ещё одна книга в этом году, которая значительно повлияет на моё мировоззрение. В ней речь идёт о том, к чему я только-только подходил в своих рассуждениях о «стеклянных деревьях» и «живом программном обеспечении», причём вопрос рассматривается в самом общем виде, а не применительно к отдельным областям типа создания сообществ или программирования. Правда, автор — ярко выраженный гаммиец под духу, поэтому некоторые рассуждения вызывают сильнейшее неприятие. А главными «хрупкоделами» — создателями сложных формализованных систем, плохо устойчивых к непредсказуемым воздействиям, являются альфийцы и бетанцы, как это ни прискорбно. Зато эта книга заставила меня задуматься над вопросом, каким должен быть «антихрупкий социализм».

Когда не хватает ответов

4X_Pro

Продолжаю изучать Amazon Web Services. В частности, разбираюсь с базой DynamoDB. Но чем дальше продвигаюсь, тем больше возникает вопросов. В частности, никак не могу понять, стоит ли её применять для ботов или же лучше обойтись обычной реляционной СУБД, например, тем же PostgreSQL. Или вообще пока не связываться с бессерверными функциями и DynamoDB, а делать всё на обычном виртуальном сервере со связкой PHP + MySQL. В общем, моя типичная ситуация: когда возникает слишком много вопросов и неопределённостей, возникает желание всё отложить на неопределённый срок до того момента, когда ответы не найдутся, и в голове не наступит ясность. И всё было бы хорошо, если не одно но: когда ответы найдутся, пройдёт уже несколько месяцев, а то и лет, и я опять оглянусь назад и буду переживать, что за прошедшее время так мало сделал.

Заметка в Instagram от November 12, 2021 at 11:06PM

4X_Pro

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

Читать далее…

Неплохой, но непримечательный день

4X_Pro

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

Остаток дня сидел дома. Помог corsico наладить автозапуск службы SphinxSearch, которая падала из-за того, что в /var/run не было нужного каталога. Оказалось, в systemd есть способ создавать такие каталоги автоматически и с нужными правами. Для этого в unit нужно прописать в секции Service параметр RuntimeDirectory=имя_каталога (без /var/run в начале).

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

Читать далее…

Вновь вернулся к ботам

4X_Pro

Опять вернулся к теме ботов для Telegram. Сижу и разбираюсь с Amazon Gateway Service, которую хочу использовать, чтобы сделать бота легко масштабируемым. Да и вообще, вероятность падения или взлома серверов Amazon в разы меньше, чем отдельного VDS (да ещё на относительно дешёвом хостинге), а значит, можно будет не бояться уйти в оффлайн или полуоффлайн на несколько дней.

На первый взгляд, ничего сложного: нужно просто написать свои lambda-функции и подключить, но всё никак не решусь попробовать. Классика жанра: вроде всё понятно, но нужно время, чтобы новые знания перешли в зону уверенности. Ещё несколько разочаровался от того, что на Amazon не поддерживается PHP: придётся писать либо на Python, либо на JavaScript. Из-за этого даже задумался над вопросом, не перебраться ли в Яндекс.Облако или SberCloud, где и PHP есть, и документация на русском. И вроде цены подешевле. Но пока так и не решился.

Читать далее…