Портрет 4X_Pro
Был в Сети вчера, 17:27
Мультиблог
4X_Pro
Записки лишнего человека

Сиюминутное и повседневное

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

Осенние проблемы и неприятности

4X_Pro
Наступила настоящая осень с серыми и мрачными днями, и это тут же сказалось на настроении. Раздражает все! В частности, то, что вчера, несмотря на то, что хотел наладить режим и выключить компьютер в 3:10, засиделся в Сети до 3:45, а спать лег каким-то образом все равно в 5 ночи. Тем не менее, сегодня заставил себя встать в 11:15, и теперь все валится из рук.
Еще опять посыпались проблемы. Всего пару дней назад я думал, что все, столкнул очередную freelance-задачу и теперь свободен, и уже почти было собрался прожить месяц в режиме «в Интернет только с МЦК», но тут посыпались неприятности. Сначала попытались подкинуть еще одну задачу, потом по завершенной задаче вылезло несколько мелких, но очень противных доработок. А потом вдруг написал один мой давний знакомый, с которым мы пытались сделать одну доработку его сайта в январе, но дело забуксовало, а теперь он о нем вспомнил.
А самое главное, что голова совсем не соображает, и поэтому ничего не могу делать: осенняя погода давит на психику. Весной или летом бы я все то же самое воспринял бы как мелкие неприятности, да и только. А сейчас все кажется мрачным и беспросветным. Причем вот что забавно: раньше я от жизненных неприятностей пытался убежать в Сеть, а сейчас ситуация меняется на обратную: хочу спрятаться в оффлайне, от всяких наведенных «надо», идущих из Сети.

Две прогулки: Кусково и Пресня

4X_Pro
Вчера отправился на длинную прогулку в Кусково. Как обычно, вышел из дома позже, чем хотел, где-то после 16 часов. Зато дошел до моста из Новогиреево в Кусково как раз в тот момент, когда закатное солнце отражается в рельсах железной дороги, проходящей под мостом, создавая удивительную игру света. И даже удалось это сфотографировать! Помнится, года два я собирался это сделать, и вот получилось. Правда, фотография все равно не передает полноту впечатлений.
А когда я дошел до Большого Дворцового пруда, уже начало темнеть. Я немного посидел на берегу. Подумал о том, что вот, какой уже раз прихожу сюда с мыслью «нужно бросить все и начать настоящую жизнь», где будет больше прогулок и впечатлений, а внимание не будет постоянно расфокусировано Интернетом. С другой стороны, также хочется заняться капитально своим сайтом и сайтовым движком. Но потом возвращаюсь домой и все снова получатся как обычно: поток жизни захватывает меня и тащит неизвестно куда.
Потом я еще прогулялся вдоль дальнего берега пруда и канала, а затем отправлся домой. Перехода по мостику над ж/д станцией Кусково нашел забавную надпись: «Народ проснись!» и ответ другим цветом и шрифтом: «Еще пять минуточек!». Сфотографировал ее и выложил в Instagram.
Сегодня с Tellой отправились в парк Красная Пресня. Туда собирались съездить очень давно, еще то ли с весны, то ли даже с прошлого года, но все никак не складывалось. Парк очень небольшой, но в целом произвел хорошее впечатление, несмотря на то, что некоторые его части сейчас отгорожены забором и недоступны. Необычен он прудом, который в нем имеется: по сути дела, это даже не пруд, а достаточно широкий канал необычной формы с несколькими мостами. В канале плавало немало уток, которые при виде нас сначала оживились, но когда поняли, что еды не будет, утратили к нам всякий интерес. Еще запомнилась необычная подсветка и вид на башни Москва-Сити, верхняя часть которых исчезала где-то в тумане. Еще был момент, когда чуть не поругались с Tellой из-за того, что она затронула неприятную для меня тему, а я на это резко отреагировал фразой «фильтруй базар!».
На обратном пути попали под холодный и неприятный дождь. А сейчас я в каком-то странном состоянии, и весь остаток дня ни на чем не могу сосредоточиться…

CodinGame: конкурс A*Craft завершился

