NewsРебрендинг

Был morontt.info, стал xelbot.com 😁 Разницы особой нет, потому что и нет тут никого, кроме меня. Произвожу оптимизацию, чтобы не платить просто так за разные домены. А xelbot получился много лет назад, как напечатал "чудище" в английской раскладке.

клопишко

ФотографияКлоп красавец

Энергодар, август 2018-го

NewsНовая старая админка

Решил, раз уж активно работаю и с админкой этого блога, освежить и её. Внешне не должно ничего поменяться, а вот под капотом изменения предстоят. Как уже писал тут в 2016-м, сделана она на Ember.js с Symfony. Вот с JS-частью и затеял обновление. Изначально и довольно давно задумал удалить SPA (single page application), переделать на обычный серверный рендеринг и избавиться от геморроя, связанного с быстрым устареванием фронтендовой инфраструктуры.

Но прошло уже 7 лет, а админка продолжает работать, bower не исчез, а всё так же скачивает пакеты, хоть и предупреждает уже несколько лет, что пора мигрировать на Yarn и Vite (что это, кстати?), крутится в докере 8-я версия Node.js, а выше не поднимешь, так как собираться код уже не будет...

GitGit-хуки

Решил на днях починить автотесты в админке этого блога и в процессе их восстановления начал обнаруживать и баги, которые появились с тех пор, как тесты были заброшены, включая и недавние изменения. Не то, что бы и баги, здесь не так много функциональности, чтобы поломка прошла незамеченной, скорее некорректное поведение системы, вроде неправильного часового пояса в контейнере приложения и т.п.

Чтобы обойтись без внешних CI-сервисов, решил запускать тесты локально перед каждый пушем, автоматически, для чего в системе контроля версий Git предусмотрены хуки, ниже как раз приведён пример подобного pre-push хука (в папке .git/hooks их на разные случаи жизни):

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
#!/usr/bin/env bash

echo -e "Start pre-push hook\n"

docker compose run --rm --remove-orphans -T rhinoceros bash -c "bin/phpspec run"
retVal=$?
if [ $retVal -ne 0 ]; then
    echo -e "\e[31m phpspec error\e[0m\n"
    exit 1
else
    echo -e "\e[32m phpspec OK\e[0m\n"
fi

exit 0
Google 404 Not Found

ПрограммированиеСанкции (рестрикции) и программирование оффлайн

Почти год уже нахожусь в Крыму и часто сталкиваюсь с вводимыми ограничениями со стороны разнообразных технологических компаний. Например, не работает сайт документации по Go, да и сами релизы этого ЯП не скачиваются без дополнительных манипуляций. Вместо этого или 403-я ошибка, или 404-я

Кроме этого пока ещё нет толком интернета и мобильной связи на даче в горах, мобильная вышка с другой стороны горы и ею же закрывается 😅 Программирование само по себе без интернета приобретает иной уровень сложности, попробуйте, допустим, без поисковика определить программным методом в каком-нибудь питоне или PHP определить время последней модификации файла и тому подобное. Поэтому пришлось озаботиться оффлайн-документаций.

Показатели GTmetrix 2023

NewsЗамеры на будущее, 2-я часть

Ну вот это самое будущее и наступило, даже существенно раньше, чем предполагал :) Показатели на свежевыложенной новой версии. Хоть инструменты для измерений и претерпели изменения и сравнивать напрямую нельзя, но приблизительно оценивать можно. Стало хуже, но впереди будут оптимизации, пока было не до них, нужно было публиковать уже то, что есть, а то, что есть, активно доделывается и обрастает новыми задачами и задумками. Главное, чтобы не отпустило, а то неизвестно на сколько меня ещё хватит, опять заброшу этот блог.

GTmetrix и аудит Lighthouse из гугл-хрома:

слиплись картинки

NewsГотово, вроде...

Переключил на новую гошную версию движка на ночь глядя. Утром посмотрю, не завалилось ли приложение и сколько навалило 500-х и прочих ошибок в логи 😁

MySQLemoji, MySQL и кодировка UTF-8

Давно уже, многие годы, знал о проблеме, что комментарии в этом блоге с эмоджами не сохраняются, как и статьи, потому что MySQL ругался чем-то вроде Incorrect string value: '\xF0\x9F\x87\xB2...' for column 'text' at row 1 и записи не сохранял. Но исправить эту штуку было просто недосуг, комментируют здесь не то, чтобы сильно часто, да и то чаще боты со спамом. А вот в новой версии движка блога, которая уже фактически запущена, это было запланировано к исправлению 😁

Когда переносил блог на новый сервер, то установил там восьмую версию мускула и проверил, сохраняет или нет. Вдруг разработчики базы данных давно уже исправили этот incorrect string value, я ведь не один такой на планете с эмоджами, нас десятки и сотни тысяч, уверен, если не миллионы. Но результат не поменялся, та же ошибка. Не прокатило, штош...

в процессе

NewsРождение в муках

С переменным успехом и крайне редкими набегами, но всё таки движется разработка третьей версии движка этого заброшенного блога. Запись про новую админку была аж в 2016-м 😅 В данный момент нахожусь почти на финишной прямой, заканчиваю с комментариями. Наконец-то реализовал Nested set для двевовидных комментариев и категорий.

Ну и скриншот, типа работа полным ходом 😁

Бух

NewsВойна на Украине. 24.02.2022

Каждое поколение должно поучаствовать в войне.
- Адольф Гитлер

За несколько недель (если не месяцев) до описываемых событий началось массовое нагнетание. И подобные новости я получал от подруги тревожницы, сам же не относился к этому серьёзно, потому что мантра "Путiн приде, Путiн нападе" за много лет уже порядком надоела, считал, что украинские правители имеют крохи разума и инстинкт самосохранения, будут и дальше зарабатывать на войне, на закупках у самих себя для армии топлива, продовольствия по несколько завышенным ценам, военный сбор опять же, который вычитается у каждого украинца из зарплаты, если эти зарплаты не в конверте. Ну и в целом, поддерживать этим запугиванием внешним врагом в тонусе свидомых украинцев. Впервые же заметил, что происходит неладное, когда увидел в TikTok короткие видео с военной техникой, находящейся у украинских границ над Харьковом и этой техники было много. А то, что война будет, осознал 23-го числа вечером, после видео с Путиным, где он говорил, что ЛДНР будут признаны в границах их областей.