Search results

Even more than Gleam community the AS/AP based fediverse faces existential threats where it comes to the promise to lead us towards "the future of social networking", a peopleverse. And poses high danger risks that must be known, so we can anticipate and mitigate them timely.

But above all we have to find ways to constructively collaborate with each in this chaotic grassroots environment we are part of.

and at scale, organic growth and sustainable evolution are applied research areas of Social coding commons, where participants add value while working on their own solutions, following their self-interests in alignment with those of other people

To folks who are interested in the general subject matter I addressed above, I recommend watching the talk given by Michiel Leenaars of @nlnet at last month:

"FOSS in times of war, scarcity and (adversarial) AI" by @michielMichiel Leenaars

fosdem.org/2026/schedule/event

@nlnet @michielMichiel Leenaars

And see also the extensive posts I made the past 2 weeks on the subject matter, reiterating the many subjects and challenges of healthy ecosystem formation that ail the community and at large for many years now. I pinned one of those relevant threads to my profile at:

social.coop/@smallcircles/1161

0

Whatever we think of / mad hype cycle, we have to deal with its rushed and inhumane dumping of the technology into global human society.

is a strategic approach to that allows activist voices to have the most impact in dealing with the dangers of disruptive technology introductions, and focuses beyond berating people and demanding sacrifice ("don't use, or else.."), to creating a process that helps win people over and work together on best outcomes and in direction of solutions.

stands for Constructive activism-led movements, such as Social coding commons. Coding is social, and the holistic approach to ensure that.

Social coding commons evolves Social experience design or , solution development for grassroots movements, supported by the .

In the thread below I copied a post to 's community with a suggestion to ponder about best outcomes from current and ongoing AI disruption, and deal with risks.

discuss.coding.social/t/calm-c

Even more than Gleam community the AS/AP based fediverse faces existential threats where it comes to the promise to lead us towards "the future of social networking", a peopleverse. And poses high danger risks that must be known, so we can anticipate and mitigate them timely.

But above all we have to find ways to constructively collaborate with each in this chaotic grassroots environment we are part of.

and at scale, organic growth and sustainable evolution are applied research areas of Social coding commons, where participants add value while working on their own solutions, following their self-interests in alignment with those of other people

To folks who are interested in the general subject matter I addressed above, I recommend watching the talk given by Michiel Leenaars of @nlnet at last month:

"FOSS in times of war, scarcity and (adversarial) AI" by @michielMichiel Leenaars

fosdem.org/2026/schedule/event

0

There's a new project called Holos which makes it a lot easier to host a Fediverse server on your own mobile device. You can follow the project at:

โžก๏ธ @HolosSocial

The official site explains how it works:

โžก๏ธ holos.social/how-it-works

To manage expectations, it's still in its early days and mainly for techy people at the moment. However, it will be interesting to follow its development ๐Ÿ™‚

Holos is by the makers of the Mastodon/Fediverse mobile app Fedilab.

0
0
0

There have been many experiments with adding simple ActivityPub support to static blogs, enabling authors to publish their blog into the fediverse to be followed and get commented on. Some of these experimenters have documented what they did, and I've started a list of examples here;

codeberg.org/fediverse/fedipar

I chucked this together in a hurry, so please prod me about any mistakes, or any additions that could be made to the list.

0

@fwtlDawa

Note btw, that for the most part algorithms are not causing the issue of bad integrations between apps. These are due to the pragmatic nature in which our current app-centric fediverse evolves, i.e. by means of post-facto interoperability. Here app developers focus on getting app features on the wire, and whomever first succeeds in making their new custom protocol extension to become popular, becomes the de-facto standard for that feature. And everyone else should "follow the leader" or push themselves out of mainstream fediverse adoption, into their own app niche.

This is not a sustainable path, and I am among years-long advocates that we should do better in how we collectively evolve the fedi, so that it can truly become the social networking of the future. See also my posts from last week, like:

social.coop/@smallcircles/1161

0

(2/2)

Would it be inappropriate to draft an FEP for this? One that addresses;

* (or whatever) as the standard tag for fediverse dev meta

* Filtering out posts with the tag by default for new accounts, unless they opt-in to receiving them

* Auto-adding the tag to all posts output by developer forums like SocialHub and ActivityPub.Space

* Methods like the ones @julian describes above, for ingesting and making use of posts with the tag

* ?

0

RE: social.coop/@smallcircles/1161

@Coho @maikelMaikel ๐Ÿ‡ช๐Ÿ‡บ ๐Ÿ‡ช๐Ÿ‡ธ

