место того кота


Kanal geosi va tili: Rossiya, Ruscha
Toifa: Bloglar


Всякие мои посты.
Связаться со мной: @EricKotato

Bog‘liq kanallar

Kanal geosi va tili
Rossiya, Ruscha
Toifa
Bloglar
Statistika
Postlar filtri


Наткнулся на статью «UTF-8 is a Brilliant Design», которая довольно хорошо объясняет, как работает кодировка UTF-8.

Но мне кажется, автор, говоря о дизайне UTF-8, забыл упомянуть, что UTF-8 ещё и хорошо справляется с чтением со случайного места: если ткнуть в случайный байт, и он начинается с битов 10, то мы можем прочитать несколько байтов назад до начального, т.е. у нас не будет ситуаций, что символ, который мы прочтём, будет битым.

Но вот если где UTF-8 и проседает, так это в определении количества символов. Да, ты можешь ткнуть в определённый байт, и прочесть его, и понять, какой это символ. Но когда тебе нужен определённый символ по номеру, возникает проблема, потому что тебе надо пробежаться по всей строке.

UTF-16 и UTF-32 в этом плане больше выигрывают: ты попросту делишь байты на 2 или 4 и сразу можешь узнать индекс символа. Главное разве что знать, в каком порядке байты идут. Но, конечно же, размер файла (особенно, если там только латиница из таблицы ASCII) будет сильно выше.


Немного о том, зачем я вообще сижу на поддомене, когда можно использовать основной.

Дело в том, что если мне не понравится что-то из того, что я тестирую, я просто могу убрать приложение с этого домена без проблем. В ином случае мне придётся возиться с переимпортом ключей, потому что если я сгенерирую другой, то будет проблемно читать тем, кто уже был на меня подписан.

Поэтому, дабы не устраивать себе геморрой, я делаю всё на поддоменах. Я планирую написать небольшую сравнительную статью о том, что я тестировал. Пока что из более-менее успешных тестов у меня:

· GoToSocial
· GoBlog
· WriteFreely
· snac

» fedi


Обновил GoToSocial до 0.15.0. Лично для меня самое интересное здесь – это корректная обработка миграций аккаунтов. Т.е. если я захочу переехать с gts.thatcat.space на thatcat.space, подписки теперь не потеряются.

Ну и то же самое со мной: если кто-то из тех, на кого я подписан, переедет на другой инстанс, то это корректно обработается.

Помимо этого, ещё в релизе появилась возможность скрыть подписчиков и подписки, фильтры (мне без надобности, но может, для кого-то это хорошая новость) и темы (я просто чуть под настроил CSS у себя).

К сожалению, даже в роадмапе я не вижу бэкфилла, что, вероятно, означает, что он будет не скоро, и к сожалению, я не настолько хорошо разбираюсь в Go, чтобы законтрибьютить самому. Может, когда-нибудь.

» fedi


Имейте в виду, что в TGX скругления аватарок – это часть темы, поэтому если вам нужна будет версия со стандартными, напишите в комменты об этом.


Выглядит так.


Gray Space.tgx-theme
4.2Kb
Пока канал был в архиве, я сделал себе ещё одну тему для Telegram X. Так как там до сих пор нет поддержки облачных тем, то выкладываю файлом.


Однако на Telegram опираться мне всё ещё не хочется, и то, что я вернул канал в состояние живого, скорее признание того, что я не нашёл подходящей для себя альтернативы.

Довольно давно я хочу захостить или сделать что-то на ActivityPub, а в канал чисто пересылать. Вот только проблема: всё, что можно захостить либо жирное, либо недоделанное, либо нарочито урезанное.

На данный момент я сейчас тестирую GoToSocial. Одна из довольно крупных его проблем — отсутствие backfill (т.е. подгрузки старых постов). В остальном по большей части он меня устраивает.

Если интересно, то вот мой профиль:
https://gts.thatcat.space/@erickotato

Попробую постить туда с пересылкой сюда, и посмотрю, что из этого выйдет. Скорее всего, вариант временный, но посмотрим.


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

Здесь можно сказать, что можно было так делать и раньше, и это просто видимость. Однако раньше нужно было подбирать юзернейм, чтобы и влезало по символам, и было относительно информативно (не каждый полезет открывать нечитаемое месиво из букв). Теперь же, какой там будет юзернейм, не столь важно, хоть я его всё же продублировал.

Конечно, я бы предпочёл вообще вариант с отсутствием юзернейма и чтобы канал был неявно публичный, но для обратной совместимости юзернейм всё же лучше.

Тем не менее, по итогу я решил переоткрыть канал, потому что проблема юзернеймов теперь будет беспокоить меньше (хоть и всё ещё будет).








