Mastodon, fediverse, activitypub

2023.08.22

Twitter Тред с этим постом


🐘 Хочу сегодня поговорить о таких штуках, как

  • Mastodon
  • Fediverse
  • ActivityPub

Интернет во многом построен на открытых протоколах и технологиях, которые помогают всем удобнее между собой контактировать и не городить миллионы велосипедов. Сетевая связанность обеспечивается протоколом TCP/IP, по сайтикам мы ходим при помощи HTTP/HTTPS, а почту шлём по email.

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

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

Однако есть такой красивый пример, как электронная почта. В отличие от многих современных социальных сетей, она работает на децентрализованной системе, где нет “главного” сервера, который контролирует все. В рамках этого децентрализированного протокола сосуществуют и Microsoft и Google и ООО “Рога и копыта” вместе с сервером Васи Пупкина, каждый из которых может общаться с любым другим сервером. Ты можешь поднять свой сервер и ты можешь общаться с другими, в том числе корпоративными серверами и твой сервер будут в какой-то степени уважать.

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

Сервисы, поддерживающие протокол ActivityPub объединяются под зонтичный термин Fediverse - Federated Universe - распределённая вселенная. Здесь можно найти аналоги популярных платформ: Pixelfed – аналог Instagram, Mastodon – аналог Twitter, Bookwyrm – аналог Goodreads, PeerTube - YouTube, Castopod – для хостинга подкастов.

В федивёрсе сочетаются разные сервисы, большие и маленькие. Каждый может создать свой сервер и быть частью этой сети. Прелесть заключается в том, что если один сервер не работает, это не означает, что весь Федиверс лежит. Могут быть недоступны конкретные его сервера, поэтому, например вы не сможете открыть профиль Алисы, но сможете открыть профиль Боба и Евы.

Также, в федиверсе не может быть цензуры. Потому что свой сервер могут поднять как активисты МОГИИ+ из Ирака, так и протрамповские фашисты. Но ты, как пользователь можешь решить, что тебя не интересуют пользователи с фашистского сервера и забанить его целиком. Также администраторы сервера могут ограничивать доступ к разным серверам федивёрса. Это позволяет бороться на уровне сервера со спамом или, например, с теми же фашистами.

Часто любят говорить, что выбор сервера это очень важно. Важно. Но не очень. Можно начать с какого-нибудь mastodon.social, а уже потом выбрать другой сервер. ActivityPub позволяет тебе довольно бесшовно переезжать с одного сервера на другой, не теряя при этом, например, своих подписчиков. Есть система редиректов. Например, многие в моей ленте выбрали сервер mastodon.social, а я зарегистрировался на mastodon.ml. Но для того, чтоб тем, кто пользуется mastodon.social, я завел учетку и там и в настройках указал, что это не мой основной аккаунт. Любой, кто откроет мою учётную запись на mastodon.social, будет переправлен на мой аккаунт на mastodon.ml.

Однако, выбор сервера — это все же важно.

Во-первых на сервере могут быть свои правила и контент, который вы выкладываете может быть неподходящим под ценности этого сервера. Во-вторых, многие серверы - это некоторое политическое высказывание: “я айтишник”, “я художник”, “я интересуюсь шибари”, “я ЛГБТК+”, “я фашист”.

Серверы в федивёрсе, как правило, поддерживаются и модерируются на деньги тех, кто их поднял и/или за счет пожертвований, например, подписок на patreon. Поэтому модерация пользователей на них — дело довольно личное и ценности сервера — не пустой звук и не формальность в EULA.

Кроме того, например, на серуере могут быть ограничения на размеры приложенных файлов, что например сильно прогрело стул одному моему знакомому Помочь с выбором сервера призваны сервисы типа fediverse.to

Кроме того, для ActivityPub есть такие штуки, как transport или bridge. Они позволяют ретранслировать данные из других источников в ActivityPub. Например, вы можете читать твиты из Твиттера через Мастодон при помощи bird.makeup. Нельзя лайкнуть, но можно репостнуть.

Из-за того, что система федивёрса распределённая, а не централизированая, то имена пользователей больле похожи на email’ы. Так если Алиса решила пользоваться сервером example.com, то имя её учётной записи будет @alice@example.com или в формате http-ссылки https://example.com/@alice

Пользование социальными сетями, основанными на ActivityPub, имеет свои плюсы и минусы. С одной стороны, ты получаешь полный контроль над своими данными, удобство централизованной точки входа в социальную жизнь и возможность оставлять личные заметки о пользователях, можно редактировать посты. Но с другой стороны, тебе нужно следить за сервером, на котором ты зарегистрирован, чтобы не случилось его закрытия. К тому же имена пользователей здесь не всегда удобны, и нет универсального клиента, который подошел бы для всех сервисов. Например, для Мастодона, Пиксельфеда или Диаспоры существуют разные клиенты, каждый с уникальными особенностями. Для Мастодона на андроиде можно выбрать оффклиент, Tusky или Husky. Однако такое многообразие дает свободу выбора, чтобы использовать то, что подходит именно тебе. Важно отметить, что объединенный протокол ActivityPub позволяет пользователям размещать фотографии так, как им удобно в Пиксельфеде, а тем, кто предпочитает микроблоггинг, - в Мастодоне. Это обеспечивает видимость постов для всех пользователей, независимо от выбранной платформы.

Чуть не забыл. Есть сервис fedifinder, который позволяет найти среди твоих подписчиков тех, у кого в никнейме (как у меня) или в профиле указан профиль в мастодоне и подписаться на них