Gitea + ActivityPub/ForgeFed

Hey @bill-auger and @fr33domlover,

I’ve filed an issue to concretely outline the problems that will need to be addressed within Gitea to prepare it for supporting ActivityPub, and therefore in preparation for the ForgeFed behaviors outlined so far in the spec.

It’s a lengthy issue because there’s a lot of work to do before the ForgeFed specifics are touched upon, but I wanted to make y’all aware that I am pushing them to get thinking about Federation for the coming 2021 year.


your new ticket did not reference the previous discussion # 9045

  • it looks that the topic was discussed thoroughly; and it was
    left open as a reference for anyone who wants to help further the

not that it is terribly relevant to that topic, but please
allow me to nit-pick a bit one small detail (it’s been a while) -
you highlighted “open-source leadership opportunities” as an
important factor for why someone may want to contribute to the
effort; and that a “possible outcome” of forge fed, would be
that people who want to help may be “allowed” to help - that
struck me as an impoverished presentation of the effort, or
software freedom in general

the fact is that, with any freely licensed software, anyone who
wants to “pioneer” anything which they desire, always has
that “opportunity”, regardless of any co-operation/approval of
previous contributors - the software license alone, guarantees
that - a CC0 license, essentially screams-out: “this project does
not need any leaders - do-ers alone, can do it” - this was an
important consideration when choosing the license; and the
abandoned forge-fed presence on github is a stark reminder of
how leadership is as likely to impede an effort, as to assist it

leadership is not the essential factor, WRT making progress -
the essential factor is only that people are willing to step in
and do the work, and that other people will recognize good work
when they see it - no responsible project would reject valuable
contributions; and all due credit is typically given to each
contributor, solely on the merits of the contribution, and not
anyone’s “role” or hierarchical status

the way in which leadership was presented as such a coveted
“opportunity”, suggests that the lure of leadership should be a
motivating factor for why someone would contribute to a project;
and that all free software projects should have an exclusive
aristocracy of leaders, who make all decisions and receive all
of the glory, with lowly “volunteers” at their mercy - i could
not disagree more - in reality, everyone is a volunteer; and in
practice, such hierarchical governance is only tenable for a
proprietary software project

so, forge-fed has no “leadership roles” to offer; and it does
not need any - consensus is immensely more valuable than
leadership, especially because the project is intended to be a
conventionally used standard, and is not going to use any
marketing/advertising tactics to persuade adoption

anyone who is interested, is welcome to participate in any
capacity within their capabilities - that is generally true
for every free software project - WRT forge-fed, every aspect of
the requirements and design, has been discussed by dozens of
people, and all reasonable opinions and use-cases have been
given fair consideration, starting since years before the
forge-fed name was adopted, when only a small handful of people
in the world were interested in forge federation - this is
really not unique to forge-fed - all free software projects work
best that way

Certainly didn’t mean to give that impression, Bill! I hear your elaboration around there being no formal ForgeFed leadership roles and there being no hierarchy. I agree with you and the sentiment.

My intention was to capture the fact that whoever does aid in doing the work will have the opportunity to provide a new voice to the ForgeFed community. Since the changes would be novel to Gitea users, it presents a new opportunity to listen to concerns/feedback from Gitea users in particular, and the people that do the work would be able to transform those concerns into possible actions/feedback/standards work here on the ForgeFed angle, if the nature of the feedback requires it. That is indeed an expansion of someone in the Gitea community’s experience, without requiring any formalism/hierarchy on their part or in the ForgeFed community, as I don’t believe they’ve been actively providing ForgeFed feedback today. And this expansion is indeed a form of community leadership, because leadership does not require a hierarchy nor formality.

As you say, “the essential factor is only that people are willing to step in and do the work”, but I want to encourage folks to go a little bit further. I simply want to avoid a situation where people “finish” adding ActivityPub+ForgeFed support to Gitea, brush the dirt off their hands, and call it a day with no further changes. I don’t think anyone specifically has this view, but in trying to motivate folks in the Gitea community I have seen a few comments that worry me that an outcome could be “read the ForgeFed spec, do exactly as it says, but don’t participate in creating/modifying it, tick a box, and move on”. I wanted to gently push back against that outcome too. I’d love for it to be that everyone has a positive & constructive history of communications. Thus a healthy part of the technical work (which, yes, is “implement ForgeFed”) also includes long-term, two-way, constructive dialogue. And that to me that does involve leadership qualities – even if a person is (rightfully) not leading any person/peoples/hierarchy formally – such a person is implicitly expanding that software community’s circle of impact on others.

Also, in that GH issue, I did list some grants available for some of this work. Those grants do require some formalization of people & work in order to put in the effort to apply for the grant, and then execute. So I can see how that more formal view could have (mistakenly) been applied to the other section. I didn’t intend for that concept to spill over.

Hopefully this all puts your mind at ease! Happy to hear where you disagree with me, if you still do. I do believe we’re aligned on core values, I just need to work on my communication as always.

Ah Bill, I see the concerning language where I said “help to pioneer additional ForgeFed behavior and take a leadership role there”, I didn’t mean a formal leadership role, just someone “taking a lead on voicing any problems/limitations/questions found when doing the work”. I’ve changed that language to be: “pioneer additional ForgeFed behavior and be a voice there”.

Hopefully that more accurately conveys what I meant, and that you also find it better.

I still view “community leadership” (ex: you are a community leader, to me :slight_smile: ) as being different than a formal leadership role, so I kept that language, but let me know if you still disagree with me on that.

1 Like

it does - i was only nit-picking details - the intention is
great, and you clearly put a lot of effort into the proposal -

  • im glad to see people encouraging forge devs to implement it -
    and yes, better than merely implementing, to participate in its

also, the point is indeed accurate WRT formal funding - if
someone gets funded to work on some aspect of it, the funding
organization would expect that person to be responsible for
executing the goals of that specific proposal

1 Like

Hi @cjs & @bill-auger!
I haven’t been here for quite a while. Trying to weave some dev work now into my days and weeks.
I haven’t read this very long thread but I saw the detailed plan for federation in the Gitea issue. Thank you very much for pushing for that!

We keep waiting for someone to roll the sleeves and grab that work, but nobody does. Weird, right? So many people wanting federation, surely some of them would love to get funded making free software, right?
Perhaps the detailed plan will help motivate devs to work on this :slight_smile:

I’ll be adding more vocabulary and instructions in the spec, and hopefully spec discussion will resume here in the forum too as we enter more topics and aspects that need wise modeling.

1 Like