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

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


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

t.me/4x_pro

Лог жизни

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


Мини-конкурс на CodinGame

4X_Pro
Сегодня принял участие в очередном конкурсе от CodinGame. На этот раз нужно было спрограммировать бота для карточной игры по мотивам Warcraft. Уже за одно это разработчикам огромнейший респект — порадовали! Но, в отличие от предыдущих конкурсов, поменялся формат. Теперь конкурс проводится не за десять дней, как раньше состоит из двух частей, считаемых независимыми конкурсами. Первая — спринт: нужно представить решение задачи всего за 4 часа. Вторая — марафон — на ту же самую задачу (но с открытием лиг выше бронзовой) отводится 4 недели.

Сегодня был спринт. Началось все достаточно хорошо: я за час с небольшим разобрался в условиях и написал код, позволивший мне влегкую проскочить третью дубовую лигу. Причем еще решил писать на PHP, а не на Python, в расчете на то, что на этом языке никто другой писать не будет, и у меня будут шансы получить бонус за финиш первым по языку.
Читать далее…

Новое испытание или лабиринт страха

4X_Pro
Сегодня DarLik реализовала свое давнее намерение: вытащила меня в «лабиринт страха», чтобы вызывать смещение «точки сборки» (впрочем, сама она не знает этого термина) и растормошить эмоционально. Мы договорились встретиться в метро на Чкаловской и поехать туда. Но почти в последний момент DarLik передумала, и решила ехать на такси. Зачем — не знаю, но убедить ее в том, что в период с 17:30 до 20 часов в центре Москвы о существовании такого средства передвижения как автомобиль, лучше не думать, не получилось. В результате тащились почти 50 минут, собрали все пробки, и задолбался даже водитель. А к тому времени, когда доехали, я пребывал уже в состоянии глубокого пофигизма ко всему.
Читать далее…

День почти без Интернета

4X_Pro
Вчера вдруг перестал работать проводной Интернет. Причем совершенно неожиданно: в какой-то момент вместо сайтов роутер стал выдавать свою страницу с сообщением о том, что кабель отключен, и все. Попытался было подключить кабель напрямую — никаких результатов. Написал на EMail, указанный на сайте провайдера — никакого ответа. Весь вечер в итоге просидел в оффлайне, лишь изредка выходя в Сеть с мобильной связи. Хотел воспользоваться этим происшествием для того, чтобы начать налаживать режим дня. Но получилось как всегда: решил доделать вывод последних фотографий из Instagram на главную страницу моего личного сайта. Причем взялся за это еще вечером, но никак не мог сосредоточиться, и только в 2:30 занялся всерьез. И сделал довольно быстро почти все, кроме одного: запускаемой по cron процедуры скачивания и сохранения в кеш файла с данными из Instagram. Причем вроде бы все работало, но файл в нужном месте не появлялся, и все!
Читать далее…

О планах и протесте против них

4X_Pro
Давно хотел написать о том, что опять возникает внутренний конфликт. С одной стороны, живу по принципу «что день принесет», как и полагается в иньской модальности, с другой — никак не могу избавиться от привычки строить какие-то планы. И, самое главное, оценивать прожитый день не по тому, насколько интересно он был прожит, а по тому, насколько я продвинулся по этим планам. Причем все, что было сделано вне планов, не учитывается и почти обесценивается. Но с другой стороны, стоит что-то запланировать, и я буду делать что угодно, кроме этого (если только этот план не контролируется как-то извне).

Причем если раньше у меня было главной задачей во что бы то ли ни стало заставить себя жить по плану (и в 2008—2013 годах об этом было чуть ли не каждое второе сообщение), то сейчас — другая крайность: научить себя жить без планов, в соответствии с потоком жизни, и не переживать по этому поводу. Но вот тоже не получается. Где же выход?
Читать далее…

Жизнь удалось замедлить