I think we also have to be careful and gauge the extent to which we get informed on problems by the way we shaped our own bubble / echo chamber over time.

Today for instance I sent a poll and got astoundingly and delightful positive responses on how people experience ..

I intend to follow up with another poll. But the poll results already show a new paradigm of social networking that which Social experience design calls . On the fedi you are in control over your own by carefully curating your social graph.

coding.social/blog/reimagine-s

Here's that poll btw, which will run for 6 more days. Curious about the final results.

0
0
0
0
0
50
1

Loops just shipped support for more interactionPolicy types, giving our community more control to limit certain interactions, like disabling comments or QuotePosts.

Huge shout out to GotoSocial and @dumpsterqueertobi (they/them) is writing bugs :terminal_cursor: for stewarding this ActivityPub extension to better protect our communities.

Isn't it amazing what is possible when projects that would normally compete with each other, can instead collaborate and build safer communities for all?

We all win when we put people first.

0
0
0

ๆฑ(๋™)์•„์‹œ์•„์—๋„ FediCon ๊ฐ™์€ ่กŒไบ‹(ํ–‰์‚ฌ)๊ฐ€ ์žˆ์œผ๋ฉด ์ข‹๊ฒ ๋‹ค๋Š” ๋ง์„ ์—ฌ๋Ÿฌ ็•ช(๋ฒˆ) ํ•ด์™”๋Š”๋ฐ์š”. ็จ็ซ‹็š„(๋…๋ฆฝ์ )์ธ ์ปจํผ๋Ÿฐ์Šค๋Š” ์•„์ง ์–ด๋ ต๋”๋ผ๋„, ์ž‘์€ ์ฒซ๊ฑธ์Œ์œผ๋กœ ์ƒ๊ฐํ•ด๋ณด๊ณ  ์žˆ๋Š” ๊ฒŒ ์žˆ์Šต๋‹ˆ๋‹ค.

@COSCUP 2026(่‡บๅŒ—(ํƒ€์ด๋ฒ ์ด), 8ๆœˆ(์›”) 8ๆ—ฅ(์ผ)โ€“9ๆ—ฅ(์ผ))์ด ์ปค๋ฎค๋‹ˆํ‹ฐ ํŠธ๋ž™ ๆๆกˆ(์ œ์•ˆ)์„ ๋ฐ›๊ณ  ์žˆ์–ด์š”. FOSDEM์˜ Social Web devroom ๊ฐ™์€ ๋А๋‚Œ์œผ๋กœ, ๊ฑฐ๊ธฐ์„œ Social Web ํŠธ๋ž™์„ ์—ด ์ˆ˜ ์žˆ์ง€ ์•Š์„๊นŒ ํ•˜๊ณ  ๆง‹ๆƒณ(๊ตฌ์ƒ) ์ค‘์ž…๋‹ˆ๋‹ค.

์•„์ง ็ขบๅฎš(ํ™•์ •)๋œ ๊ฑด ์•„๋ฌด๊ฒƒ๋„ ์—†์ง€๋งŒ, , , ๆˆ–(ํ˜น)์€ ์†Œ์…œ ์›น ๅ…จ่ˆฌ(์ „๋ฐ˜)์„ ๋‹ค๋ฃจ๊ณ  ์žˆ๊ณ  ็™ผ่กจ(๋ฐœํ‘œ)๋‚˜ ๅ…ฑๅŒ(๊ณต๋™) ์˜ค๊ฑฐ๋‚˜์ด์ง•์— ้—œๅฟƒ(๊ด€์‹ฌ)์ด ์žˆ์œผ์‹  ๋ถ„์ด ์žˆ๋‹ค๋ฉด ์ด์•ผ๊ธฐ ๊ฑธ์–ด์ฃผ์„ธ์š”.

https://floss.social/@COSCUP/116152356550445285

ไปฅๅ‰ใ‹ใ‚‰ใ€ๆฑใ‚ขใ‚ธใ‚ขใซใ‚‚FediConใฎใ‚ˆใ†ใชใ‚คใƒ™ใƒณใƒˆใŒใ‚ใ‚Œใฐใ„ใ„ใชใจ่จ€ใ„็ถšใ‘ใฆใใพใ—ใŸใ€‚็‹ฌ่‡ชใฎใ‚ซใƒณใƒ•ใ‚กใƒฌใƒณใ‚นใฏใพใ ้›ฃใ—ใใ†ใงใ™ใŒใ€ๅฐใ•ใชไธ€ๆญฉใจใ—ใฆ่€ƒใˆใฆใ„ใ‚‹ใ“ใจใŒใ‚ใ‚Šใพใ™ใ€‚

