![Портрет 4X_Pro](/s/4xpro/portrait4.jpg)
Был в Сети 27 июл. 2024 г., 06:24
Кратко о себе: Web-разработчик. Пишу на PHP, Python, JavaScript. Знаю Ruby и Go, со студенческих времён более-менее помню C и asm. Сейчас специализируюсь на ускорении загрузки сайтов и разработке ботов для Telegram. Linuxоид (использую Debian+LXDE). Сторонник IndieWeb.
- Перово, Москва, Россия
- me@4xpro.ru
- x4_pro
- XXXXPro
Новости сайта в Telegram
t.me/4x_proЛог жизни
Лог моей жизни, где я фиксирую наиболее эмоционально значимые для меня события и текущее настроение. Является продолжением блога, который я вел в ЖЖ с ноября 2004 по апрель 2018 года.
Снова болею
![](/f/av/4.jpg)
Всё-таки я заболел. Температура 38 °C и выше, ничего делать нормально не могу и злюсь на то, что время проходит напрасно. Вчера попытался было писать заметку для сайта с мобильника, но безрезультатно. Точнее, всё застряло на том, что нужно скопировать и отредактировать кусок текста со своего второго сайта, а с мобильника делать это не очень-то удобно. Сейчас попытался сесть за компьютер, но сил хватило только на то, чтобы проголосовать.
Прогулка и размышления наедине с собой
![](/f/av/4.jpg)
Выбрался сегодня на длинную прогулку в Измайловский парк. В отличие от недавней прогулки в Терлецкий, которая почти ничем не запомнилась, эта получилась в лучших традициях Истинных времён — с одной стороны, созерцание ранней весны, с другой — время, проведённое в размышлениях наедине с собой.
Изначально я вообще рассматривал возможность отправиться в Кусково. Но потом подумал, что сейчас, наверное, там ещё не сошёл снег и не освободился ото льда пруд, поэтому выбираться туда рановато, лучше где-нибудь на следующей неделе. Поэтому отправился всё же в Измайловский. Прошёл от Новогиреевской улице по косой аллее к пасеке, затем выбрался к Серебрянке — тому месту, где когда-то был мост, но потом его смыло. Его до сих пор не восстановили. Прошёл оттуда немного вверх по течению, сфотографировал несколько раз реку, потом развернулся, и пошёл в другую сторону — там есть ещё два моста. По второму из них всё же перешёл на другой берег, побродил немного там (в частности, прошёл по туевой аллее), и отправился к второму Декоративному и Красному прудам. А от Красного пруда решил возвращаться домой через лес. К этому времени солнце уже пошло к закату, и снег стал оранжево-фиолетовым: оранжевые отблески от солнечных лучей и фиолетово-синие тени там, куда лучи не попадают. Жаль, не пришло в голову это сфотографировать!
Пока шёл к пасеке, задался вопросом, чего же я хочу от жизни на самом деле. Потом стал крутить в голове заметку о том, насколько каждый может быть собой, которая вызревает у меня в голове уже два месяца, но всё никак не соберусь сесть и начать её писать. И только уйдя на другой берег Серебрянки, вдруг получил ответ, чего же я хочу на самом деле. Ответ достаточно ожидаемый: жить в мире, где оценка (в широком смысле этого слова) даётся только через аспекты БЛ, ЧИ и ЧЭ (и, может быть, БИ и БС как второстепенные), но из оценивания исключены БЭ, ЧС и ЧЛ. Но увы, если раньше эти аспекты были важны только в оффлайновом мире, но без них прекрасно можно было обходиться в Сети, то сейчас это не так, и надежд на какое-либо улучшение не видно…
Изначально я вообще рассматривал возможность отправиться в Кусково. Но потом подумал, что сейчас, наверное, там ещё не сошёл снег и не освободился ото льда пруд, поэтому выбираться туда рановато, лучше где-нибудь на следующей неделе. Поэтому отправился всё же в Измайловский. Прошёл от Новогиреевской улице по косой аллее к пасеке, затем выбрался к Серебрянке — тому месту, где когда-то был мост, но потом его смыло. Его до сих пор не восстановили. Прошёл оттуда немного вверх по течению, сфотографировал несколько раз реку, потом развернулся, и пошёл в другую сторону — там есть ещё два моста. По второму из них всё же перешёл на другой берег, побродил немного там (в частности, прошёл по туевой аллее), и отправился к второму Декоративному и Красному прудам. А от Красного пруда решил возвращаться домой через лес. К этому времени солнце уже пошло к закату, и снег стал оранжево-фиолетовым: оранжевые отблески от солнечных лучей и фиолетово-синие тени там, куда лучи не попадают. Жаль, не пришло в голову это сфотографировать!
Пока шёл к пасеке, задался вопросом, чего же я хочу от жизни на самом деле. Потом стал крутить в голове заметку о том, насколько каждый может быть собой, которая вызревает у меня в голове уже два месяца, но всё никак не соберусь сесть и начать её писать. И только уйдя на другой берег Серебрянки, вдруг получил ответ, чего же я хочу на самом деле. Ответ достаточно ожидаемый: жить в мире, где оценка (в широком смысле этого слова) даётся только через аспекты БЛ, ЧИ и ЧЭ (и, может быть, БИ и БС как второстепенные), но из оценивания исключены БЭ, ЧС и ЧЛ. Но увы, если раньше эти аспекты были важны только в оффлайновом мире, но без них прекрасно можно было обходиться в Сети, то сейчас это не так, и надежд на какое-либо улучшение не видно…
И ещё три дня вне дома
![](/f/av/4.jpg)
Опять несколько дней провёл вне дома. В субботу сначала отправился на короткую прогулку в Терлецкий парк, а вечером — на настолки. Прогулка получилось не столь короткой, как планировал изначально. Во время неё пытался максимально сосредоточиться на здесь и сейчас, но периодически «улетал» в свои мысли, особенно когда уже шёл обратно.
На настолках тоже ничего интересного не было. Причём получилось так: я никак не мог собраться и приехал достаточно поздно (около 20 часов), но играть ещё толком не начинали. И вообще, успели сыграть только два раза в «Меч самурая», и всё. Потом хотели пойти в ближайший KFC и продолжить игру там, но что-то слишком уж долго собирались, и в итоге я решил уехать домой.
В воскресенье снова сходили с отцом на лыжах. Я повторил тот же результат, что показал в пятницу. И была даже идея поехать на третий круг, но тогда нужно было первые два ехать спокойнее. В общем, результаты тренировки сказываются.
Но из-за того, что слишком мало сижу за компьютером, накапливается внутренняя напряжённость из-за чувства, что опять отстаю от жизни. Поэтому сегодня даже возникла некоторая внутренняя борьба: с одной стороны, хотелось не упускать весну и съездить либо в Кусково, либо куда-нибудь в Нескучный сад или на Воробьевы горы, с другой — отсидеться дома, заняться наконец-то мобильным сообществом, поиграть в StarCraft, в общем, всем тем, что называется «догнать жизнь».
На настолках тоже ничего интересного не было. Причём получилось так: я никак не мог собраться и приехал достаточно поздно (около 20 часов), но играть ещё толком не начинали. И вообще, успели сыграть только два раза в «Меч самурая», и всё. Потом хотели пойти в ближайший KFC и продолжить игру там, но что-то слишком уж долго собирались, и в итоге я решил уехать домой.
В воскресенье снова сходили с отцом на лыжах. Я повторил тот же результат, что показал в пятницу. И была даже идея поехать на третий круг, но тогда нужно было первые два ехать спокойнее. В общем, результаты тренировки сказываются.
Но из-за того, что слишком мало сижу за компьютером, накапливается внутренняя напряжённость из-за чувства, что опять отстаю от жизни. Поэтому сегодня даже возникла некоторая внутренняя борьба: с одной стороны, хотелось не упускать весну и съездить либо в Кусково, либо куда-нибудь в Нескучный сад или на Воробьевы горы, с другой — отсидеться дома, заняться наконец-то мобильным сообществом, поиграть в StarCraft, в общем, всем тем, что называется «догнать жизнь».
Непонятное состояние
![](/f/av/4.jpg)
В последние дни со мной творится что-то непонятное. Сплю по 6–6.5 часов в сутки, потом просто выкидывает из сна без видимых причин. Как это ни странно, голова более-менее работает, нет того ощущения «шестерёнки в мозге еле скрипят», которое обычно бывает при недосыпе. Но постоянно испытываю ощущение «не успеваю, ничего не успеваю». И физически почти всё время чувствую сильную усталость, и Welltory даже сразу после пробуждения показывает меньше 60% энергии (хотя стресс и здоровье в норме). Никак не могу понять, то ли со мной что-то не так, то ли просто организм на смену сезонов так оперируе реагирует и более раннее начало светового дня. Или же это просто результат слишком большой затраты ресурсов на разработку мобильного сообщества...
Хаотичная активность последних дней
![](/f/av/4.jpg)
Как всегда, после дня активного продвижения вперёд наступил спад эффективности. Вместо этого занимаюсь какой-то хаотичной активностью. В среду вместе с Tellой съездил на встречу с RauRом. Сначала общались очень классно и позитивно, но потом RauRу не понравилось, что я его считаю на самом деле СЛИ-«Габеном» (и зачем тогда было спрашивать версию вообще?). Ну и плюс, как выяснилось, непонятно, чего он вообще хочет от встреч.
В четверг хотел было вернуться к работе над движком сообщества, но получилось только подобрать несколько вариантов цветовой гаммы с помощью MyColor.Space и нарисовать прототип главного экрана карандашом в блокноте. Также решил вопрос, как быть с репостами: понял, что нет смысла делать локальные репосты вообще, так как движок предназначен для небольших сообществ без персонализированной ленты в принципе. (Только возможность подписыаться уведомления о новых записях по пользователю/хештегу). Вот когда вернусь к работе над MLCE, там всё будет иначе…
Сегодня ходили с отцом на лыжах. Снова прибавил в скорости! Но тут сказывается обледенелось лыжни: и толкаясь двумя палками, и идя коньковым ходом, легко получить мощный прирост в скорости. Правда, из-за такого темпа совершенно не было ресурса на созерцание природы, за исключением одного момента возле Красного пруда.
Остаток дня прошёл мимо. Пытался заняться frontend-частью сообщества, но почти без толку. Даже шрифт со значками на каком-нибудь Fontello не сделал. Зато наткнулся на сайт LocalFirstWeb.dev/. Оказывается, не я один являюсь сторонником того, что приложения должны уметь работать в оффлайне. Правда, у меня причина другая, чем у большинства: нормально могу сосредоточиться только с выключенным Интернетом. Что ж, будем надеяться эта тенденция победит, по крайней мере, в среде технически продвинутых людей.
Ещё прошёл ту карту в Starcraft, на которой застрял полгода назад, и следующую за ней. Вернее, даже не застрял, а просто как-то перестал в него играть (отчасти из-за возникших проблем с Wine, отчасти из-за увлечения игрой Sir Brante, отчасти просто из-за уплотнения жизни).
В четверг хотел было вернуться к работе над движком сообщества, но получилось только подобрать несколько вариантов цветовой гаммы с помощью MyColor.Space и нарисовать прототип главного экрана карандашом в блокноте. Также решил вопрос, как быть с репостами: понял, что нет смысла делать локальные репосты вообще, так как движок предназначен для небольших сообществ без персонализированной ленты в принципе. (Только возможность подписыаться уведомления о новых записях по пользователю/хештегу). Вот когда вернусь к работе над MLCE, там всё будет иначе…
Сегодня ходили с отцом на лыжах. Снова прибавил в скорости! Но тут сказывается обледенелось лыжни: и толкаясь двумя палками, и идя коньковым ходом, легко получить мощный прирост в скорости. Правда, из-за такого темпа совершенно не было ресурса на созерцание природы, за исключением одного момента возле Красного пруда.
Остаток дня прошёл мимо. Пытался заняться frontend-частью сообщества, но почти без толку. Даже шрифт со значками на каком-нибудь Fontello не сделал. Зато наткнулся на сайт LocalFirstWeb.dev/. Оказывается, не я один являюсь сторонником того, что приложения должны уметь работать в оффлайне. Правда, у меня причина другая, чем у большинства: нормально могу сосредоточиться только с выключенным Интернетом. Что ж, будем надеяться эта тенденция победит, по крайней мере, в среде технически продвинутых людей.
Ещё прошёл ту карту в Starcraft, на которой застрял полгода назад, и следующую за ней. Вернее, даже не застрял, а просто как-то перестал в него играть (отчасти из-за возникших проблем с Wine, отчасти из-за увлечения игрой Sir Brante, отчасти просто из-за уплотнения жизни).
Большой шаг в работе над движком мобильного сообщества
![](/f/av/4.jpg)
Сегодня получился очень результативный день в плане работы над движком мобильного сообщества! Сам удивляюсь, что столько можно сделать всего за день, причём ещё кучу времени потерял на то, чтобы обеспечить проброс порта с локального компьютера на сервер с добавлением HTTPS. Перепробовал Tailscape, port forwarding в Visual Studio Code, но у каждого нашлись недостатки. В итоге решил вопрос своими силами, сделав проброс на VDS, где крутится сайт идеалистов, и там получил с помощью certbot сертификат для одного из поддоменов, который и использую для тестирования.
Фактически, базовые функции (регистрация/вход/выход пользователя, написание и показ сообщений и ответов) готовы. Осталось добавить поиск сообщений и удаление, и можно будет переключиться на frontend-часть. А уже потом добавлять лайки, хештеги, профили пользователя и тому подобное.
Видимо, сказалось, что перед этим неделю обдумывал всё, когда неделю жил на той квартире, хотя при этом не написал ни единой строчки кода.
Фактически, базовые функции (регистрация/вход/выход пользователя, написание и показ сообщений и ответов) готовы. Осталось добавить поиск сообщений и удаление, и можно будет переключиться на frontend-часть. А уже потом добавлять лайки, хештеги, профили пользователя и тому подобное.
Видимо, сказалось, что перед этим неделю обдумывал всё, когда неделю жил на той квартире, хотя при этом не написал ни единой строчки кода.
Лишился трансляции из Instagram
![](/f/av/4.jpg)
Полез было на IFTTT, чтобы выяснить, что с трансляцией из Instagram, но долго не мог вспомнить ни пароль, ни адрес регистрации. Только приехав сюда, зашёл с этого компа, и обнаружил, что тут до сих пор залогинен. Стал разбираться, в чём дело, и обнаружилось, что IFTTT пошёл по пути Zappier — тоже сделал произвольные HTTP-запросы платными. Так что теперь надо либо переделывать систему импорта, либо просто забить на Instagram, создать фотораздел прямо тут, и публиковать в нём. Всё равно в Instagram мои записи регулярно просматривает всего человек пять…
Но вообще, эта ситуация в очередной раз показывает, как плохо зависеть от сторонних сервисов.
Но вообще, эта ситуация в очередной раз показывает, как плохо зависеть от сторонних сервисов.
Большая прогулка и окончание слишком активной недели
![](/f/av/4.jpg)
Из десяти последних дней полностью дома провёл только два: позапрошлую субботу и прошлую пятницу. Для меня это слишком! Сегодня вернулся в Москву, буду сидеть дома и приходить в себя… Впрочем, полностью не получится: в среду всё же договорился пересечься с RauRом по поводу соционических встреч.
Зато вчера выбрался просто на потрясающую прогулку по северо-западной части Посада. Вышел к Клязьме, и оказалось, что почти упустил ледоход: река была уже совершенно чистой, только иногда проплывали небольшие льдинки. Потом прошёл в какой-то новый район, где идёт активная коттеджная застройка. Причём в некоторых местах коттеджи полностью одинаковые, из-за чего складывается впечатление, будто бы находишься не в Посаде, а в каком-нибудь американском пригороде.
Затем вышел к Филимоновскому карьеру. Но там сейчас ничего интересного нет, он пока ещё весь покрыт льдом и снегом.
А оттуда — вышел в собственно Филимоново, к тем самым большим домам, в которых изначально и хотел поселиться, но высшие силы решили иначе. Как и в первый раз, то место снова дало какое-то ощущение радостности, приподнятого настроения. Но теперь обратил внимание, насколько там более шумно, оживлённо и многолюдно по сравнению с тем местом, где живу сейчас. Если сравнивать с Москвой, то разница примерно такая же, как между Перово в районе Владимирских улиц и Зелёным проспектом в Новогиреево. Так что, может быть, всё получилось и к лучшему…
В целом прогулка получилась прямо в духе Истинных времён, когда я уходил из дома на полдня, проходил огромные расстояния (и в этот раз набегал более 10 тысяч шагов). Вернулся домой прямо каким-то наполненным весной, впечатлениями и солнечным светом. Устал жутко, но очень доволен, что выбрался. Хотел выложить две серии фото с этой прогулки, но обнаружил, что перестала работать трансляция из Instagram. Поэтому и описал её в этом сообщении.
Зато вчера выбрался просто на потрясающую прогулку по северо-западной части Посада. Вышел к Клязьме, и оказалось, что почти упустил ледоход: река была уже совершенно чистой, только иногда проплывали небольшие льдинки. Потом прошёл в какой-то новый район, где идёт активная коттеджная застройка. Причём в некоторых местах коттеджи полностью одинаковые, из-за чего складывается впечатление, будто бы находишься не в Посаде, а в каком-нибудь американском пригороде.
Затем вышел к Филимоновскому карьеру. Но там сейчас ничего интересного нет, он пока ещё весь покрыт льдом и снегом.
А оттуда — вышел в собственно Филимоново, к тем самым большим домам, в которых изначально и хотел поселиться, но высшие силы решили иначе. Как и в первый раз, то место снова дало какое-то ощущение радостности, приподнятого настроения. Но теперь обратил внимание, насколько там более шумно, оживлённо и многолюдно по сравнению с тем местом, где живу сейчас. Если сравнивать с Москвой, то разница примерно такая же, как между Перово в районе Владимирских улиц и Зелёным проспектом в Новогиреево. Так что, может быть, всё получилось и к лучшему…
В целом прогулка получилась прямо в духе Истинных времён, когда я уходил из дома на полдня, проходил огромные расстояния (и в этот раз набегал более 10 тысяч шагов). Вернулся домой прямо каким-то наполненным весной, впечатлениями и солнечным светом. Устал жутко, но очень доволен, что выбрался. Хотел выложить две серии фото с этой прогулки, но обнаружил, что перестала работать трансляция из Instagram. Поэтому и описал её в этом сообщении.
Когда избыток знаний тормозит разработку
![](/f/av/4.jpg)
Как уже писал, никак не получается вернуться к своим проектам. Ни доделать релиз IntB (а для этого — добавить поддержку PostgreSQL и SQLite и исправить кое-какие мелочи), ни вернуться к мобильному сообществу. Причём на последнем я застрял на проблеме избыточного выбора. Нужно реализовать простейшую задачу (выборка данных о сообщениях и их авторах, самый обычный LEFT JOIN по id), но в голове крутится целых 6 вариантов реализации (не считая неприемлемого — использования стороннего ORMа), и никак не могу определиться, какой лучше. Точнее даже так: вижу плюсы и минусы каждого, но никак не могу выбрать, чем пожертвовать: красотой и логичностью кода или возможностью выдернуть все данные одним запросом, а не несколькими.
Эх, вспоминаю, как всё просто было во времена IntB 2.x: там я в каждой таблицы для каждого столбца делал префикс с одинарным или двойным подчёркиванием (например, для пользователей все поля начинались на u_ или u__ в зависимости от того, может ли их менять сам пользователь, для сообщений — на p_), и по этому префиксу на стороне PHP поля было элементарно разделить (а также это защищало от одинаковых имён столбцов в одном запросе). Сейчас такое решение воспринимается как топорное и «студенческое». Но все те решения, которые воспринимаются как нормальные, имеют свои недостатки: либо нужно делать как минимум два запроса, либо где-то хранить список полей в самом классе, либо использовать attributes, которые появились только в PHP 8. Впрочем, пока я это писал, пришла в голову новая мысль: использовать Reflection и проверять с его помощью, в каком из классов есть соответствующее поле. Для простых случаев типа мобильного сообщества этого будет достаточно.
Эх, вспоминаю, как всё просто было во времена IntB 2.x: там я в каждой таблицы для каждого столбца делал префикс с одинарным или двойным подчёркиванием (например, для пользователей все поля начинались на u_ или u__ в зависимости от того, может ли их менять сам пользователь, для сообщений — на p_), и по этому префиксу на стороне PHP поля было элементарно разделить (а также это защищало от одинаковых имён столбцов в одном запросе). Сейчас такое решение воспринимается как топорное и «студенческое». Но все те решения, которые воспринимаются как нормальные, имеют свои недостатки: либо нужно делать как минимум два запроса, либо где-то хранить список полей в самом классе, либо использовать attributes, которые появились только в PHP 8. Впрочем, пока я это писал, пришла в голову новая мысль: использовать Reflection и проверять с его помощью, в каком из классов есть соответствующее поле. Для простых случаев типа мобильного сообщества этого будет достаточно.
Результативность повседневности
![](/f/av/4.jpg)
Сегодня впервые с воскресенья просидел дома почти безвылазно. Всё-таки каждый день куда-то выбираться для меня — это слишком. Догонял жизнь, приходил в себя. В целом день получился довольно результативный (плюс ещё встал рано по своим меркам), но занимался, в основном, повседневно-бытовыми вещами, а также настройкой одного из компьютеров. Хотел ещё поиграть в StarCraft или Prince of Persia 2, но так и не успел. А вот вернуться к своим проектам не получается. Но об этом — в следующем сообщении.
Страницы:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134