4X_Pro
Сегодня закончился конкурс A*Craft на CodinGame. В отличие от предыдущих, он длился всего два с половиной дня и был не на игры, а на оптимизацию: нужно было расставить стрелки на карте так, чтобы сделать суммарный путь роботов по ней максимальным. Я занял 150-ое место из 2456! (Правда, примерно последние 500 участников — те, кто зарегистрировался, но даже не попытался прислать хоть какой-то код, и поэтому получившие 0 очков.) Это гораздо лучший показатель, чем во всех предыдущих конкурсах. Если считать в относительных показателях, то до этого мне максимум удавалось подняться до 84%, а в этот раз — до 93%, что близко к моему верхнему порогу амбициозности!
И это несмотря на то, что толком на конкурс не настроился, и до воскресенья подходил к нему как-то лениво. Впрочем, задачи по оптимизации даются мне проще сами по себе. Кроме того, код был основан примерно на том же рекурсивном алгоритме, который я впервые пытался применить еще в Code of Ctulu. Написал я его достаточно быстро, но потом обнаружился какой-то совершенно непонятный баг, на борьбу с которым ушла половина воскресенья. А причина оказалась банальной: я дважды использовал одно и то же имя result в одной функции, но подразумевая при этом две совершенно разных переменных: одну для поиска максимума, вторую — для хранения значения, которое будет возвращено из функции. В результате вместо максимума возвращался последний результат.
Из-за этого я только вечером воскресенья обнаружил, что хотя алгоритм хорошо справляется с картами из узких длинных коридоров, но дает довольно посредственные результаты на картах с большими смежными областями. Для таких карт я задумал было еще один алгоритм с совершенно другим подходом, но так его и не реализовал. Во-первых, не хватало времени, чтобы тщательно его обдумать и вытащить из зоны неуверенности. Во-вторых, нашел один случай, когда первый алгоритм (который рекурсивный) давал неоптимальный результат. Сначала казалось, что ошибка простая и ее удастся устранить быстро. Но все оказалось не так: я провозился с ней до глубокой ночи. А потом выяснилось, что ошибка действительно примитивная: я забываю вызвать .copy() при рекурсивном вызове функции, в результате чего вместо копии карты для поиска на следующем шаге передается ее исходный вариант и результаты поиска пути в разных направлениях начинают влиять друг на друга. Странно, что на остальных картах это работало! Причем выяснилось, что если на каждом шаге создавать копию карты, это занимает много времени, и в итоге на многих тестах начинается вылет по таймауту. Пришлось применить «костыльное» решение: написать условие, по которому принимается решение, делать копию или нет.
Поэтому вместо второго алгоритма сделал простую проверку: если карта с большими смежными областями, и роботов много, то для последних строить путь только до ближайшей уже размещенной стрелки. И, как это ни странно, это дало определенный результат: вместо 5400 очков, которые я набирал изначально, стало получаться 5700! А вот исправление того бага с копией дало всего лишь жалких 17 очков (впрочем, их оказалось достаточно, чтобы подняться еще на несколько мест).
Но вообще, наверное, надо было писать не на Python, а на PHP. Там и код быстрее выполняется (если в PHP 7), и копии массивов создаются автоматически (так что я бы не возился полдня с первым багом и, может быть, успел бы и второй алгоритм реализовать), причем в режиме copy-on-write, что тоже дало бы неплохую оптимизацию. Но увы, нельзя применять в качестве ключей для хеша связки из нескольких значений (то, что в Python называется tuples). Впрочем, при желании это можно было бы легко обойти.
Но в любом случае, я доволен результатом!

Почти выздоровел

4X_Pro
Наконец-то выздоровел. Причем сегодня еще сумел встать раньше 11 часов, впервые за последние два месяца, и застать момент, когда солнце еще заходит в окно моей комнаты. Все же утро создает совсем другое настроение!
Еще задумался, что в последнее время живу в каком-то совершенно расхлябанном режиме: день проходит за днем без каких-либо четких целей. И никак не могу понять, что это: то ли обретение той самой свободы и жизни без забот, о которой я мечтал в 2000-х годах, то ли я сорвался с жизненных рельс и лечу куда-то в пропасть, и кончится все это плохо.
Пожалуй, только вчерашний день был некоторым исключением: я отключил Интернет на ноутбуке, что дало возможность написать две заметки: про взросление, и про то, как импортировать контакты со старого мобильника по Bluetooth. Но на это ушел почти весь день: закончил я где-то в 22 часа, потом даже на CodinGame не успел зайти.
В общем, все больше и больше задумываюсь, что все же надо перейти на режим жизни «в Интернет — только из метро». Так как при включенном Интернете время летит вообще вникуда, и ни на чем толком сосредоточиться не получается.

Болею