@COSCUP 2026๏ผˆๅฐๅŒ—ใ€8ๆœˆ8ๆ—ฅใ€œ9ๆ—ฅ๏ผ‰ใŒใ‚ณใƒŸใƒฅใƒ‹ใƒ†ใ‚ฃใƒˆใƒฉใƒƒใ‚ฏใฎๆๆกˆใ‚’ๅ—ใ‘ไป˜ใ‘ใฆใ„ใพใ™ใ€‚FOSDEMใฎSocial Web devroomใฎใ‚ˆใ†ใชๆ„Ÿใ˜ใงใ€Social Webใƒˆใƒฉใƒƒใ‚ฏใ‚’้–‹ใ‘ใชใ„ใ‹ใชใจๆ€ใฃใฆใ„ใ‚‹ใจใ“ใ‚ใงใ™ใ€‚

ใพใ ๆง‹ๆƒณๆฎต้šŽใงใ™ใŒใ€ActivityPubใ‚„ใƒ•ใ‚งใƒ‡ใ‚ฃใƒใƒผใ‚นใ€ใ‚ฝใƒผใ‚ทใƒฃใƒซใ‚ฆใ‚งใƒ–ๅ…จ่ˆฌใซๅ–ใ‚Š็ต„ใ‚“ใงใ„ใฆใ€็™บ่กจใ‚„ๅ…ฑๅŒใ‚ชใƒผใ‚ฌใƒŠใ‚คใ‚บใซ่ˆˆๅ‘ณใŒใ‚ใ‚‹ใจใ„ใ†ๆ–นใŒใ„ใ‚Œใฐใ€ใœใฒ่ฉฑใ—ใ‹ใ‘ใฆใใ ใ•ใ„ใ€‚

https://floss.social/@COSCUP/116152356550445285

1

I've been saying for a while that we need something like FediCon in East Asia. A dedicated conference is still a stretch, but I've been thinking about a smaller step:

@COSCUP 2026 (Taipei, Aug 8โ€“9) is accepting proposals for community tracks. It might be worth trying to open a Social Web track thereโ€”something in the spirit of the Social Web devroom at FOSDEM.

Nothing is decided yet, but if you're working on , the , or anything in the social web space and might be interested in speaking (or co-organizing), I'd love to hear from you.

https://floss.social/@COSCUP/116152356550445285

ๆฑ(๋™)์•„์‹œ์•„์—๋„ FediCon ๊ฐ™์€ ่กŒไบ‹(ํ–‰์‚ฌ)๊ฐ€ ์žˆ์œผ๋ฉด ์ข‹๊ฒ ๋‹ค๋Š” ๋ง์„ ์—ฌ๋Ÿฌ ็•ช(๋ฒˆ) ํ•ด์™”๋Š”๋ฐ์š”. ็จ็ซ‹็š„(๋…๋ฆฝ์ )์ธ ์ปจํผ๋Ÿฐ์Šค๋Š” ์•„์ง ์–ด๋ ต๋”๋ผ๋„, ์ž‘์€ ์ฒซ๊ฑธ์Œ์œผ๋กœ ์ƒ๊ฐํ•ด๋ณด๊ณ  ์žˆ๋Š” ๊ฒŒ ์žˆ์Šต๋‹ˆ๋‹ค.

@COSCUP 2026(่‡บๅŒ—(ํƒ€์ด๋ฒ ์ด), 8ๆœˆ(์›”) 8ๆ—ฅ(์ผ)โ€“9ๆ—ฅ(์ผ))์ด ์ปค๋ฎค๋‹ˆํ‹ฐ ํŠธ๋ž™ ๆๆกˆ(์ œ์•ˆ)์„ ๋ฐ›๊ณ  ์žˆ์–ด์š”. FOSDEM์˜ Social Web devroom ๊ฐ™์€ ๋А๋‚Œ์œผ๋กœ, ๊ฑฐ๊ธฐ์„œ Social Web ํŠธ๋ž™์„ ์—ด ์ˆ˜ ์žˆ์ง€ ์•Š์„๊นŒ ํ•˜๊ณ  ๆง‹ๆƒณ(๊ตฌ์ƒ) ์ค‘์ž…๋‹ˆ๋‹ค.

