Портрет 4X_Pro
Был в Сети 25 янв. 2025 г., 18:08
Мультиблог
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
Продолжаю участвовать в конкурсе на CodinGame. Вчера открылась серебряная лига, куда я сразу же прошёл. А вот дальше откатился на 1200-1300 места и ничего не мог с этим поделать. Два дня ломал голову, что же улучшить в алгоритме, почему такие плохие результаты. Потом стал сравнивать свои действия и действия противника на первых ходах (у меня до 6-ого хода последовательность действий закодирована жёстко) и обнаружил, что даже когда я пытаюсь дублировать действия противника один в один, это не получается. Стал разбираться и обнаружил глупейшую ошибку. У меня проверка возможности совершить то или иное действие была сделана криво: количество sun points (очков действий) проверялось на строго больше, а не больше или равно. Как только это исправил, сразу же подпрыгнул до 860 места.
А вообще, недавно подумалось, что CodinGame — это один из немногих сохранившихся кусочков старого Интернета. Во-первых, все общаются под Сетевыми именами. А у многих ещё на автарах персонажи старых компьютерных игр (видел даже Rockmanа у кого-то). Во-вторых, техноэлитизм: положение в иерархии на сайте определяется через интеллектуальные показатели: знание алгоритмов, умение писать код и находить решение, а технически безграмотным там делать нечего. Ну и в-третьих, практически сведена к минимуму коммерческая составляющая, что спасает сообщество от деградации.

Прогулка к устью Плотни

4X_Pro
Наконец-то холода закончились, и появилась возможность выбраться на прогулку. На этот раз я решил отправиться к водоёму к югу от Буньково, а затем — к устью реки Плотня. Настроение было просто отличное: солнечный весенний день, совсем недавно появившиеся светло-зелёные листья на деревьях, и ощущение легкости и беззаботности. Ещё когда только подходил к реке, удивился, как много солнечных бликов видно сквозь деревья. Оказалось, что и Клязьма, и Плотня очень разлились из-за последних дождей, и значительная часть луга возле устья Плотни затоплена водой. А ещё там образовался небольшой островок, и кто-то положил доску, чтобы на него можно было перебраться. Я хотел было забраться туда, но доска оказалась слишком ненадёжной, и от этой идеи пришлось отказаться.

Новый конкурс на CodinGame

4X_Pro
В четверг днём успел сделать ещё один небольшой шаг в плане поддержки IndieWeb — написал код для endpoint discovery.
А потом начался конкурс на CodinGame! Задача про засев леса меня очень порадовала! Как и ожидалось, в бронзовую лигу я поднялся в тот же вечер, буквально с двух commitов (точнее, на CodinGame правильнее называть их submitами), написав совершенно простенький алгоритм. А вот дальше немного замедлился. Попытался было написать алгоритм, играющий перебором, но при большой глубине поиска нарывался на таймаут, а при маленькой — оказался на 1700-ых местах из 4000.
Сегодня решил попробовать другой подход. Написал код с набором стратегий, где выбор между ними осуществляется по набору фиксированных правил. Сразу результат улучшился: сначала 1200-ое место, потом, после пары мелких правок, поднялся до 1000 позиции. Но всё равно код не самым оптимальным образом играет в самом начале, и продолжаю думать, что с этим делать. Но бота бронзовой лиги вроде обыгрывает без проблем, так что, скорее всего, в серебряную лигу тоже без проблем поднимусь.

Поездка к Карпятнику

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

Не совсем slow life

4X_Pro
В последние дни вдруг стало хватать 7.5 часов сна. Не знаю, с чем это связано: то ли стал ложиться раньше, то ли уменьшил информационный поток, и поэтому меньше времени требуется на разгрузку мозга. Но даже несмотря на это, время всё равно девается непонятно куда. Вот, например, позавчера выключил компьютер в 23:40, но спать всё равно лёг только чуть раньше трёх часов. А за это время успел только поесть и собрать вещи для поездки на дачу. На следующий день встал в 10:40, а такси для поездки мы с отцом заказали в 13 ровно. А за эти два с небольшим часа успел только поесть, полить цветы и выбросить мусор. Не успел даже посидеть в медитации, как собирался изначально, для успокоения перед поездкой. Куда делось остальное время — загадка… Да и сегодня проснулся в 11:04, и всё, что сделал до 12 часов — это выпил чаю и посозерцал вид из окна.
Всё-таки slow life хороша тогда, когда каждый момент максимально осознан и прочувствован. Например, с некоторыми оговорками туда можно отнести сегодняшнее утреннее созерацание за чашкой чая. А когда время уходит непонятно куда, а сделано мало — это не столько slow life, сколько просто ерунда какая-то. Вопрос только в том, как понять, чем такие огромные потери времени вызваны.

