Портрет 4X_Pro
Был в Сети 21 дек. 2024 г., 14:10
Мультиблог
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
Вот и всё, до Нового года осталось меньше 6 часов. Ещё немного и все неприятности года с симметричным номером уйдут в историю! Пришёл отец, накрыли стол (как обычно, он уделяет ему больше внимания, чем требуется). Елку я включил в этот раз ещё в полдень. Присутствует ощущение гармонии и спокойствия, но как-то не верится, что всё, дожили до конца года! Но и ощущения «НГ подкрался незаметно» тоже нет. Просто всё идёт так, как должно идти.

Официальные итоги 2020 года

4X_Pro
Подходит к концу очень необычный и непростой 2020 год. Как сказала про него goblincat, это год, который никого не оставит прежним. Увы, это верно и про меня. Поэтому я несколько поменял формат итогов, и вместо таблицы из 10 хороших и плохих фактов напишу просто о том, что в этом году было для меня значимым.
Для начала общее впечатление о годе. Где-то до 9 марта он воспринимался как в целом достаточно обыкновенный. Когда началось падение рынка, первая волна эпидемии и самоизоляция, впечатление было двояким. С одной стороны — страх «ой, что же будет» (а предрекали многое, вплоть до повторения кошмара 90-х), с другой — происходящее казалось каким-то приключением, квестом «выжить месяц не выходя из дома, а потом сбежать на дачу». Потом был очень дождливый май на даче, когда казалось, что в природе что-то поломалось и теперь осень будет длиться вечно, и только изредка на неделю сменяться каким-то другим сезоном. Но вот наконец дожди закончились, страх перед заражением тоже ослабел, и началось возвращение к нормальной жизни с прогулками на природе. И тут новый неожиданный поворот — друзья вступили в контакт с отцом и начали приезжать на дачу. Затем — испытания конца августа, эйфория, когда всё осталось позади, возвращение в город с большими надеждами на новую жизнь. Увы, очень скоро надежды потускнели и посыпалась масса новых проблем. И период с октября по декабрь войдёт в мою жизнь как один из самых тяжёлых. И только в середине декабря жизнь стала понемногу гармонизироваться. И даже «старость года» и зимнее солнцестояние прошли не так тяжело, как обычно. А ещё в последний день года выяснилось, что несмотря на все меры безопасности, я всё же переболел COVID-19, но в лёгкой форме.
Теперь о главном — о самореализации и пусках. Полноценных новых сайтов я в этом году не запускал. Но зато создал собственный канал на Дзен в надежде на то, что это позволит нести свои идеи в массы более эффективно. Кроме того, с подачи Tellы материалы там стали более практически ориентированными и конкретными, а не просто проповедями в духе «ограничьте материальные желания, откажитесь от амбиций, умейте довольствоваться малым и будет вам счастье», как это было раньше. Кроме того, я создал небольшой, но как оказалось, весьма востребованный проект VKPPh — броузерное расширение для выделения приватных профилей ВКонтакте. На данный момент 1410 загрузок, причём это только из Opera Addons — далеко не самого популярного броузера. К сожалению, добавить его в Chrome Store не представляется возможным ввиду того, что регистрация там платная. Вторым крупным проектом стала новая версия SiteKnockerBot, для которого я с нуля переписал «простукивающую» сайты часть на языке Go с активным использованием параллелизма, что дало возможность увеличить общее количество проверяемых сайтов до 100 тысяч за цикл. И, наконец, ещё одна набольшая поделка — это транслитератор для URL, который я сделал, в основном, для того, чтобы попробовать создание бессерверных сервисов на базе облачной инфраструктуры Amazon.
Также сделано немало шагов по другому направлению самореализации — ускорению загрузки сайтов. За этот год я сделал три проекта, связанных с ускорением сторонних сайтов, причём один из них, весьма нагруженный, верстал с нуля, не используя готовый шаблон CMS. И в процессе не только научился новым трюкам, которые заодно и в блоге описал, но и добился высоких показателей в Google Page Speed для весьма плотно наполненного сайта. И теперь могу это использовать как аргумент против тех, кто вещает на тему того, что заниматься этими показателями бесполезно, всё равно у сколь-нибудь навороченных сайтов они будут низкими.
В третьем направлении — децентрализованных социальных сетях, увы, прогресса в виде написанного кода нет. Единственный плюс — это наконец-то сложилось целостное видение, что я хочу получить в итоге. А также понимание, что я вполне могу реализовать это на Intellect Board, а не писать новый движок с нуля для этих целей. И самое главное, понимание, как это сделать, возникшее с подачи Xialtal и Yuri.
Ещё в этом году было много необычного опыта. Сначала — самоизоляция, когда я просидел дома 47 дней. Впрочем, конкретно мою жизнь она изменила не сильно. По сути, единственное, что изменилось — не было возможности сходить погулять. Зато была возможность порадоваться тому, что всех заставили жить так, как я мечтал в 2000-х годах. Потом — целое лето на даче безвылазно, ставшее самым долгим периодом вне дома — 112 дней. И, наконец, возможность пожить одному в конце года.
В этом году я также сделал небольшой апгрейд ноутбука. Нарастил оперативную память до 12 Гб и поставил в него второй SSD-диск. Теперь могу не экономить так строго место при установке программ для Linux. И вообще, не торопиться с покупкой нового компьютера (хотя видеокарты несколько не хватает для игр).
С точки зрения саморазвития самым большим шагом вперёд было прохождение курса по теории игр на Coursera. Я задумал это ещё два года назад, но всё откладывал и откладывал. Кроме этого, прошёл ещё пару курсов от Hexlet по Git и Node.Js, но там давались только самые основы, я ожидал большего. Также большое влияние на меня оказал просмотр ретрита о любящей доброте. Под его влиянием я снова вернулся к регулярным медитациям.
А вот новые места в этом году посмотреть почти не удалось. Исключением были только поездка в ту часть Павловского Посада, которую я не видел прежде, и поездка к озеру Светлое. Зато город стал для меня более связным из-за того, что я поездил по нему на электросамокате.
Зато ощутимо поменялся образ жизни. В самом начале года я повторил свой опыт с отключением Интернета, но на этот раз не на десять дней, а всего на пять. И тоже оказался очень доволен результатом: это даёт отличную разгрузку сознания и чувство сосредоточенности здесь и сейчас. Ещё было много нового опыта: во-первых, опыт безвылазного сидения дома в течение 47 дней. Оказалось, что даже для меня, человека домашнего, это не такое уж и простое испытание даже с Интернетом. И вообще, после трёх дней сидения дома работоспособность начинает падать, нужно всё же выбираться на прогулку на природу. Затем впервые прожил на даче практически всё лето: 112 дней. Но увы, такого скачка личной эффективности, как я ожидал, это не дало. Возможно, из-за того, что не было возможности уйти в оффлайн надолго или из-за постоянного присутствия отца. И, наконец, ещё одним необычным опытом стало то, что с ноября я живу один. А ещё случилось маленькое чудо: мне удалось наладить режим дня, теперь снова могу видеть утро!
В плане искательства халявы год был удачен тем, что выиграл 4000 бонусных баллов в «Активном гражданине», а также нашёл 2000 руб просто на улице.
А вот книг я в этом году прочёл гораздо меньше, чем хотел бы, всего около десятка. Самыми запоминающимися стали «7 навыков эффективных людей» Стивена Кови (я бы даже назвал её книгой года), «Диктатор» Снегова и «Страна утраченной эмпатии» Рощина.
В финансовом плане этот год можно назвать годом упущенных возможностей. Во-первых, крайне неудачная дата закупки акций — 21 февраля, за день до начала обвала рынка. Во-вторых, то, что я поторопился с продажей евро, и, отчасти, серебра. В третьих, что не решился сорвать долларовый вклад и вложить его в FXIT и SBSP. В-четвертых, что не решился сорвать ещё один рублёвый вклад и конвертировать его в облигации. В шестых, упустил возможность закупить серебро на Forex по цене $12 за унцию, которое потом, всего за четыре месяца, выросло до $27. И вообще, зря я поверил экспертам, которые с апреля до конца лета предреакли, что V-образного восстановления не будет, а придёт вторая волна кризиса, и не стал закупаться акциями даже на ту сумму, которая была в тот момент свободна. Но тем не менее, были и позитивные решения. Хоть я и поторопился с продажей серебра, прибыль от этого всё равно оказалась выше, чем у банковских вкладов. В марте я удачно сконвертировал два вклада в облигации в момент их подешевения и получил доходность около 7%. А суммарный прирост активов в цене оказался таким, что смог бы обеспечить мне прожиточный минимум на весь год. По акциям дивиденды составили 5.565%, но большей их частью я владею не полный год, а с февраля.
И по-прежнему мне не дают покоя два вопроса. Первый — это как быть талантливым одиночкой в современном Интернете, где отсутствие раскрутки — это риск остаться просто незамеченным, а её наличие — путь к коммерциализации (и последующей деградации из-за ориентации на требования рынка, а не внутренние критерии качества). Второй — это как воссоздать дух и стиль общения Старого Доброго Интернета на отдельно взятом домене второго уровня.
В общем, провожать этот год с проклятиями, как 2001 или 2013, я не буду, но и повторять бы не хотел.

