ActivityPub Support: Phase 1 RFC

There are many instances of Discourse. I don’t know exactly but I have accounts on a few dozens. It’s impossible to keep track of everything and many times I come across topics in distinct but no so different communities discussing similar issues, that could well be shared across instances since some of the participants are repeating themselves across discussions. It would really help to be able to share such topics across instances without having to login several times, cross-reference topics and not have a fluid discussion with interested parties.

Having ActivityPub users treated as staged users the same way emails users foreign to a Discourse instance are treated seems to be a good compromise to start with.

An RSS feed would certainly help you track ongoing topics at a single place but would not bring anything different from the Discourse Hub app, nor would it allow you to participate.

@hellekin I don’t know about this. Maybe you’re right, maybe you aren’t.
There are lots of nightclubs, restaurants, supermarkets, softwares, etc. Some are even pretty close. Geographically and/or in term of what they offer. Should one have the view that it’s “stupid” different places offering the same thing are separated? And these places should be merged to only have a centralized one?

Now, here, it’s a bit more evolved as the communities would stay kind of separated, but they are linked. Remains the question if all communities are the “same”: It is the same rules, the same atmosphere, the same kind of people, etc? This may be what makes a community a “special place” worth (actively) participating on: The fact that it’s unique. It has a unique vibe, a unique kind of humor going on, etc. A unique IDENTITY. People being a huge aspect of this: Who goes here or there. What kind of person.

Maybe this is a view on DIVERSITY: Mixing up everything, and ending up with something the “same” everywhere, because it’s so mixed up.

On the other hand, we have LINKS and QUOTES. Nothing prevents anyone from linking, quoting and summarizing what happens somewhere else. And here, you can keep the identity of each place, and not render everything the “same”.

Anyway, this may be the core questions behind the ActivityPub principle itself, and the willingness to implement it with Discourse. Of course, if it’s only optional, anyone can do as he wishes. and options are generally a good thing, IMHO (I’m not really sure why a successful community would want its content to be shared outside, and people to be able to interact with it from the outside).

[That’s a little some “Demolition man” thing where there are only Taco Bell restaurants left, isn’t it?]

إعجاب واحد (1)

I’m not sure how your view relates to my previous post. I did not say anything about merging communities, simply some common topics. And even then I only suggested user accounts could be the proxy…

And isn’t this, “merging” the offerings of different communities? You still “merge” some content, even if, as said in the previous message:

There seem to be a unwillingness to do it from the Discourse team, and an unclear advantages/use case on top of this. If you don’t see how my previous post relates to the subject, then ok. My apologies. forget about it.

Absolutely not. But I would like to read about them in my local newspaper, or - in a more specialized case - an Italian gastronomy guide for connaisseurs. The fact that things are not all the same, are what makes it worth subscribing to them. Back to the web and communities, linking an quoting are valuable of course. But they are another use case, different than sharing a topic between forums and viewing the thread in context, maybe participate directly.

You are right that in some cases you don’t want to mix identities and certainly not completely merge dispersed communities altogether. But you may selectively merge only those parts where it makes sense. Be it on a topic-by-topic basis, certain (sub)categories, tags or specific groups of people sharing content.

It is not really about ActivityPub either. The protocol is quite low-level, building on top of HTTP. You can build anything with it. Very often when mentioning ActivityPub, people automatically tend to think of microblogging (Mastodon) as that is the most popular application until now. If you consider this domain, everyone is sort of creating their own ‘unique community’ with it, defined by who they follow. This creates their personal timeline. Other than that they may have chosen to create their account on e.g. mastodon.technology and their server timeline loosely has the theme “technology” to it. But this domain does not really fit Discourse, of course. It is microblogging, not community forums after all.

Currently some microblogging applications are extending their domain with the concept of Groups. You might see this as a community concept that extends across the server boundary. So while I’m on mastodon.technology I might subscribe to the “spaghetti” group, and “climate change”. But it is still just microblogging → everything is compressed and flattened into my timelines.

What is a succesful community? What are its bounderies, what is inside and outside? These may be very clearly defined, and relate to identity and diversity. One thing they do not relate to per se, are specific server boundaries!

Though I went very broad in Community has no boundary, it is thinking without these artificial server boundaries I addressed (and how that may increase quality, quantity and activity of the community. I did not go into identity, which is a good point to also address). Thanks for responding there @Mevo, I’ll reply in due time.

5 إعجابات

Thanks @aschrijver , this is very helpful.
I take from the first paragraph the idea to “use it wisely”.
About the second paragraph, I was referring more to the idea of what it enables/does, than the protocol itself, when talking about “ActivityPub”. The “sharing/linking content” idea, or “freeing the content from servers boundaries”, like you talk about it.