4X_Pro
В субботу меня угораздило заболеть. Как обычно, из-за сквозняков, которые возникли из-за постоянно открытого окна из-за слишком теплой погоды. (Из-за этого даже задумался, есть ли возможность сделать принудительную вентиляцию в квартире так, чтобы можно было держать окна закрытыми.) Причем если обычно в таких случаях я болтаюсь на грани между болен и здоров, то в этот раз разболелся всерьез. В субботу был сильный насморк, а вчера полезла вверх температура, и, судя по всему, шел какой-то воспалительный процесс. Сегодня, наоборот, чувство какого-то внутреннего холода. Из-за этого вчера почти весь день прошел мимо. Да и сегодня тоже как-то ни на чем не могу сосредоточиться.
А еще разозлила некая Эвелина Странная, зачем-то зашедшая на мою страницу ВК. Она считает себя ЛИИ-ЛВЭФ, но при этом озвучивает гаммийско-ускорительские позиции, аналогичные тем, которое в свое время высказывала Harriet Specter aka HH. Терпеть не могу подобное! И теперь думаю, что сделать: забанить сразу или промолчать, в надежде, что сама сбежит.

Отличный день

4X_Pro
На удивление сегодня получился отличный день! Проспал очень допоздна, а встав, долго думал, что лучше сделать — досмотреть вебинар про протокол IPv6 или отправиться на прогулку в Измайловский парк. В итоге решил, что погода может поменяться, а вебинар никуда не денется, и выбрал второе. Решил дойти до острова на Серебряно-Виноградном пруде, на котором не бывал со злополучного 2013 года. В парке замечательно! Золотая осень в самом разгаре. Сделал по дороге несколько фотографий деревьев, потом — поснимал на самом острове. Обратно тоже решил идти пешком, в результате в сумме прошагал целых 12 км, в результате чего довольно ощутимо устал.
Вечером объяснял отцу, который купил новый телефон, как пользоваться Android и перенес ему контакты со старого. (Кстати, сделать это оказалось не так-то просто.) Потом прошел несколько Clash of Code и поднялся с 127 до 61 места. Причем очень легко, голова соображала просто супер! Затем поиграл в World of Tanks и выполнил дневную норму в 5 безошибочных заездов на Клавогонках.
Не успел только две вещи: досмотреть-таки этот вебинар, и написать пару заметок в другие разделы своего мультиблога (уже который раз это откладываю).

Малоинтересный период жизни

4X_Pro
Опять не успеваю писать в блог. Впрочем, слишком поздно встаю, и из-за этого вообще много чего не успеваю. Да еще осень и сокращение светового дня давит на психику… К тому же до вчерашнего дня ничего особо интересного не происходило. Тренируюсь то в Клавогонках (и там довел среднюю скорость в безошибочном режиме до 399 знаков/минуту), то в Clash of Code, где поднялся было до 90 места, но после пары весьма эпичных промахов «отъехал» до 140 места, и только сегодня немного отыгрался. Обнаружил интересную закономерность: если пытаться идти на Клавогонки сразу после CodinGame или наоборот, резльутаты получаются в разы хуже. Видимо, задействуются какие-то взаимоисключающие области мозга.
Пожалуй, исключением был только весьма активный диалог с Миком в ЖЖ, по итогам которого я несколько прояснил свою позицию про то, что такое «хорошее взросление» и «плохое взросление», о чем, наверное, сделаю скоро запись в мировоззренческий раздел. (Эх, сколько же у меня задуманного, но недописанного накопилось! Только вот мотивации сесть и дописать мало.)
Вчера после достаточно долгого сидения дома выбрался в Измайловский парк, к Лебедянскому пруду. Сделал там фотографию почти с той же точки, что и ту, которая долгое время была у меня заставкой на рабочем столе. Но поскольку снимал осенью, а не в яркий слонечный день, по атмосфере новая фотография получилась совсем иной.
Сегодня встал очень поздно, проспав более десяти часов. И за остаток дня толком ничего не успел, а вечером сходили с Tellой на фильм «Тайна дома с часами». Фильм мне очень понравился, пожалуй, один из лучших, что я смотрел за последнее время. Возможно, потому, что в нем поднимается одна из главных тем третьего уровня развития личности — поиск себя и своих внутренних ресурсов.
Еще в последнее время уже второй раз пишут с вопросами про подключение Google Pay. Дело в том, что год назад я опубликовал статью про то, как это делается. Но описал там только настройки на client-side, так как в серверной части все зависит от используемой CMS и платежного шлюза. Тогда надеялся, что буду одним из первых, написавших на эту тему, и вылезу в ТОП.  И теперь мне пишут то по поводу OpenCart, то по поводу Joomla, но я-то ни с тем, ни с другим дела почти не имел. Плюс, подразобравшись более детально в этой теме, понял, что небольшим магазинам нет смысла настраивать его непосредственно у себя на сайте вообще, а проще использовать агрегатора платежей. Но вот объяснять это каждый раз как-то напрягает…