4X_Pro
Наконец-то получилось замедлить жизнь до приемлемого уровня. В среду и четверг просидел дома безвылазно. Составил список дел, которые хотел бы доделать (в основном, по личному сайту), но как-то эти дела не двигаются. Вместо этого сижу на CodinGame целыми днями, и получаю от этого массу удовольствия. В частности, позавчера очень удачно проявил себя на Clash of Code и ощутимо двинулся вверх в рейтинге. А сегодня попробовал себя в другом виде соревнований — Code of Golf, где надо написать максимально короткую программу, решаюую определенную задачу. Сначла сделал это на Python, но там очень не хватало троичного оператора, и программа получилась в 160 байт длиной. Потом пробовал на PHP, там было где-то 140, потом — на Perl, где за счет более простого оператора ввода объем сразу сократился до 90 байт. Потом, используя возможности переменной по умолчанию ($_), сумел ужать до 80 байт. В результате вошел в первую четверть таблицы. (Кто-то там даже умудряется на Lua и Bash укладыаться в 30 байт.
Читать далее…

Телефонный звонок и день мелких неудач

4X_Pro
Сегодня день опять начался с телефонного звонка, да еще не просто раннего, а очень раннего: чуть раньше 9 утра. Я сбросил этот звонок, отправил номер в черный список и попытался доспать, но увы, так и не получилось. Где-то через час с небольшим решил, что надо вставать. Проверил звонивший номер, оказалось, что это был МТСбанк. Убрал его из черного списка, зашел на сайт банка в личный кабинет, и обнаружил, что мою карту заблокировали. Им показались подозрительными два перевода денег подряд на одну и ту же карту. Я через сайт подал заявление на разблокировку, через какое-то время мне позвонили, уточнили, действительно ли я делал эти операции, после чего карту разблокировали.
Читать далее…

Конкурс по программированию от Яндекса

4X_Pro
В последние дни в жизни творился бардак. В пятницу по непонятным причинам проспал 12 часов и установил антирекорд сна: подъем в 16 часов (предыдущий был в 15:20 или 15:30). Скорее всего, повлияло солнечное затмение. Вообще, не раз замечал, что во время затмений, даже не видимых у нас, в жизни творится разная ерунда. Интересно, почему? Следующей ночью спать не хотелось совсем где-то часов до четырех, и, в итоге, засиделся до 6 утра. Суббота выпала из-за сходки, которую описывал в предыдущем сообщении. После сходки попытался лечь рано, но результат оказался совершенно не тем: проснулся около трех часов ночи, и сидел в Сети до 9 утра, потом снова вырубился. А осттаок дня провел в совершенно неработоспособном состоянии.
Читать далее…

Очередная игровая встреча

4X_Pro
Сегодня состоялась еще одна игровая встреча. Изначально я долго не мог определиться, идти на нее или нет, так как вчера засиделся в Сети до 6 утра, а встреча в силу ряда причин, была сильно смещена и начиналась в 12:00. Я поставил будильник на 11:15, и решил, что буду решать когда проснусь в зависимости от самочувствия. Встал с огромным трудом. Плюс я еще не был уверен, много ли желающих будет на эту встречу (так как новолуние + вчерашнее солнечное затмение + параллельно еще одна встреча). В результате в 12 только написал организатору на страницу встречи с вопросом, много ли собралось. Он ответил, что пока четверо. Я стал собираться но решил все же перед встречей поесть, так как в голодном и невыспавшемся состоянии меня обычно все выводит из себя, и это не самое лучшее состояние, чтобы ехать на сходку. Но заталкивать еду в непроснувшийся организм — то еще «удовольствие». И в результате вышел из дома только в 13:30. И, как всегда в состоянии недосыпа, и тут сумел начудить.
Читать далее…

Поездка к Ростокинскому акведуку

4X_Pro
Недавно решил поучаствовать в фотоконкурсе «Планета Москва» и для него сфотографировать Ростокинский акведук. И в этот четверг мы отправились туда вместе с Tellой.

Сам мост нашли быстро. Но с южного берега, с которого мы пришли изначально, вид открывался не очень впечатляющий, а по галерее на самом акведуке можно ходить только по выходным. К счастью, я предварительно изучил карту и знал, что рядом есть небольшой пешеходный мостик, по которому мы перешли на другой берег. Но оттуда тоже сфотографировать его было непросто: он слишком большой, чтобы вместить его в кадр целиком и показать всю грандиозность. Но тем не менее, я нашел несколько ракурсов, которые показались удачными. Потом мы прошли через одну из его арок, и сделали серию фотографий с другой стороны, а затем решили прогуляться вдоль Яузы вниз по течению. Пройдя немного, нашли тропу с деревянным настилом, уходящую куда-то в глубь болота, и решили сходить по ней.
Читать далее…

Малая девятоиюльская дисковая катастрофа

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