์•„์ง ็ขบๅฎš(ํ™•์ •)๋œ ๊ฑด ์•„๋ฌด๊ฒƒ๋„ ์—†์ง€๋งŒ, , , ๆˆ–(ํ˜น)์€ ์†Œ์…œ ์›น ๅ…จ่ˆฌ(์ „๋ฐ˜)์„ ๋‹ค๋ฃจ๊ณ  ์žˆ๊ณ  ็™ผ่กจ(๋ฐœํ‘œ)๋‚˜ ๅ…ฑๅŒ(๊ณต๋™) ์˜ค๊ฑฐ๋‚˜์ด์ง•์— ้—œๅฟƒ(๊ด€์‹ฌ)์ด ์žˆ์œผ์‹  ๋ถ„์ด ์žˆ๋‹ค๋ฉด ์ด์•ผ๊ธฐ ๊ฑธ์–ด์ฃผ์„ธ์š”.

https://floss.social/@COSCUP/116152356550445285

1
1
0

I've been saying for a while that we need something like FediCon in East Asia. A dedicated conference is still a stretch, but I've been thinking about a smaller step:

@COSCUP 2026 (Taipei, Aug 8โ€“9) is accepting proposals for community tracks. It might be worth trying to open a Social Web track thereโ€”something in the spirit of the Social Web devroom at FOSDEM.

Nothing is decided yet, but if you're working on , the , or anything in the social web space and might be interested in speaking (or co-organizing), I'd love to hear from you.

https://floss.social/@COSCUP/116152356550445285

0
1
0

@lapriceLocal Agency yes. Though it is not always clear what was the reason for the edit.

(Update: Now I edited because I too hurriedly reacted just to the first part of your reply, and repeated your point, which I now removed from the text ๐Ÿ˜… )

But there are other (ab)uses I see from time to time. Some people use editing to turn their post into something of a real-time live blog, e.g. where they update who just presented at a conference. That is very annoying, and I would call it an anti-pattern, an undesirable side effect.

@lapriceLocal Agency

A client sotware might add extra friction to discourage the anti-pattern, e.g. by requiring the formulation of a reason for the edit with a minimum amount of chars.

Also this reason might be federated. After all a 'federated edit' is something very different than an edit in your personal notepad in a local file. There are more abusive patterns that relate to editing. Thus enforce provisioning a good reason for edits.