Еще одна встреча по настольным играм

4X_Pro
В четверг долго думал, как лучше поступить: съездить последний раз в этом году на дачу или отправиться в субботу на настольные игры. По-хорошему, первый вариант был бы правильнее. Но перспектива холодной ночевки как-то не радовала, да и несколько дней не очень быстрого Интернета — тоже. Поэтому остался, несмотря на то, что из-за этого год получился без послденего заезда и связанных с ним размышлений и своего рода подведения итогов.
А настолки прошли как-то неоднозначно. Сначала разок сыграли в «Пес попутал». Впервые видел эту игру. Она чем-то похожа на «Кондотьеров» по игровому процессу, но, на мой взгляд, не столь захватывающая. Занял там второе место, причем в результате довольно жесткой борьбы, собрал 7 объектов, тогда как лидер — 8. Потом играли в «японский бенг», но вот в него я сегодня играл на удивление плохо, делал много явных ляпов. Потом сыграли пару конов в «Средневековую академию». Вот там я реализовал ту стратегию, которую продумывал с прошлой встречи. И результат не заставил себя ждать: первое место в первом кону, и второе — во втором. Хотя там я тоже пару раз сделал пару явных ляпов, дважды набрав на некоторых раздачах по 4 из 5 карт одной масти.  Но сумел использовать их в свою пользу. Только вот на втором кону никак не мог определиться между финансами и драконоборчеством, вкладывал и туда, и туда понемногу, и в результате на финансах оказался предпоследним (-5 очков), а на драконе — 3-ьим (всего 4 очка).
А потом сыграли в «Бэнг» обычный, но там меня вынесли на первом же круге (как-то там на удивление мало и карт, и жизней дается), еще до того, как до меня дошел ход. Впрочем, потом игра затянулась, стало ясно, что придется расходиться, не доиграв, и в итоге признали ничью. И, надо сказать, вовремя это сделали: на МЦК мы с Н.П. пришли за две минуты до прибытия последнего поезда, а Н.П. потом еще пришлось бежать на метро. Но в целом я доволен в эмоциональном плане, только не понимаю, что со мной происходило, почему вдруг столько ошибок, хотя вроде бы даже выспался и утром был бодрый (правда, потом ехал почти час в трамвае с плохой вентиляцией, от чего начала болеть голова).
Более того, уже ночью, придя домой, сумел показать неплохие результаты и в Code Clash на Codingame.

Терлецкий парк и размышления о погоне за признанием

4X_Pro
Сегодня, воспользовавшись кратковременным улучшением погоды, выбрался прогулятся в Терлецкий парк после почти недели безвылазного сидения дома. Обычно я хожу туда тогда, когда времени на большую прогулку нет, делаю круг вдоль Первого и Декоративного прудов и возвращаюсь домой. Но сегодня торопиться было некуда, поэтому обошел почти весь парк целиком. Прошел сначала, как обычно, к Первому пруду, от него — к Четвертому (на современных картах он называется Ольховым). Посмотрел на исток Черного ручья, затем вышел вообще к самой дальней точке парка — перекрестку Шоссе Энтузиастов и Свободного проспекта, потом вернулся к Третьему пруду, зашел на его остров (который когда-то был полуостровом). Постоял там над водой, поразмышлял о жизни, и затем отправился по дороге, которая считается остатками Владимирского тракта.
По дороге сделал несколько фотографий дубов с начинающими желтать листьями, нашел пару удачных ракурсов, с которых не снимал прежде, хотя думал, что уж где-где, а в Терлецкой дубраве точно знаю все. Еще в очередной раз подумал о том, что надо придти сюда как-нибудь на прогулку утром. От этой мысли перешел к тому, что с одной стороны, хотелось бы ходить на прогулки чаще, но с другой, стоит начать гулять несколько дней подряд, как тут же появляется паника по поводу «не успеваю!». (Или даже «не успеваааююю!», как сказала бы Kitsune. Впрочем, она со временем дружила, в отличие от меня.)
Причем не раз я говорил себе, что все, бросаю заниматься чем-то ради признания и результатов, и буду делать что-то только ради удовольствия, и тогда совершенно не важно будет, сколько времени у меня это займет. Но увы, все попытки приводили к тому, что проходила пара дней, и то, чем я занимался ради Познания и удовольствия, превращается в новый способ достижения результатов и признания. Или же просто переставало быть интересным. Например, весной я забросил типологии и занялся своим сайтом. Придумал почти десяток тем, по которым хотел бы высказаться, и все — сразу появилось новое направление, в котором захотелось получить признание — блоггерство. И сразу же начались переживания по поводу того, что тем много, а процесс написания идет как-то слишком уж медленно.
Или тот же самый CodinGame. Сначала я пришел туда, в основном, для получения опыта и расширения знаний в алгоритмике. Но стоило подняться до TOP-5000 в общем рейтинге, как тут же стал задумываться над тем, что надо войти в TOP-1000 и получить звание «Вавилонская башня», которое дают за решение задач на 15 разных языках программирования. Сегодня, кстати, сделал еще шаг в этом направлении: решил одну задачу middle-сложности на Java, которая стала 12 по счету языком. Причем, как всегда, не обошлось без невнимательности. Задача была на подсчет количества возможных путей в лабиринте. Алгоритм я сделал быстро (он похож на тот, который летом делал для Call of Ctulu), но на больших объемах данных не укладывался в отведенное время. Часа два ломал голову, пытаясь понять, что там можно закешировать и оптимизировать. А потом заметил, что в условии скзаано, что движение по лабиринут возможно только вправо и вниз, что исключало множество путей. После этого тут же все тесты были пройдены.
И даже попытку устроить себе период ограниченного доступа в Интернет только из метро/МЦК, про что писал недавно, тоже стал воспринимать как еще один нетривиальный способ попытаться получить общественное внимание.

