Just heard in #ActivityPub related chat (because I typed it) ..

> Btw, the ad-hoc code-first show-dont-tell mentality is an interesting social dynamic in FOSS, but esp. in the AS/AP open standards based ecosystem, a chaotic grassroots #commons.

https://matrix.to/#/!xfLXShcTEkELTDxuTq:matrix.org/$mmcqJmTVRzrfVEPXhn38VDLNlA8NcEJpHRF-XVM3HCc?via=matrix.org&via=d3v0.me&via=ellis.link

> And it is an understandable dynamic.. devs have invested much time to 'eat' their way through the complexity of building federated apps, and afterwards when they are unlocked, gained the expertise, they want to focus on their app. They are likely to even resist major changes to the spec, even if they'd be ultimately beneficial to them.

This pragmatic approach that often works very well for individual #FOSS projects, is detrimental to formation of healthy #commons.

https://socialhub.activitypub.rocks/t/layered-activitypub/5449/6?u=aschrijver

The link above points out that for AS/AP and #fediverse at large we need to know the domain model of the protocol and al start talking in the same ubiquitous language for good common understanding.

A similar need for a domain model also exists for the #Protosocial#ActivityPub protocol extension, and if that initiative lifts off is one of the first things to flesh out.

(Thanks also to @tijl for pointing out that need to which I 馃挴 agree)

https://discuss.coding.social/t/protosocial-activitypub-protocol/665

@strypey
That's a start!
Although agreeing on what a "domain model" is (as in let's use DDD / Eric Evans) is not sufficient.

We also first need to agree on the object of the domain model.

Is it 'all human collaboration' ...

or is it a narrowly defined subset of human *interaction* commonly called 'social media', specifically publishing/reacting to each others media ** in an identity-centric way **.

A common framing of 'the domain' is essential to a useful discussion.

@smallcircles

@tijl @strypey

Yes there are many ways to slice leading to entirely different models. In terms of categories I discern:

- Business domains (e.g. Microblogging, Content management).
- Application domains (e.g. ForgeFed, Mastodon).

Above I refer more to a meta-model, but expressed as a business domain it'd be something like "Protocol development".

Protocol layers, transports, extension points, wire formats, conceptual architecture, etc. So we can talk about #ActivityPub in ubiquitous language.

@tijl @strypey

As an example, a recent related topic by @lax on #SocialHub mentions clearer layering of the protocol stack..

https://socialhub.activitypub.rocks/t/layered-activitypub/5449

In another recent topic on #ActivityPub C2S I mention a need to discern between conceptual architecture and implementation. "Server" and "client" aren't part of the conceptual architecture, and likely need a different place in the domain model on that basis. They are different kind of abstractions than e.g. an "actor".

https://socialhub.activitypub.rocks/t/liberating-clients-from-servers-without-throwing-out-baby-with-bathwater/5416/15?u=aschrijver

1+ more replies (not shown)