(Update: Now I edited to add an important extra point to the post. And this is indiscernable from a growth hacker tactic. Plus if one isn't a growth hacker, and ones toot becomes popular - "goes viral", I hate that term - it is attractive and tempting to keep it all together in that post.)

This will make editing generally be less accessible, more unfriendly UX-wise, but there's something to say for having "Minimize post edits" be a best-practice on the social web.

0

๐Ÿค”

Noting a small likely unintentional side effect of the ability to edit posts on the fediverse..

It enables would-be influencers to use that as a growth-hacking tactic in their arsenal. Whereby editing a post some time after it was published, will serve to remind all people who interacted with it before (by receiving the 'edited' notification). And for those who only favorited another stimulus and opportunity to boost the post as well.

0

In the , most software is built around a specific platform model. One for microblogging, one for video, one for photos... and new ones will keep coming.
With , your phone runs your own server. You control your data and can use your own domain as your identity.
Built on the protocol, not a platform model, Holos is not limited to a single use case. One account that adapts to your needs.
That's where we're heading, and we hope for your support.

0
1
0

@smallcircles๐Ÿซง socialcoding.. @silverpill @raphaelRaphael Lullis @julian @mariusormarius ActivityPub as a space is just a mess, we have multiple types of social media clashing all over one protocoll whcih has a bunch of extensions with some being duplicates of other extensions and then diffrent people fighting over which one is the proper one to implement. At somepoint we just need to reset everything and start from a clean plate cause this shit cant go on forever.

@foxFox Ritch :fjoxicon:๐Ÿ‡ฉ๐Ÿ‡ช @silverpill @raphaelRaphael Lullis @julian @mariusormarius

Yes. I tooted about the need for Grassroots open standards and Grassroots standardization this morning..

social.coop/@smallcircles/1161

In a decentralized grassroots movement, somewhere there needs to an aggregation of the solution artifact. In this case a robust, comprehensible standard that can be readily implemented in libraries, frameworks and SDK's upon which then subsequently solution design can take place.

This is not centralization, this artifact can be federated. But there must be a place of convergence where consensus on protocol design comes together.

There might be a crowdsourced ActivityPub 2.0 specs + documentation site, plus a process around it to make it work.

0

@hongminheeๆดช ๆฐ‘ๆ†™ (Hong Minhee) :nonbinary: @kopperkopper :colon_three:

This thread, in particular the starting post, are direction to move towards. We know this for years. Somehow there's a deep inertia to correct course. This "somehow" is the area of applied research that Social experience design focuses on and intends to provide solutions for: the very particular social dynamics that exist in grassroots environment, such as the FOSS movement and fediverse.

0
0

Today @kopperkopper :colon_three: shared a post on the fediverse titled how to not regret c2s, and I found it genuinely interesting to read, even if I'm not sure its proposed architecture actually solves what it sets out to solve.

The author's frustration with naรฏve implementations is well-founded. Slapping an facade onto an existing Mastodon-like server and calling it C2S doesn't buy you muchโ€”you end up with the rigidity of a bespoke API without any of the interoperability C2S is supposed to offer. The โ€œJSON-LD flavored Mastodon APIโ€ framing is apt.

The proposed solution is to split responsibility more aggressively: the C2S server should be nearly stateless and dumb, storing ActivityPub objects without interpreting them, while a separate โ€œclientโ€ layer handles indexing, timelines, moderation, and exposes its own API to the frontend running on the user's device. It's a clean separation of concerns on paper.

But here's what bothers me. When you map this architecture onto familiar terms, it looks roughly like this:

  • C2S server โ‰ˆ a database (PostgreSQL, say)
  • โ€œClientโ€ โ‰ˆ an application server (Mastodon, Misskey)
  • โ€œFrontendโ€ โ‰ˆ the actual client app on your phone

That's not a new architecture. That's just the current architecture with the labels shifted. The interesting question is which interface gets standardized, and the author's answer is the one between the C2S server and the โ€œclientโ€ layerโ€”the bottom boundary.

The problem is that what people actually want from C2S is to connect any frontend to any server. The portability they're after lives at the top boundary, between the frontend and whatever is behind it. But the author explicitly argues against standardizing that layer: โ€œwe don't really need a standardized api,โ€ they write, leaving each client free to expose whatever API it likes.

Which means frontends remain locked to specific clients, just as Mastodon apps are locked to the Mastodon API today. The interoperability promise of C2Sโ€”log in to any server with any appโ€”isn't actually delivered. It's been pushed one layer down, out of reach of the end user.

There's real value in the post's thinking about data hosting vs. interpretation, and about the security implications of servers that understand too much. But as an answer to the question C2S is supposed to answer, I'm not convinced.

1

@benpateBen Pate ๐Ÿค˜๐Ÿป @steveSteve Bate @mariusormarius

For Protosocial I was musing on a role for the Profile in modeling identity. Protosocial emphasizes the actor-based nature of and folllows the actor model in general.

Though these are just showerthoughts atm, a solution on the wire is represented with an Application actor, which can be introspected to find the services it offers, and these are accessible as service actors.

The Protosocial fediverse is an actor-based service-oriented distributed messaging architecture, combined with a linked data social and knowledge graph distributed data store.

A person should be able to have as many identities as they wish, some anonymous, some pseudonymous, some fully verified. These are all Person actors.

All actors have an ActorID, but they only identify the actor objects themself. The Profile would be a verifiable identity statement. A contextual visitor's card to pass along.

0

@silverpill @raphaelRaphael Lullis @julian @mariusormarius

Btw, damn we should've caused this entire discussion thread to somehow flow to to have it in the archives. Instead of on "now you see me, now you don't" channel. Peekaboo. ๐Ÿซฃ

social.coop/@smallcircles/1161

Here today, gone tomorrow, who made notes? The post-facto interoperability leaders did. Those who happened to be around at the right time to hear things being said on the grapevine.

We need a proper Grassroots standardization process, and a Grassroots open standard that is able to healthily evolve. The good organization of this is just as important as the technical robustness of the protocol, which is the solution artifact at the end of the open standards cocreation pipeline.

@silverpill @raphaelRaphael Lullis @julian @mariusormarius

The killer app for the fediverse is not nomadic identity. That is either a protocol capability or may refer to an Identity Management app, a solution design.

Problem is, it is no use discussing here. No convergence takes place, other than spontaneous / random convergence. But it does not lead anywhere, not to a common consensus. Not to robust foundations to build on without continuous worries that things break. Microblog communications does not support this, and lacking that support manual processes are needed.

Even the only offers convergence to certain extent. The process is a band-aid, a best-we-have.

In analogy of the horserace, spontaneous convergence and ad-hoc alignment on FEP puzzle pieces by implementers equates to the horseback riders figuring out some basic rules to avoid serious accidents. But this FEP adoption at the same time warps the track, hems them in, alters reality and the future.

social.coop/@smallcircles/1161

0

@silverpill @raphaelRaphael Lullis @julian @mariusormarius

Yes, I agree. Though I would rather see a generic server having much less functionality than a Mastodon API exposes, since much of that is app-specific, Microblogging domain already. The generic server should make Mastodon possible as a solution design modeled on top of its networking layer.

In such a way where we can finally consider the protocol layer to be robust, and are able to treat it as a black box, and are not confronted with all its implementation details when we are doing a solution design.

I think we are probably on the same page, but..

> If you want to go beyond Mastodon API capabilities, you need a truly generic server. Something akin to Nostr relay.

This I would reformulate as:

"If you want to go beyond an app-centric fediverse bound to a Microblogging domain, then you need a generic server conformant to the ActivityPub specification."

Which also indicates I think we need to aggregate puzzle pieces into an AP 2.0

0

@silverpill @raphaelRaphael Lullis @julian @mariusormarius

In my book if a side effect is part of the protocol specification, then it constitutes a protocol capability. If not, then it is part of some app's / solution's business logic.

The definition of "ActivityPub extension" by itself is unclear. With overloaded use causing confusion. It may refer to:

- Protocol extension
- App / solution built on top of the protocol

To deal with protocol capabilities they must have water-tight specs, well-defined behavior and strict consistent use across the fediverse.

To deal with side effects that are part of solution designs for a particular application or business domain things go from simple to very complex in the amount of introspection and machine-readability that the Actor abstraction offers.

Simplest is finding the URL where the docs of the extension / solution design sit. Most complex is full introspection and handshaking. The latter is the Solid route.

social.coop/@smallcircles/1161

0

@silverpill @raphaelRaphael Lullis @julian @mariusormarius

Yes, I see you working hard in that quest.

But in the chaotic fediverse that evolved by post-facto interoperability that is a wicked challenge. Post-facto interop means "if I am first I can become law, and drag fediverse sideways in my image".

In another branch of this thread, there's another confusing thing. "how can a mastodon client ask the server .." and you respond with a possible URL pattern that may be defined.

> Maybe something like `/api/v1/timelines/tag/{tag}?only_media=true` ?

Perhaps Mastodon's non-generic server may have that, but not a generic server, but it is unclear which one is referred to.

Since microblogging nowhere aggregates comprehensive overview it is an echo chamber for confusion.

@silverpill @raphaelRaphael Lullis @julian @mariusormarius

I sometimes picture fediverse as one of these old horseracing toys from the 50s, where the horses represent all the various perspectives and expectations people have of the fediverse. There is no horse to bet on, positions change all the time, horses change tracks randomly. And furthermore there no finish line, the race is an endless slog. The prize of a robust protocol forever out of reach, getting more elusive as time progresses.

Antique horseracing game from the fiftees, small horse figures on a plastic track, that can be slid forward.
0

@raphaelRaphael Lullis @silverpill @julian @mariusormarius

I agree. Aboveall we need to know where protocol ends and 'app' begins. Be generally more deliberate in terminology use, and no longer talk in overloaded terms that have different unclear meanings to different people in different settings (to avoid using 'contexts' one of such overloaded words)

I've noticed for instance people having a very different notion of what a 'generic server' is, in definitions that are almost diametrical opposites.

My definition of generic is 'not specific' i.e. a generic server is a pure protocol implementation (which is something to agree upon, what that exactly entails), having no knowledge of *any* app / solution built on top of it or 'passing through' its messaging architecture.

In the other meaning a generic server 'knows/does/has it all' i.e. it understands everything we comprise to be 'the fediverse' in a kind of hard-wired fashion based on the functionalities that (marginally) interoperate today.

@raphaelRaphael Lullis @julian @mariusormarius

Another example of the need for careful terminology use is in the post that @silverpill quoted above:

> prevent actors on the same server from deleting each other posts

"post"? There is no post in , not as a verb and neither as a noun. While I am not worried that silverpill used the word in a wrong meaning here, the terminology easily leads to confusion where someone who interprets AS/AP to be equivalent to the fediverse we have today, pictures in their mind as Mastodon posts or toots in fedi slang, or elsewhere called statuses.

That is app terminology. AP only knows Actor, Activities, Objects, and perhaps Collections. Period. The rest is solution design.

Where they are transferred they can be said to be messages, and messaging happens.

0

@raphaelRaphael Lullis @silverpill @julian @mariusormarius

I agree. Aboveall we need to know where protocol ends and 'app' begins. Be generally more deliberate in terminology use, and no longer talk in overloaded terms that have different unclear meanings to different people in different settings (to avoid using 'contexts' one of such overloaded words)

I've noticed for instance people having a very different notion of what a 'generic server' is, in definitions that are almost diametrical opposites.

My definition of generic is 'not specific' i.e. a generic server is a pure protocol implementation (which is something to agree upon, what that exactly entails), having no knowledge of *any* app / solution built on top of it or 'passing through' its messaging architecture.

In the other meaning a generic server 'knows/does/has it all' i.e. it understands everything we comprise to be 'the fediverse' in a kind of hard-wired fashion based on the functionalities that (marginally) interoperate today.

0
1

When I first started working with , before existed, it felt like writing web apps in Perl and CGI in the late '90s. Interesting, even excitingโ€”but never comfortable. That era where your business logic and your protocol plumbing were justโ€ฆ the same thing:

print "HTTP/1.1 200 OK"
print "Content-Type: text/html"
print
print "Hello, world!"

Decades of web development have given us layers of abstraction we now take for granted. Nobody hand-parses application/x-www-form-urlencoded query strings anymore. Nobody writes their own JSON codec, or manually constructs HTTP request/response messages. These things just aren't your problem when you're building an app.

ActivityPub development still feels like they are your problem. What do you do when the https://www.w3.org/ns/activitystreams#actor property comes in as a string instead of an array? What about when https://www.w3.org/ns/activitystreams#object is an embedded entity rather than a URI? How exactly do you implement HTTP Signatures? And waitโ€”what's Linked Data Signatures, and do you need that too?

The real issue isn't that ActivityPub is complicated per se. It's that you can't get away with understanding it at a high level. You have to know it the way an implementor knows itโ€”every edge case, every inconsistency in how different servers serialize JSON-LD, every signature scheme that exists in the wild. That's a lot to learn before you can even start thinking about your actual app. And when developers understandably cut corners on the protocol to focus on their product, it quietly becomes an interoperability problem for the whole ecosystem.

What I want ActivityPub development to feel like: you spend a day understanding the big picture, and then you justโ€ฆ build your app. That was the goal when I started Fedify, and honestly, we're not fully there yet. But it's where I want to get.

0
6
0
0

Recently, there was a discussion about generic #ActivityPub servers. Several people claimed that they were working on one, but it turned out that their "generic" servers only support activities defined in the ActivityPub specification. Such a server shouldn't be called generic. It is not difficult to build, neither it is an interesting concept because competing protocols (e.g. Nostr) already offer much more.

I've been writing a #FEP that describes how to build a real generic server. It is not finished yet, but I feel like now is a good time to publish it:

FEP-fc48: Generic ActivityPub server

This kind of server:

- Can process any object type, and can process non-standard activities like EmojiReact.
- Compatible with FEP-ae97 clients.
- Does not require JSON-LD.

I attempted to implement it when I was researching security properties of FEP-ae97 API: https://codeberg.org/silverpill/fep-ae97-server. Back then I didn't know what to do with side effects, but now I think that we can simply force clients to specify them.

Special thanks to @mariusormarius and @trwnhinfinite love โดณ for their input.

#C2S

0

Started laying out a rough plan for implementing FEP-ef61: Portable Objects in โ€”server-independent identities backed by , multi-server replication, and client-side signing. It's going to be a long road (13 tasks across 5 phases, with a few open questions that need answering before we even begin), but I think it's worth doing right.

https://github.com/fedify-dev/fedify/issues/288#issuecomment-3971459585

1
5
0

Anyone asked where the dev communityโ€™s communication went to, can let a broad beaming smile come to their face, svivel their eyes skywards, then make a broad gesture with their arms, and exclaim solemnly โ€œTo the fediverse, my friend. To the fediverseโ€. And the dotted clouds high above in the steel blue sky will smile back at them, wave and gesture, and sing in a non-melodious cacophony โ€œHere we are, come join usโ€.

And so we all do. It is a sight to behold. ๐Ÿฅน

Or with a tad less sarcasm, you might also say: Even though it is a medium that is not up to the task of holding a grassroots open-standards based ecosystem together, has become the preferred channel for communication in the app-centric . Majority of dev happens in the federated cloud and is driven by app owners.

Though luckily there is also a minority of ecosystem atmosphere custodians who help study the weather patterns of the future .

Clouds in the sky, with a radiant sun.
0
0
0

Iโ€™m building a new tool and looking for volunteers to test it! A linktree. (UPDATE: hub.vocalcat.com )

Itโ€™s designed for two types of people:

Normies / newcomers โ€“ Think of it like a free, privacy-respecting Linktree. No trackers, no ads. But here's the cool part: it's a Trojan horse for the fediverse. Your profile link is itself an ActivityPub actor. That means people can interact with it directly in the fediverse, and it encourages exploration of open platforms.

Fediverse users, If you have multiple accounts (, , Loops, a federated blogโ€ฆ), you know the struggle: sometimes you just want one persona to follow. This tool gives you that. It doesnโ€™t post on its own (read-only), but it boosts all your other accounts and even has its own inbox. PLUS it can receive and show your badges issued by @badgefedThe BadgeFed Project !

Interested in testing? Right now it only supports mastodon authentication, so if you have a mastodon account reach out in private mention for the invitation code.

One webpage screenshot in white background and big letters saying Your links, Your Identity our NetworkA screenshot of links in rows, showing a profile with Pixelfed, Blog, Mastodon, LinkedIn links among others.
0
50
1

#Introduction - A new home for longer mountain ramblings & tech dabbling!

After years on a managed Mastodon instance, I've finally jumped into the #selfhosted world! Say hello to my new personal #ActivityPub instance, powered by #GoToSocial from home.

While I test the waters here (and learn all the complexities of managing self-hosting!), this space will be for the longer-form, deeper-dive content:

1. Extended mountain trip reports with more photos.

2. Ramblings on my rather amateur adventures in #technology, #landscapephotography, #lora mesh networks, #degoogling efforts, and #linuxphone solutions.

Think of it as my digital base camp. If you're a mountain person who loves tech (or a tech person who loves mountains), we probably have things in common. Boosts and introductions are welcome!

0

Release v3.3.1 of Ktistec

Todd Sundsted @toddsundsted@epiktistes.com

The latest release of Ktistec addresses the shortcomings of the previous release that became apparent after using quote posts in production for a few days. So far, there have been no major bugs, but there was room for improvement.

Here's the full changelog.

Added

  • Federation documentation (FEDERATION.md).
  • Visibility (private or direct) icon in object summary.
  • Object social activity details include dislikes.
  • "quotes-me" theming class for objects.
  • Notification for quote posts.
  • MCP integration for quote posts.

Changed

  • Renamed NodeInfo siteName to more standard nodeName.
  • Increased hard-coded limits for actor attachments and pinned collections.

Fixed

  • Displaying quoted posts in draft view.
  • Visual indication of nested quotes in object view.

I added a FEDERATION.md document to the project. This is documentation required by FEP-67ff on "information necessary for achieving interoperability with a federated service". The document describes, at a high level, what federation protocols and standards Ktistec currently supports.

#ktistec #crystallang #activitypub #fediverse

Read more โ†’
0
0
0

@damon

Thank you. Yes, indeed. As it happens I was just in chat with Sรฉbastien yesterday. They'll give a presentation at the Practitioners Meetings on the 5th of March.

is positioned to bring "app development" to the intersection of the and ecosystems, and that is very valuable. And also an focused initiative.

I have revamped the delightful lists to de-emphasize app domains and apps that have already established themselves, to highlight the innovative projects that can bring fedi to higher levels. @activitypods is on the developer list.. delightful.coding.social/delig

They are well positioned to offer the 'Solution developer' stakeholders an attractive set of tools. And the opportunity is to marriage the best of 2 worlds. Which is at the same time the big challenge, coping with the worst of 2 worlds. The other day I tooted about this here: social.coop/@smallcircles/1161

0

There's now a proper rendered web interface for FEPs at https://fediverse.codeberg.page/fep/fep/*/, which is much nicer to read than the raw Markdown source on Codeberg. But the canonical permalink, https://w3id.org/fep/*, still redirects to the Markdown file rather than the rendered page.

Would it make sense to update the w3id.org redirect to point to the rendered version instead? It seems like the better experience for anyone following a FEP link, and arguably what a โ€œpermanentโ€ link should resolve toโ€”something human-readable.

I'm not sure who manages the w3id.org/fep/ redirect configuration. (It lives in the perma-id/w3id.org GitHub repo, so it would just be a PR, but I'd want to get community consensus first rather than just send one in unilaterally.)

0
0