Таки я переболел COVID-19!

4X_Pro
Пару недель назад выяснилось, что Tella перенесла COVID-19 то ли в октябре, то ли в ноябре. Узнав об этом, я предположил, что в конце ноября и начале декабря тоже мог им болеть, так как было довольно много подозрительных симптомов: и одышка, и учащённое сердцебиение, и просто уставал так, что под вечер еле стоял на ногах (хотя ничего толком не делал), и в мышцах ломило. Тогда я списывал это на усталость, недосып, сокращение светового дня и нервные перегрузки, так как ноябрь был просто кошмарным.
Когда я узнал про Tellу, сопоставив одно с другим, я решил, что вполне мог и сам переболеть COVIDом в легкой форме. Но пойти и сдать анализ так и не решался, и только пару дней назад DarLik уговорила меня это сделать. Хотя анализ можно сделать бесплатно, но для этого нужно было ехать куда-то достаточно далеко, в район ул. Молостовых, а взятие крови из вены я переношу очень тяжело. Плюс DarLik запугивала на тему того, что если я всё же не болел, то шансы заразиться в обычной поликлинике весьма высоки. В общем, уговорила меня на платную лабораторию рядом с домом.
И вот вчера я сходил и сдал анализ. Итог оказался предсказуемым: на антитела к COVID результат положительный. Но и тут не обошлось без неприятностей. Дело в том, что там была акция, где делался комплексный анализ крови на 9 показателей, в том числе и на антитела. Но не учёл одного: анализ на антитела только суммарный и качественный, без деления на IgM и IgG (т.е. ответ будет только «да/нет»). Мне пытались это объяснить, когда я пришёл в лабораторию, и что по-хорошему нужно заказать ещё один анализ на антитела. Но из-за недосыпа и стресса я соображал плохо, поэтому сначала подумал, что кровь придётся сдавать два раза и отказался.
Само взятие крови прошло тяжело, но на этот раз хотя бы без обморока. Очень понравилась внимательность сотрудников лаборатории: когда стала кружиться голова, сразу уложили на кушетку, поднесли нашатырь, воды и дали несколько минут отлежаться, хотя это застопорило очередь.
А сегодня утром результаты пришли на Email. Как я и ожидал, тест оказался положительным. Остальные показатели более-менее в норме, только эозинофилы, моноциты и цинк повышенные. И витамин D ниже нормы.
Но увы, вместо облегчения и радости у меня начались сомнения. Вдруг я переболел не в ноябре, как предполагалось изначально, а заболел всего неделю назад. (Там был момент, когда начал кашлять по ночам с каким-то противным бульканьем, хотя днём чувствую себя вполне нормально.) Ответ дало бы количественное соотношение IgM/IgG, но увы, его у меня нет.
Впрочем, в любом случае, выжду ещё пару недель, и смогу спокойно перемещаться по городу на метро и заражать окружающих недолеченным COVIDом, а не стоять в пробках в такси! Смешно, никогда не думал, что возможность ездить на метро может меня обрадовать, но тем не менее, это так!