Решил попробовать Obsidian для заметок. Хотел написать себе заметку по игре Dome Keeper, но написав, понял, что вышла обзорная статья.

Как заметка, лично мне она смысла не имеет, поэтому закинул на Telegraph, чтобы не пропадала уж совсем.

https://telegra.ph/Dome-Keeper-10-20


Тут Google немного скорректировали планы по выживанию Manifest V2 из Хрома.

Январь 2023
— Расширения с Manifest V3 получат значок "Featured".
— Начиная с Chrome 112, браузер может в качестве эксперимента отключить поддержку Manifest V2 в версиях Canary, Dev и Beta.
— Запрет на обновление и запуск расширений на Manifest V2 отменяется.

Июнь 2023
— Все публичные расширения на Manifest V2 станут доступны только по ссылке.
— Начиная с Chrome 115, браузер может в качестве эксперимента отключить поддержку Manifest V2 во всех версиях, включая стабильную.

Январь 2024
— Расширения на Manifest V2 больше нельзя обновлять.
— Все расширения на Manifest V2 удаляются из Chrome Web Store.

При этом, как утверждают, улучшили declarativeNetRequest, учитывая пожелания сообщества. Интересно, во что это выльется в итоге, хотя учитывая, что я уже давно не пользуюсь Chrome как основным (а как дополнительный мне он нужен крайне редко), то меня это вряд ли заденет.


Так как Telegram решил, что моё био — канал неактивный (что произошло не только с моим каналом), мне пришлось поменять на нём юзернейм на @that_cat_space.

Сюда я пишу в том числе, чтобы Telegram не решил, что этот канал тоже неактивный.


Мне тут из-за подорожания серверов пришлось менять хостинг, но это меня сподвигло на то, чтобы обновить свой блог. Да, в очередной раз.

https://thatcat.space/ru/

В этот раз я решил не морочиться ни с какими движками и сгенерировал статичный сайт на Hugo. Опыт, как никак у меня уже был: сайт Котатограма тоже сделан на Hugo. В целом, я доволен тем, что есть, но контентом его набивать и набивать, конечно же, да и есть мелочи, которые нужно доработать.

Итак, что изменилось с прошлого блога на Ghost:
— Светлая и тёмная тема с автоопределением.
— Содержание, которое подсвечивает текущий заголовок.
— Комментарии. Я прикрутил комментарии от Telegram через comments.app.
— Английская версия сайта. Почему бы, собственно, и нет.
— RSS.

Осталось только почаще писать туда, а не делать из него «сайт одной статьи».


Вообще, конечно, обновления — очень двоякая вещь. Сейчас обновление поставить не составляет труда: нажимаешь «обновить», ждёшь несколько минут (или даже секунд), и всё. Если сайт, то ещё проще, даже делать ничего не надо.

И с одной стороны, это удобно: если допустил ошибку, то один быстрый патч — и всё, проблема решена. С другой — теперь допускать ошибки не так страшно, что приводит к тому, что теперь они допускаются чаще. Ведь какая разница, один быстрый патч всё решит, правда?

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

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

Но не только функции могут заставить приложение ожиреть. Это ещё и новые технологии, которые обычно вводятся для упрощения разработки, а в компаниях упрощение разработки — это сокращение затрат на разработку. Почему, к примеру, популярен тот же нелюбимый мной Electron? Да потому что ты написал сайт — и у тебя большая часть приложения готова: приделываешь пару системных штук, пакуешь — и в релиз. При этом исходят из того, что у большинства устройства мощные, поэтому вытянут, а за остальных можно не переживать, пусть новое устройство покупают.

И можно ведь тут сказать «но ведь обновления — это развитие, это прогресс». Только вот реальность такова, что обновления — это то, что разработчикам или их руководителям показалось прогрессом, а на деле это вполне может быть и регресс.

Нельзя сказать, что каждое обновление — абсолютное зло. Но порой они делаются для чего угодно, кроме прогресса: чтобы дизайн-отдел не скучал, чтобы показывать «смотрите, мы развиваемся», чтобы расходы на разработку сократить. Поэтому «частота обновлений» — далеко не показатель того, что продукт хороший. И выкидывать просто так приложения, потому что продукт «давно не обновлялся» — это решение, которое поощряет «обновления ради обновлений», и ни о каком качестве тут речи не идёт.


С вами непостоянная рубрика «идиотизм магазинов приложений», и сегодня у нас отличились Apple. Автору одной из игр, опубликованных в AppStore, пришло письмо, что если в течение 30 дней не будет отправлено на проверку хотя бы одно обновление, то игру снимут с продажи:

https://twitter.com/protopop/status/1517701619374338050