The idea of some kind of shift of control/power is interesting: It would not really be the community owners who control anymore “their” users, “their” content (what they host, at least), what people have access to when coming to their place, how information is organized and grouped, etc. The users would be more in control and more free to pick what they want, from where they want, and make their “own menu”.

I can see how this may be appealing from the user’s POV, and how it may be a little scary/worrying from a community owner POV.

Taking a restaurant analogy, I agree I was probably getting a little too far with my point of merging several places, but I think your analogies are too soft: It’s more than what you describe, IMHO. It’s going to one restaurant and being able to order a dish from another place, made by the chef of that place. It may raise questions (which was a big part of my point) as to why the restaurant owner who pays well that chef, and maybe had troubles to attract him and retain him, would want to NOT have a clear reason for customers to come to HIS restaurant anymore. Your answer is kind of: It’s great from a customer POV. Yes, sure, I agree.

But anyway, you may be right on this, and the point I’m making looks quite like the fears of companies with open source in the past.

@angus حصلنا على أخبار من منحة NGI لدعم تطوير هذه الميزة وتم رفض العرض. سنحاول التقدم بطلب للحصول على منحة أخرى العام المقبل.

إعجابَين (2)

سيكون ذلك رائعًا جدًا.

إعجابَين (2)

هل يمكن لشخص ما تلخيص الوضع الحالي (حتى 22/11) للأفكار المتعلقة بتنفيذ ActivityPub لـ Discourse؟ بعد الاطلاع على عدد من المواضيع ذات الصلة، فإن صورتي الحالية تبدو كالتالي:

  • كانت هناك محاولة للحصول على تمويل من الاتحاد الأوروبي في عام 2019 لعملية التنفيذ، ولكن تم سحب الطلب لبعض الأسباب
  • حتى الآن، لا يوجد كود (إضافة) يمكن استخدامه للاختبار
  • لا يوجد موقف مشترك لدى موظفي/الفريق الأساسي في Discourse.org حول الحاجة إلى “discourse متصل بالشبكة الموزعة”

هل هذه الصورة صحيحة؟ أعمل مع حزب سياسي كبير في ألمانيا ونحن بحاجة ماسة إلى نوع من الخطاب اللامركزي حيث يتم تبادل إشعارات النشاط بين المثيلات. لذلك أنا مهتم بالوضع الحالي لهذه الأفكار…

5 إعجابات

نعم.

نحن نستخدم مثيلات Discourse متعددة للعمل على Discourse ويتلقى المستخدمون إشعارات مركزية عبر:

  • إشعار دفع الويب (متوفر على Android و Windows و Linux و MacOS)

  • DiscourseHub (متوفر على iOS و Android للمواقع في استضافتنا)

  • البريد الإلكتروني (متوفر في كل مكان)

ناهيك عن القدرة على الاشتراك في خلاصات RSS، والحصول على الإشارات المرجعية متزامنة مع التقويم الخاص بك عبر نقاط نهاية .ics، وما إلى ذلك.

لماذا تحتاج إلى ActivityPub لهذا الغرض؟

5 إعجابات

نعم، بناءً على المنشور الأصلي، تعد خلاصات RSS على الأرجح أفضل حل للحصول على موجز مجمع عالميًا للإنترنت. ومع مواقع مثل rss.app وحركات مثل openrss.org، يمكنك الحصول على موجز RSS لأي موقع تريد متابعته هذه الأيام.

3 إعجابات

نحن في منتصف النقاش هنا وربما لم أفهم بعد جميع جوانب المناقشة السابقة هنا.

إذا انتقلنا من إعداد مركزي إلى إعداد لامركزي مع مثيلات متعددة لـ Discourse (يجب استضافتها محليًا في أوروبا، AWS ليس خيارًا)، فإن نوعًا من المراسلة “من خادم إلى خادم” سيسمح للمستخدمين بتسجيل الدخول إلى نظام واحد فقط والحصول على معلومات حول الأنشطة المثيرة للاهتمام من نظام آخر.

البريد الإلكتروني “مزدحم للغاية” ونرى انخفاضًا في التغطية للمعلومات المتدفقة عبر “النشرات الإخبارية القياسية”. سيسمح ActivityPub (باستخدام واجهة برمجة التطبيقات من خادم إلى خادم) بجمع المعلومات من مصادر مختلفة على “خادم مفضل” واحد.

تعد خلاصات RSS بالفعل حلاً ممكنًا، ولكن هذا يتطلب التسجيل / المصادقة في خوادم مختلفة. وعمل يدوي بتقنية مختلفة، معظم المستخدمين “غير التقنيين” غير مألوفين بذلك.

إعجابَين (2)

أود دعوة الأشخاص في الـ fediverse للمشاركة في خادم Discourse الخاص بي بطريقة أغنى من الـ oneboxing اليدوي.