Антиюзабилити и masked input

4X_Pro
Сегодня столкнулся с примером антиюзабилити. В банке потребовалось ввести СНИЛС. Как обычно, горе-разработчики вместо того, чтобы сделать стандартное поле ввода и пост-обработку на сервере, навесили скрипт для так называемого masked input. То есть в поле ввода сразу есть прочерки на месте цифр и дефисы, т.е. что-то вроде ___-___-___-__.
Но самое ужасное не это. А то, что если ввести несколько цифр и переключиться в другое окно (где у меня был скан СНИЛСа), содержимое поля полностью сбрасывается! Пришлось переносить окно окно на второй монитор, чтобы иметь возможность ввести нормально.
В общем, ругался долго. Когда успокоился, в очередной раз удивился человеческой глупости. Зачем делать эти masked input, если можно сделать обычное стандартное поле ввода input type="text" и пост-обработку на серверной стороне на случай, если пользователь введёт номера с дефисами или пробелами (на PHP это был бы обычный str_replace, даже regexpы бы не потребовались). А если уж очень хочется показать пользователю в красивой и удобной форме, что он ввёл, то под полем ввода сделать повторный вывод уже с дефисами. (Тем более, что на том сайте для редактирования СНИЛСа показывалось отдельный блок, где места было достаточно.) Кстати, это решило бы и проблему с вставкой из буфера обмена, которая на masked inputах попадается очень и очень часто.
Но к сожалению, одно из несовершенств нашего мира заключается в том, что решения использовать подобное принимают технически безграмотные менеджеры, которые просто увидели это на каком-то другом сайте, а сами разработчики либо не хотят, либо не могут донести до них то, что так делать не надо, и вместо этого просто реализуют то, что сказали. И в результате плохие решения множатся и множатся…