Первый заезд на дачу в этом году

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

Весенние ручьи и долгая прогулка к Лебедянскому пруду

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

Сносит потоком жизни в сторону

4X_Pro
Опять поток жизни сносит меня в сторону от IndieWeb. В четверг пришло письмо с CodinGame про очередной конкурс. Вернулся на сайт, зарегистрировался на конкурс, а заодно прошёл задачу недели. Увидел, что хотя откатился куда-то в район 2800-ого места в общем рейтинге из-за того, что давно не участвовал в Clash of Code, всё равно вхожу в ТОП 0.8%. Теперь испытываю двоякое чувство. С одной стороны, предвкушаю конкурс и хочу попробовать использовать те знания, которые приобрёл летом 2019 года. С другой — переживаю, что с 6 мая опять почти на десять дней выпаду из нормальной жизни. Впрочем, можно сделать иначе: выйти в серебряную лигу (обычно на это хватает двух дней), а дальше — забить.
В тот же четверг Tella внезапно вспомнила о нашем канале на Дзен и буквально за час набросала новую статью. Эх, удивляюсь, как люди умеют так быстро писать. У меня потом на редактирование и то времени ушло больше! Впрочем, большая его часть — на дополнение конкретикой. И в пятницу 12-ая статья была опубликована! И у нас появился 23-ий подписчик. Правда, мы всё дальше и дальше отступаем от изначально задуманного формата: рассказать какую-то историю, а потом уже дать объяснение, что там просиходит с точки зрения психологической составляющей.
Вчера всё же хотел вернуться к IndieWeb и написать код для endpoint discovery, чтобы потом реализовать клиентскую часть протокола WebMention, но так и не собрался. И вообще, весь день подтормаживал из-за того, что заставил себя встать раньше. Но зато исчезло ощущение слишком короткого дня. А сейчас собираюсь снова идти на настолки.

Чего мне в жизни не хватает

4X_Pro
Сегодня выбрался на небольшую прогулку по району, во время которой пришло два важных осознания. Первое — работоспособность снизилась из-за того, что «уехал» режим, и опять встаю слишком поздно. Нужно хотя бы в 11 вставать, а лучше в 10. Да, в этом случае утренние часы пролетают мимо в том плане, что не делаю ничего из того, что считаю важным. Но зато к 13 часам я уже заканчиваю с проверкой обстановке на сайтах, рынке и тому подобным. А сейчас я в это время только-только встаю. Да и качество сна всё же выше. Хотя ещё можно попробовать перейти на двухфазный сон: 3 часа сна вечером (скажем, с 21 до полуночи), потом ночь активной работы, так как после вечернего сна идёт мощный приступ бодрости, потом снова сон с 5 до 11 примерно. Но и в том, и в другом случае главная сложность — это своервеменно сказать себе «пора выключать компьютер и идти спать». Не знаю почему, но всё время не хочется отпускать прошедший день.
Второе — это то, что мне в жизни по-прежнему не хватает ответа на вопрос «Кто я», причём такого, который давал бы мне чувство собственной обоснованной значимости. Причём такого, в который с одной стороны, можно было бы вместить почти все основные направления моей деятельности, с другой — в который вписывались бы мои личностные ограничения.
Где-то до 2013 года у меня такой ответ был. Сначала, в школьно-студенческие годы — «талантливый мальчик, которому не повезло жить в эпоху перемен, где всё решают аспекты ЧС и БЭ, но который при этом остаётся собой и не предаёт свои идеалы». Потом, с 2004 года — «Web-разработчик, создатель форумного движка, который работает за идею и за то, чтобы сделать Интернет более комфортным для бедных (тех, у кого слабые компьютеры и медленный Интернет)». Потом — «владелец собственного соционического форума, который помогает людям понимать себя» (это уже 2006 год, эпоха Социоклуба). Затем — «автор пирамиды типологий, системы, с помощью которой можно навести в них порядок и разобраться, что к чему относится» (2008—2013 годы). А вот дальше начался период, где чёткого ответа не было. Хотя с тех пор перепробовал много разных видов деятельности, и в 2019 году даже был момент, когда казалось, что нашёл три подходящих пути, но почему-то сейчас опять возникло чувство, что ни один из них не даёт этого ощущения.

Ещё два противоречия

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

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

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