Первые разочарования в Mastodon
Вчера попытался с наскока сделать те три исправления в Mastodon, но не получилось. Долго ломал голову над роутингом: оба URL (для локальной ленты и для пользовательской) вызывали один и тот же контроллер home#index, где в самом файле вообще почти ничего не было. И только потом дошло, что подгрузка ленты сообщений делается с помощью JavaScript! Это сразу заставило задаться вопросом: а будет ли работать без него. Оказалось, что нет. И это было серьёзным разочарованием. Одно дело отступить от принципа «на моём сайте только мой код» (от него я уже пару раз отступал, когда создавал tipiruem, typforum и socionics.me), а совсем другое — от принципа graceful degradation и того, что хорошо сделанный сайт должен работать без JavaScript. В общем, теперь даже не знаю, что делать…
Попытался даже сделать расклад на Таро с вопросом «как повлияет уход на Mastodon на мой Путь». Выпал перевёрнутый Иерофант (VI аркан), а также самопроизвольно выпали перевёрнутый Король Мечей и прямая Королева Пентаклей (хотя сейчас точно не помню, реально прямая или я перевернул). С учётом того, что Иерофант — это, вообще-то мой сигнификатор, это очень плохой знак…
Но есть и позитивный момент. Изучая код Mastodon, узнал про формат HAML и нашёл для него парсер на PHP. Причём очень экономный в плане памяти: тестовый пример с его использованием занимает всего 560 Kb памяти! Если вернусь к работе над своим frameworkом, буду его использовать, так как он значительно ускоряет то, чего я терпеть не могу — написание HTML-кода.
Попытался даже сделать расклад на Таро с вопросом «как повлияет уход на Mastodon на мой Путь». Выпал перевёрнутый Иерофант (VI аркан), а также самопроизвольно выпали перевёрнутый Король Мечей и прямая Королева Пентаклей (хотя сейчас точно не помню, реально прямая или я перевернул). С учётом того, что Иерофант — это, вообще-то мой сигнификатор, это очень плохой знак…
Но есть и позитивный момент. Изучая код Mastodon, узнал про формат HAML и нашёл для него парсер на PHP. Причём очень экономный в плане памяти: тестовый пример с его использованием занимает всего 560 Kb памяти! Если вернусь к работе над своим frameworkом, буду его использовать, так как он значительно ускоряет то, чего я терпеть не могу — написание HTML-кода.
А теперь посмотри на ситуацию с Mastodon, равно как и с Wordpress, фреймворками и прочими готовыми решениями сторонних разработчиков: ничего не напоминает? Правильно — с их использованием та же самая проблема, что и с закупкой импортных комплектующих вместо производства своих. И их использование ведёт к тем же самым проблемам: к зависимости от этих самых готовых решений со всеми вытекающими, к недостаточной гибкости, проблематичности реализации какого-либо недостающего функционала в силу крайней трудозатратности доработки чужого огромного и к тому же переусложнённого проекта. И в любом случае это решение не твоё, тебе придётся всё время подстраиваться под
извращенияизменения, навязанные разработчиками проекта и адаптировать под них свой код. И такой сайт будет очень скучным — никакого уникального функционала в таком сайте не будет, это всё равно будет типовой узел Mastodon, коих тысячи, с типовым функционалом, которым никого не удивишь. Такой сайт сольётся с серой массой тысяч таких же и его просто не заметят. Смысл создания своего сайта как раз в возможности реализации любого нестандартного функционала, нестандартной архитектуры, нестандартного пользовательского интерфейса и т. д., возможно даже чего-то принципиально нового. Это и есть то единственное, чем личный сайт может кого-либо заинтересовать — тем, чего нет на других сайтах, но зато есть у тебя. Создавая очередной типовой сайт, ты обрекаешь его на судьбу ещё одного необитаемого острова в океане Интернета.Но какая вообще необходимость использовать Mastodon, если он использует открытый протокол ActivityPub, который можно легко реализовать на своём собственном движке/(микро)фреймворке, который ты знаешь досконально? Или не так уж и легко? Если протокол сложен в реализации, то… не может ли это стать причиной его гибели и не стоит ли в таком случае поискать ему альтернативу?