Первые итоги канала на Дзене

4X_Pro
Вчера прошла неделя с момента пуска канала, и Дзен впервые рассчитал его карму. Результаты вызвали у меня довольно противоречивые впечатления. С одной стороны — отличный показатель рейтинга: примерно 9000-ое место из 360 тыс. Если пересчитать в относительные показатели, то это выше 97.5% (если считать только каналы, не получившие статуса мастера). Да и CTR подрос за счёт тех, кто приходит к нам из социальных сетей — сейчас средний уже выше 5%.
С другой — показатели кармы канала оказались существенно ниже, чем я ожидал. Особенно удивили низкие показатели уникальности, качества. Уникальность там что, только по картинкам оценивается? У нас же все статьи — самописные. А ещё удивил показатель периодичности: мы за неделю пять статей опубликовали, а за это всего 8 баллов начислили из 20! Правда, я сделал ошибку, выложив первые три статьи в один день в надежде, что алгоритмы быстрее обучатся и быстрее начнут показывать статьи в выдаче. А уже потом, изучив опыт других авторов каналов, узнал, что это было не самым лучшим решением.
Но самым разочаровывающим было отсутствие комментариев. Прежде Дзен казался мне площадкой, где под каждую статью комментарии пишутся десятками, а то и сотнями. По крайней мере, такое впечатление складывалось по результатам просмотра статей, которые показвыались мне в ленте. А тут — ни одного за всю неделю…
И как всегда, есть ощущение, что дальше будет хуже. Потому что прежде мы выкладывали то, что написали заранее, но теперь подготовленные статьи кончились, и выкладывать будем только по мере написания. Из-за чего периодичность упадёт ещё больше, и карма в целом просядет ещё ниже. Ну или придётся жертвовтать качеством в ущерб скорости, но меня это вариант не радует.
Вообще, всегда удивлялся рекомендации писать больше, которую часто дают начинающим блоггерам. Нельзя писать быстро и при этом хорошо! Тема должна быть выстраданной и выношенной в голове долгое время…

Удалось наладить режим дня!

4X_Pro
Чудо всё-таки свершилось! Уже целую неделю я встаю гораздо раньше, чем прежде, где-то в промежутке с 9:30 до 11:30. Так что теперь застаю гораздо большую часть светового дня, и появилась возможность выбираться на улицу засветло, чем я несколько раз пользовался. Правда, как обычно, из-за этого меньше успеваю в плане дел. А вчера ещё возник сильный недосып, из-за чего день прошёл почти весь мимо. Теперь нужно выдержать ещё пару недель, чтобы привычка закрепилась.

О протоколе Gopher и техноархеологии

4X_Pro
Сегодня верстал макет одного клиентского сайта. Сайт сам по себе простой и ничем особенным мне бы не запомнился, если бы не необычное copyright-сообщение в «подвале»:
Никакая часть материалов с этого сайта не может быть размещена на каком-либо другом Интернет-, gopher- или FTP-сайте, системе BBS или другой электронной архивной базе данных, за исключением случаев, оговорённых в письменном соглашении с администрацией сайта

Уж не знаю, откуда клиенты взяли упоминания таких древностей как Gopher или BBS, да и публичные FTP сейчас редкость. Но первое, что мне пришло в голову по прочтении — это выяснить, а существуют ли ещё Gopher-сайты в наше время. Для тех, кто не в теме, поясню, что хотя я пришёл в Интернет в конце 2000 года, подобных сайтов в Рунете не застал, видел только упоминания о том, что такой протокол когда-то был. Сказано — сделано! В скором времени я узнал, что даже сейчас в Интернете существует около 150 Gopher-сайтов, но в современных броузерах поддержки протокола Gopher давно уже нет. Но, как выяснилось, в lynx она вполне себе работает, кроме того, есть шлюзы Gopher=>HTTP. Зашёл на один из сайтов (gopher.ratthing.com), посмотрел. Эх, как же классно: простые текстовые страницы, кое-где с ASCII-артом! Никакой рекламы, всплывающих блоков, ненужной графики. И самое главное — это ощущение какой-то «настоящести». А ещё обнаружилось, что в Gopher были даже гостевухи и локальный полнотекстовый поиск! Теперь даже задумался о том, а не поднять ли мне Gopher-сервер на своём VDSе, положив туда страницу «О себе», биографию, страницу личных достижений и т.п. Буду единственным человеком в Рунете, у которого такое есть! (Правда, оценят только единицы.)
И вообще задумался, что со своим первым Прошлым по темпористике я мог бы стать техноархеологом — знатоком старого железа, старых протоколов и тому подобного. Более того, можно попытаться даже предоставлять платные услуги по чтению данных со носителей типа дискет или IDE-дисков (а лет через десять таковыми станут и банальные CD-ROMы) и конвертации их из неподдерживаемых сейчас форматов. Всё интереснее, чем верстать сайты для Интернета, который в своём развитии ушёл куда-то явно не туда. Вопрос только в том, как в наше время раздобывать старое «железо», например, дисковод 5.25".