Замедление жизни

4X_Pro
В последние дни наконец-то появилась возможность посидеть дома, растолкать все ненужные дела, и замедлить темп жизни до приемлемого. В результате сейчас успеваю в день примерно 80% из того, чем хотел бы заняться, и это, по моим меркам, весьма высокий показатель. Но все равно очень много времени уходит на переключение между разными видами деятельности. Не могу просто взять закончить одно и тут же сесть за другое (причем касается это не только серьезных дел, но и развлечений), обязательно какой-то период буду заниматься непойми чем. Еще никак не получается начать ложиться и вставать раньше. Даже если удается выключить компьютер до трех часов ночи, все равно как-то так получается, что либо ложусь спать в 4:30, либо, даже если и ложусь раньше, уснуть все равно не могу.
Но даже такой высокий показатель не дает особого чувства удовлетворенности жизнью. Точнее, дает на короткие моменты, например, когда решение на CodinGame проходит все тесты, или выкладываю дописанную заметку, оно, конечно, появляется. Но вот от самого процесса — нет. Удовлетворенность от самого процесса с полным вовлечением в здесь и сейчас приносят разве что старые компьютерные игры и иногда поездки в новые места (как, например, прогулка в Строгино или поездка в Переславль). Интересно, с чем это связано? Были ли игры тогда объективно лучше или же просто я, играя в них, возвращаюсь к тому себе, каким был в 1990-х годах, до всех жизненных разочарований: Декабрьской Трагедии, Великого излома, Черной Вести и прочих? Или просто старые игры ориентированы на третий уровень ТУАИ, который у меня в ценностях (где из-за отсутствия возможности сохраняться приходилось регулярно повторять прохождение одного и того же участка и максимально совершенствоваться, чтобы дойти до конца), а более поздние — на 4, 5, 6?
Еще в последнее время много задумываюсь над вопросом: чем я отличаюсь от тех людей, которых заметили? Возникло целое множество версий:
  1. разбросанность между кучей направлений, тогда как те, у кого есть результат в виде признания, концентрируются на чем-то одном;
  2. более быстрым темпом жизни и тратой жизненных ресурсов, из-за которого они в единицу времени успевают делать гораздо больше чем я (пусть и ценой комфорта и качества жизни). Образно говоря, они горят, я — тлею.
  3. более низким уровнем жизненной энергии, и выносливостью на всех трех уровнях: физическом, эмоциональном, интеллектуальном. Я все же достаточно быстро выдыхаюсь, говорю «все, не могу больше» и на неделю переключаюсь на что-то совсем другое, они продолжают «пахать» как проклятые и получают результат в разы раньше, чем я.
  4. слишком высоким уровнем неуверенности, когда надо пробовать что-то новое (сказывается C-тип по DISC ).
  5. на самом деле дело не во мне, а просто те, кого заметили, активно вкладывались в раскрутку.
  6. известность на самом деле вообще своего рода лотерея: есть множество людей, которые делают примерно одно и то же, но везет быть замеченными только части из них (например, сделанное ими попалось на глаза кому-то из уже раскрученных).
Но какая из них истинна — для меня пока так и остается загадкой…

Страницы:
Задать вопрос

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