بينما أستخدم موجز RSS (وبالفعل، أستخدمه لتتبع المحتوى الجديد في مثيلات Discourse متعددة)، فإن إضافة ActivityPub / ActivityStream ذات الاتجاه الخارجي فقط ستلتقي بالأشخاص حيث يتجهون بأعداد كبيرة، وتساعد في زيادة إمكانية الوصول إلى المعلومات في منتديات Discourse.

أدرك أن فريق Discourse يختلفون جوهريًا مع هذا، وهذا من حقهم. إحدى نقاط القوة الهائلة في Discourse هي أنه، باعتباره مصدرًا مفتوحًا حقيقيًا تم بناؤه بالفعل في العلن وليس تم إلقاؤه فوق الجدار، لا يتعين علينا جميعًا الاتفاق. :smiling_face:

3 إعجابات

ربما تحتاج الأفكار المتعلقة بـ ActivityPub في Discourse إلى مزيد من النضج، سواء من الناحية التقنية أو الاستراتيجية.

آمل أن تجبر “كارثة تويتر” الحالية المزيد من الأشخاص (خاصة على المستوى السياسي) على إعادة التفكير فيما هو خاطئ بشأن “سيادتهم الرقمية” الخاصة. وربما يشمل ذلك أيضًا فرصًا جديدة لحلول المصادر المفتوحة الحقيقية في مجال المناقشات الرقمية العامة والمجتمعية …

3 إعجابات

حتى الآن كنا ندفع من أجل ActivityPub في Discourse وسمعنا العديد من الأصوات تحاول شرح سبب حاجتهم إلى ActivityPub… لكننا لم نسمع من فريق @Discourse سبب عدم رغبتهم في تنفيذه. كل حجة تم تقديمها حاولت معالجتها بنهج معقول، ولكن في النهاية لا يوجد وضوح بشأن سبب تغيير المعرفات البعيدة لأي شيء في مستويات الثقة، نظرًا لأنه لا يزال من الممكن اعتبار الحسابات البعيدة مرحلية محليًا، ومحدودة كما هو الحال مع المستخدمين المرحليين الآن.

هناك عدة مواضيع ذات صلة. أردت أن أسلط الضوء على أن @sam أوضح أن وصفي هنا بأن “فريق الخطاب يختلفون بشكل أساسي مع هذا” كان خاطئًا أو قديمًا:

أتوقع أن السبب وراء عدم قيام CDCK بتخصيص مواردهم لهذا العمل هو أن عددًا قليلاً من عملائهم الذين يدفعون، إن وجدوا، يهتمون بهذا الأمر، أو على الأقل يعطونه الأولوية على أعمال الميزات الأخرى. أشك في أن هناك اهتمامًا مجتمعيًا أكبر بكثير من الاهتمام المؤسسي بهذا العمل في الوقت الحالي وفي المستقبل المنظور. إذا تولت CDCK هذا العمل، فإن تكاليف الفرصة البديلة لعدم بناء ميزات أخرى يطلبها عملاؤهم يمكن أن تكون كبيرة. (ليس لدي أي معرفة داخلية هنا.)

بالنظر إلى تعليق Sam المرتبط أعلاه، إذا اهتمت مجموعة من مطوري مجتمع Discourse بما يكفي لبناء إضافة، أتوقع أن تستثمر CDCK في التعاون مع هؤلاء المطورين لمراجعة ودمج أي تغييرات أساسية مطلوبة لجعل هذه الإضافة فعالة. تجربتي مع المساهمات الصغيرة التي قدمتها لـ Discourse هي أنهم أعطوا الأولوية للجهود لمراجعة ومساعدة العمل الذي لم يكونوا سيعطونه الأولوية بأنفسهم. :heart:

7 إعجابات

بصفتي مستخدمًا بسيطًا لمنصة Discourse (أستضيف نسخة صغيرة) ومستخدمًا حديثًا، ليس لدي ما أقدمه بشكل ملموس فيما يتعلق بكيفية التعامل مع هذا الأمر من الناحية التقنية. لكن لاحظت أن ووردبريس، عبر إضافته، أصبح حضورًا رئيسيًا في الفيديفيرس. اعتبارًا من فبراير 2023، هناك أكثر من 750 موقعًا تتحدّث، وهو عدد يفوق بالفعل العديد من منصات الاتحاد المخصصة. لذا، فإن الإمكانية موجودة لجعل جميع مجتمعات Discourse (التي ترغب في ذلك) جزءًا من شيء أكثر تكاملاً “بشكل سحري”. التحفظ الرئيسي هو أن بروتوكولات الاتحاد (على الأرجح) ستتطور مع زيادة التبني، لذا سيكون هذا التزامًا حقيقيًا لتطور الوظائف ذات الصلة.

إعجابَين (2)

@SeriousFun01 اقرأ Federation support for Discourse - #87 by angus والمشاركات التالية للحصول على تحديث هنا. :tada:

3 إعجابات