Канал на Дзене или Главный пуск года

4X_Pro
Сегодня случилось то, к чему я шёл последние четыре месяца! Мы с Tellой запустили свой канал на Дзене про гармонизацию жизни на основе Псибазиса — 7 первопричин психологических проблем. Первые три статьи я выложил вчера, сегодня добавил четвёртую и объявил о запуске канала в соцсетях.
Но увы, дальше ждало разочарование. Вчерашние статьи набрали несколько сотен показов, но сегодня показы почти прекратились. Хотя CTR вроде бы вполне приемлемый: от 2.4% до 4.4%. Попытался было добавить ещё одну, про дефицитарность, чтобы алгоритмы обучались и определяли тематику, но внезапно статья попала под блокировку. Сначала думал, что перестарался с провокационностью заголовка, поменял его на тот, который предполагался изначально («Дефицитарность как причина нелогичного поведения»), но и с ним блок повторился. Видимо, либо в тексте что-то не так, либо проблема с изображениями. Tella написала в техподдержку, но, как мне кажется, ответа не будет. Придётся определять, что не так, экспериментальным путём.
Ещё узнал о программах «Аврора» и «Нирвана», куда можно попытаться подать заявку, чтобы получить бонусные показы. Но для этого нужно хотя бы 10 записей создать, а у нас полностью готово только пять статей, и шестая — в полунаписанном состоянии.
Но вообще, читая рекомендации Дзена для начинающих авторов, я несколько разочаровался. Он всё же ориентирован на тех, кто блоггерством собирается зарабатывать. Пришла даже в голову неожиданная мысль — самому создать платформу на основе IntB для тех, кто пишет по принципу «не могу молчать», как во времена Старого Доброго Интернета. Там не будет монетизации в принципе, зато у каждого будет возможность быть увиденным и услышанным, не тратя на это денег. Но всё, как всегда, упирается в то, как набрать критическую начальную массу авторов.

Зимнее солнцестояние пережили!

4X_Pro
Вот и всё, зимнее солнцестояние позади! Теперь день начнёт удлиняться, а это сразу улучшает настроение и делает жизнь проще. Ещё позади очередной биоритмический минимум, последний этого года. И до Нового года уже меньше 10 дней. А с ним весь этот «год с вирусом» и кучей других неприятностей станет, наконец, историей.
А завтра состоится запуск канала на Дзене. Четыре месяца я шёл к этому!
И ещё мы с Tellой пытаемся налаживать режим дня совместно: ложиться в 2 часа, вставать в 10. Правда, получилось как всегда: лёг я почти сразу после полуночи, а проснулся в 3:20. Но обычно я в таких ситуациях пытаюсь чем-то заняться, а тут полежал где-то час и снова пошёл спать. В итоге проснулся тоже позже намеченного времени, а на связь вышел только в 12 часов дня. Но всё равно большой шаг вперёд сделан! Главное, сегодня лечь вовремя.

14 декабря, и этим всё сказано

4X_Pro
Биоритмический максимум, как всегда, закончился незаметно. В конце прошлой недели обратил внимание на то, что успевать снова стал меньше, а потом глянул на календарь и обнаружил, что вообще-то на следующей неделе уже минимум будет.
А сегодня ещё очень необычный день: годовщина Декабрьской трагедии 2001 года. Эх, горите в аду все причастные, а также те, кто предпочёл не вмешиваться! На этот раз этот день снова совпал с затмением. Правда, на этот раз солнечным, а не лунным, как тогда.
В остальном же всё идёт как обычно. Посмотрел вебинар по фотографии, доделал кое-какие мелочи по сайтам и побегал на доожке.

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

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