А всё потому, что Apple начали какую-то «программу улучшения качества приложений», в ходе которой они решили выкинуть все приложения, которые долго не обновлялись (хотя автор почему-то пишет, что дело в том, что его приложение старое).

Это очень странный способ «улучшения качества». Если приложению требуется изменение, чтобы оно работало на новых телефонах и ОС, то почему тогда бы не сообщить об этом вместо того, чтобы заставлять разработчиков высасывать обновления из пальца?

Кажется, Apple умудрились сделать шутку «добавили багов, чтобы было что исправлять» реальностью.


Немного выдержек из статей о том, что говорят об этом разработчики браузеров, в моём вольном переводе:


Microsoft в блоге про Edge (14 октября 2020):
«После обширного разбора опасений, связанных с блокировщиками контента и сообществом, мы уверены, что большинство этих опасений были устранены или будут устранены до устаревания Web Request API».


Mozilla в блоге про расширения (27 мая 2021):
«После обсуждения с несколькими разработчиками расширений для блокировки контента, мы решили добавить [declarativeNetRequest] и продолжить поддержку блокирующего webRequest. Нашей изначальной целью было добавление [declarativeNetRequest] для обеспечения совместимости с Chrome, чтобы разработчикам не приходилось поддерживать множество кодовых баз, если они не хотят. С поддержкой обоих API в Firefox разработчики смогут выбирать способ, наиболее подходящий для них и их пользователей.

Мы продолжим поддерживать блокирующий webRequest до тех пор, пока не будет решения лучше, которое покрывает все случаи использования, которые нам кажутся важными, так как [declarativeNetRequest] в его нынешней имплементации в Chrome пока что не соответствует нуждам разработчиков расширений».


Vivaldi в своём блоге (4 июня 2019):
«Блокировка рекламы — сложная тема. Интернет построен на бесплатном контенте, и часть его потеряется, если убрать рекламу.

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

[...]

Когда изменения представят в Chromium, поверьте мне, здесь много, много различных сценариев развития событий.

Восстановление API — один из таких сценариев. Мы уже восстанавливали функциональность ранее.

Если API удалят вообще и не будет приличной альтернативы, мы можем рассмотреть создание ограниченного магазина расширений».

Примечание: где-то в 2020 у Vivaldi появился встроенный блокировщик рекламы, как ответ на эти изменения.


Представитель Opera на вопрос ZDNet (9 июня 2019):
«Мы также можем обдумать сохранение выбранных API, даже если Chrome не будет этого делать, но ещё раз, это не особо крупная проблема для более чем 300 миллионов людей, выбравших Opera».

Примечание: здесь представитель Opera отсылает к тому, что у Opera есть встроенный блокировщик рекламы.


Руководитель Brave Software Брендан Айк в ответ на письмо ZDNet (9 июня 2019):
«В ответ на изменение, связанное с declarativeWebRequest (полное прекращение работы webRequest для обычных пользователей, оставляя для организаций), мы продолжим поддерживать webRequest во всех расширениях для Brave».


В Google собираются потихоньку выдавливать Manifest V2, заменив его Manifest V3.

Таймлайн переведён отсюда:
https://developer.chrome.com/docs/extensions/mv3/mv2-sunset/

Для тех, кто не в курсе, поясню: Manifest V3 — это новый формат файла с основной информацией для расширений. Этот формат вносит изменения, которые, как бы Google не кричали, что они направлены на приватность, на деле убивают блокировщики реклам.


Мод на шрифт — не обязательно для внешнего вида

Есть такой шрифт, OpenDyslexic. Он помогает людям, страдающим от дислексии, заболевания, при котором человеку тяжело распознавать слова при чтении.

Так вот, в головоломке Lightmatter сделали поддержку этого шрифта. Хорошая accessablity-опция, но вот только в русском она полностью уничтожена, потому что весь шрифт одинаковый. Вы, наверное, предположите, что в OpenDyslexic нет кириллицы, но тут всё не так просто.

OpenDyslexic выложен в двух местах: страница Gumroad и репозиторий на GitHub. В последнем кириллица появилась с самого первого релиза, а вот на Gumroad большинство архивов старые, и там кириллицы нет. Но по факту, полная кириллица в этом шрифте есть с 2019 года, а игра вышла в 2020.

Самое грустное во всей этой истории, что поменять шрифт нельзя. Прямо как с Left 4 Dead 2, где для русского языка просто выставили Tahoma, убив шрифтовые моды напрочь.

В итоге и выходит, что мы живём среди локализационных «собак на сене», хоть и есть исключения.

20 ta oxirgi post ko‘rsatilgan.

76

obunachilar
Kanal statistikasi