w3ctag / ethical-web-principles

W3C TAG Ethical Web Principles
https://w3ctag.github.io/ethical-web-principles/
Other
70 stars 17 forks source link

Decentralization vs federation #54

Closed rhiaro closed 1 year ago

rhiaro commented 3 years ago

The EWP says:

we favor a decentralized web architecture

Subsequent discussion about whether "decentralized" is the right word, or if "federated" might be better. There are lots of nuances and varying definitions of both so it's not immediately obvious which we should use.

rxgrant commented 3 years ago

Federation is pretty easy to capture. I can't imagine why good engineers would settle for it when decentralization is possible.

LeaVerou commented 1 year ago

Is there a good source for the difference? I personally wouldn't be able to explain it coherently.

darobin commented 1 year ago

At the risk of being too tl;dr: federation remains a server-centric model, but you can have a whole bunch of servers and they'll talk to one another (like email). Each server can (in theory at least) set up its own governance and have local rules. Decentralised is broader and vaguer, but is often understood to have a stronger notion of peer-to-peer and possibly of self-certification.

I would say that it is correct that the Web as it exists today is much more federated than it is (in the broadest sense) decentralised. The sentence however is we favor a decentralized web architecture — that could still be true, even if the current web falls pretty far short of that mark.

I don't think that it's readily obvious that federation is less capture-resistant. Federation makes forms of collective action possible that are very difficult in a radically individualistic framework and could, in some cases, be more capture-resistant than alternatives. Defining a full threat model methodology for capture resistance would be desirable (I might be repeating myself…) but likely extends the bounds of this document.

cwilso commented 1 year ago

I would point out that @darobin 's comment is why we worded this in the AB's Vision document as "Ensure the Web does not favor centralization".

darobin commented 1 year ago

This isn't the right place for this conversation, but I think that this captures exactly why I think the AB Vision document doesn't work :) I don't think that being written to be evasive helps us. If we can't craft a vision that's better than the lowest common denominator of our members, then we're not making much of a case that consensus works.

cwilso commented 1 year ago

It wasn't written to be evasive; it was written to the understanding that simply saying "we will decentralize" isn't really a rational goal.

darobin commented 1 year ago

If the AB believes that decentralisation is an irrational goal, the document should state that clearly and openly. I shouldn't need to have been in the room when it was written to understand that the intent hidden behind that one bullet point is to establish as policy that the W3C doesn't decentralise, it only kinda-maybe-not-centralises. This takes a politically charged (and, IMHO, entirely wrong) position that wouldn't fail to draw criticism if it were voiced clearly, and hides it behind a nuance in a short and superficial sentence. In what ways is this not evasive?

cwilso commented 1 year ago

1) don't recast side comments that I might personally make as "what the AB believes" - I don't speak for the entire AB. 2) My point was that - as you just said - you can't just say "decentralize the web", or you'll conflate federation with decentralization (which is imo also a mistake).

You are correct to interpret the current AB vision draft as NOT unequivocally saying "the W3C will decentralize the web". I cannot currently see how to make that fully achievable (without relying heavily on federation, which I think is... questionably close, or utilize unacceptably high power consumption). If there's a clear map to that, great, let's discuss. But please don't try to politically charge a pragmatic approach; I'm certainly open to change, and took no such politically charged stance.

torgo commented 1 year ago

We have closed this based on #87

darobin commented 1 year ago

@cwilso I only took it as an AB position because you presented this as "why we worded this."

I'm not at all trying to politically charge a pragmatic approach, I'm only trying to explain (again) why the Vision document doesn't work. You (be it personally, the AB, or whoever was holding the pen) claim that it is not pragmatic that the W3C will decentralise the Web. I think that:

Again, this is not the place for a detailed discussion. I just wanted to make it clear that I am not pointing fingers at you or whatnot, only pointing out that this is a clear example of how the approach taken by the vision doc just doesn't work, especially not in light of the other values it supports. I think that we need to ready a better alternative for governance week.

cwilso commented 1 year ago

@darobin You are again taking nuanced statements I make, and turning them into grand claims and bold and opinionated statements. They are not intended to be so.

I would point out that the way the TAG has resolved this (in #87 ) I actually quite like, and just filed a PR to adopt that language in the Vision document. (https://github.com/w3c/AB-public/pull/51).

If you believe that "the approach taken by the vision doc just doesn't work," I would like to strongly request that you have that discussion in the Board and include the AB at least in the conclusion, because telling me our work is without value is something I'd rather know sooner, so as not to waste any more time on it. (If a waste it is.)

dwsinger commented 1 year ago

I think that the Vision document is a vision that is an improvement on the 'full potential', but by itself it's not enough. And it also can be improved. I don't agree we should discard this work because it doesn't answer every question. I think it can be used to make value-based judgments about alternatives, can be used to explain ourselves to the rest of the world, for example. For me, it's too 'negative' (mitigating harms) and not enough positive (what we will actively enable), not actionable enough, and so on. But these can be addressed through refinement or supplementary documents.

darobin commented 1 year ago

@cwilso I am not changing anything to what you are saying, only pointing out that what you are saying is not articulated in the Vision doc. The more you claim that there are nuances — and nuances that one would be correct to somehow interpret from the document — the bigger the problem! If there are nuances that are meaningful for the vision, then I'm not sure why you find it objectionable to point out that the document should very much be forthcoming about these nuances rather than expecting that people should be steeped in the lore of interpreting it and happen to know a guy who was in the room?

Picking the (IMHO highly desirable) goal of making "value-based judgments about alternatives" we can imagine being in a WG discussing two contenders for a new ActivityPub feature, one that assumes federation, and the other that is, say, self-certifying (eg. Nostr). If I hadn't discovered here by chance that there was an interpretation I would assume that the latter would be more aligned with values, but someone else might say "oh, no, I was in the room when the AB wrote that, they actually mean the other." I don't think that that's a successful outcome.

I don't think that the Vision doc was a waste because I don't think that we could have known that it wouldn't work without trying. And that's okay? We've all written many things that didn't pan out but moved the work further, no? It was the logical place to start — this is more or less what other orgs do. I just think that the scope and nature of what we're working on turn out not to lend themselves well to the same treatment, and that the fact that we are massively distributed and do not operate with the constant cultural reinforcement that companies perform conspire to make this not work.

To @dwsinger's point, I don't think that this should answer every question (it's not an oracle) but it should nevertheless provide a lot more. If part of the problem we have is that our shared values are vague and that we keep being surprised that they are a lot less shared than we think, then I don't think that we're solving the problem by writing the vague down. We have a lot of that; we're just not using it.

I'll try to write up a proposal tonight.

michaelchampion commented 1 year ago

Sorry to bikeshed, but why are we discussing the AB Vision doc in a (closed) TAG Ethical Web Principles issue?🥴

darobin commented 1 year ago

@michaelchampion Because we happened to be here and it made for a Schelling Point :)

Here's a quick draft, as promised. It has its own repo, so no need to keep discussing here!

dwsinger commented 1 year ago

You know, it's kinda offensive to write something rather than try to improve a work in progress. It implies that you think that that work is irredeemably off course, and that the credits you claim for this are implicitly faults of that.

darobin commented 1 year ago

I'm sorry that you would feel this way. I think that it would be offensive to write something different with significantly the same approach. However the whole point here is try to land this via a path that is very different. I think of it just as when we have more than one input for a WG work item. This way we can compare merits side by side and make a decision to pick, merge, etc. It's what the PATCG is doing, it's what we did with the Privacy Principles, etc.

This is in line with my earlier feedback to the AB and AC discussions that I don't think that the Vision doc is written in a way that connects with the work that people do. It's too abstract, it lacks too much resolution, there isn't enough grit to support a arguments in the field.

One way to address that would be to take each value and drill down into it, writing it up in much greater detail. It could be done and I had that in mind initially. But trying to map it out I came to wonder if that kind of top down approach is right. It's not really how we usually do things and it doesn't feel culturally aligned. So what if instead we went from the ground up, and start with the values in use that we have? We have a lot of good stuff in the horizontal review world (that the AB vision doc doesn't even consider) and we know it's applicable. This way has different flaws, notably that it produces an incomplete set. But we have ways to fix that which I think work and force us to walk the talk - values need a forcing function.

At the end of the day this is the output of a process that started with the AB doc and had me trying to figure out how to make it work as a governance mechanism (only enforced rules exist) and for lack of a better word in what I think of as more of a "web way" (lots of people in different communities maintain a somewhat messy but living and roughly running thing).

This doesn't mean that I don't see the draw of the AB's approach. It's short, it matches more people's expectations, it can list more things. I whipped up a separate doc because I think we benefit from being able to compare, and also because I don't feel like people understood the changes I was advocating for. Exemplifying helps, I would have hoped.

-- Robin Berjon On February 8, 2023 20:35:37 David Singer @.***> wrote:

You know, it's kinda offensive to write something rather than try to improve a work in progress. It implies that you think that that work is irredeemably off course, and that the credits you claim for this are implicitly faults of that.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.

cwilso commented 1 year ago

The work done by the AB on the Vision document has been done in the open, with many contributors, by consistently building consensus across a broad set of constituents - not just from the AB, but beyond. We have presented this multiple times to the AC, and all but begged for participation.

The goal of the Vision work has been to establish the basic principles and vision, and THEN follow up with the strategy of how this can be accomplished. Agreeing on those basic values, and the vision for what the W3C should be, has been a challenging consensus-building exercise. We have goals of this work being clear, approachable and inclusive of our global base, which is not done yet, but requires that we be careful in our language.

If this Vision work were an incubation - like the work in the PATCG - it might be appropriate to offer a wholesale alternative. This, however, is more like offering a personal repo as an alternative to a long-running WG's consensus work, and incidentally stating in that text that it is the source of all truth ("The rare exception is this document, which is produced jointly by all of the W3C's different governance bodies, written specifically to be as short and limited as possible, and is ratified by the entire W3C Membership.")

After having read through your document, I would comment that the Foundations section appears to be a looser, less specific vision and principles than the current Vision work, with new terminology (Subsidiarity?), the Change section seems to violate itself ("In case change is needed to existing values, that work must be carried out in the relevant group"), and the "Values and Vision" mostly a list of tactical ways to achieve a set of high-level principles with no further definition of those principles themselves. Many of those pieces are needed; but starting over with a brand-new set of values that have not been developed by consensus is antithetical to the W3C culture.

I would encourage you again to re-read the current Vision document and participate in its evolution along with the others who have been working there.

darobin commented 1 year ago

Chris, I'm sorry but I don't even know how to process what you're saying here. You claim to have "all but begged for participation" and yet I have repeatedly given this feedback that has been ignored. Not discussed and disagreed with, just ignored. This is long because I'm including some of the paper trail:

We must do better and, in fact, even though few have noticed, we have done better. A value is worth something if it’s there to help you when the rubber hits the road and starts hydroplaning. Sure, you’ll need a handful of high-level lofty values as reminders, if only because there’s always a vocal guy (it’s always a guy) who thinks it’s just outrageous to put people before profits. But mostly you want Values You Can Use. And we have those! The set of practical values that we put to work in developing the Web is captured in the documents that are used in the process of horizontal review: the accessibility checklist and its supporting documents, the internationalisation short checklist and accompanying standards, the extensive work on security and the growing work on privacy, and the TAG’s documents for an ethical Web and design principles. They are somewhat scattered and we need a lot more of these, but a solid, credible, legitimate foundation exists.

An important step that the W3C can take is to identify what is missing from horizontal review. One area in which the Consortium could benefit from having more clearly specified principles is in its own governance. The Advisory Board and the Process CG (in a reformed form) could document the practical values and principles that have been going into their work, with the view that governance itself should be subject to wide review as it evolves.

(I should note that the W3C’s Advisory Board has done some work on a values-based approach which it calls Vision. My personal view is that staying at a very abstract level as they have and not tying it to a process that people have to deal with when they create standards means it is unlikely to have an effect. I also tried to engage with a view towards making the vision more actionable but a year later nothing has happened — the AB is rightly busy with other things on which I believe they can have a greater impact.)

  • I then went ahead and included the very same opinion explicitly in my Board nomination statement. Again, just to make it clear that it wasn't sort of vaguely hinted at on the side, here it is:

The problem with most mission statements — like "leading the Web to its full potential" — is that there is no obvious way to implement them or even to test whether they have been achieved. Providing a vision for a perfect end state with no description of how it would work and even less of how to get there is rarely helpful. Most of the time it simply results in slogans that just get ignored by the people who do the work.

The W3C is a standards organisation, our mission should be assembled from testable assertions. I don’t know what the Web’s full potential is and, if I may be frank, neither do you. I cannot specify an API, format, or protocol for it.

I can, however, see how to make the Web better. I can look at a group’s work and form a clear opinion about whether that improves the Web for people: addressing an unmet need, improving accessibility or internationalisation, supporting better privacy and security, protecting against capture.

This is what is known as a “nonideal” approach: instead of aiming for a perfect imaginary and underspecified state with values that are as lofty as they are vague, we should follow a mission that describes an approach to practical, achievable steps to improve the current imperfect Web. Much of this mission is described not by the mission statement but in the pragmatic ways in which we make sure that we are improving the Web. I see the Consortium’s most important mission as being implicitly conveyed by out horizontal review practices. I believe that the Board must work towards a vision that enshrines this work, helps to show just how central it is, and pushes it forward, setting the standard for standards.

  • And finally, the whole reason we are having this discussion in a closed issue of an unrelated repo is because right there was a great example of exactly why relying on overly abstract values doesn't help us solve anything, and I thought it would make for a better example since it doesn't involve a certain troll we know, but that didn't work either.

At this point I can see that talking directly to the AB both orally and in writing, discussing it with the AC, discussing in public, including it in a high-profile W3C election, and discussing it directly with AB members doesn't work. So what do I do? I figure that hey, clearly I've tried a few ways to explain this and I'm not getting through, what if maybe I took the time to write up what I have in mind I could show instead of tell and that might just help. And so I go and take the time to put together a full-fledged write up of ~1,800 words just to try a seventh different way to get the point across and now you're mad that I'm not using one of the channels in which you're ignoring the input.

So I hate to be blunt guys, but is there a specific breed of carrier pigeon that the AB considers acceptable as a vehicle for feedback? Or maybe if I put on a moustache, a trenchcoat, and a funny voice I'll get some actual engagement from the AB? Because honestly I'm out of options here.

A few additional notes:

The goal of the Vision work has been to establish the basic principles and vision, and THEN follow up with the strategy of how this can be accomplished.

That's how we used to do standards: ship them, and THEN follow up with some implementations. We learnt a valuable lesson as a community doing that: it doesn't work. Why are we ignoring our own experience? It happens to align with governance theory that tells us that unenforced principles have no empirical effect.

If this Vision work were an incubation

Well, if as you say "the strategy for how this will be accomplished" is in the future, that sounds a lot to me like this is an incubation!

a long-running WG's consensus work

I know that AB work is demanding and thankless, and I don't want to diminish what was done, but I don't think that this comparison holds. Looking across both repos, there have been three PRs from non-AB members (one of them mine, all of them from the usual suspects) and fewer than ten issues from non-AB folks. I mean, come on! I'm sorry but I don't believe that you consider this to pass muster as equivalent to long-running WG consensus.

So — I've angered and offended you, and that's not what I was trying to achieve, and for what it's worth I'm sorry. But can we at least agree that the AB hasn't been exactly forthcoming in processing this feedback? Can we also agree that the Vision doc can't be considered to be the subject of broad consensus and should be open to significant re-engineering?

Maybe my writing sucks or maybe how I'm explaining it sucks or maybe my idea sucks or even all of the above. Hey, I'm cool with that, I have bad ideas poorly explained all the time. But I'm not cool with the AB ignoring input and then somehow claiming there's consensus — and I don't think you should be cool with it either.

cwilso commented 1 year ago

Just because your input is not adopted wholesale does not mean you are being ignored.

You clearly point out that "Leading the Web to its full potential" is untestable - i.e., so high-level as to not establish any significant value or principle. (I've frequently asked the question in response "what direction is it leading, and what is its full potential", for example.) In short, indeed, we are agreed that "Most of the time it simply results in slogans that just get ignored by the people who do the work."

Your discussion with the AB, btw, was probably this: https://www.w3.org/2021/07/23-ab-minutes.html#t01.

For example, your previous proposal (https://github.com/WebStandardsFuture/Vision/pull/37) was a direct PR to an extant repo, added an entirely separate document rather than fitting in the the existing framework/scope of definition, and most of all introduced a new principle "sovereignty" that despite your statement was not as described a commonly-accepted principle of the web (in fact, as stated, seemed a bit at odds with some better-known principles like linkability). Rather than have that discussion and build consensus for your idea, you just kind of dropped it, when (as @dwsinger said in that thread) we need a discussion about this. Would we come back to this? Sure, it's still an open issue (https://github.com/w3c/AB-public/issues/17) - with the last commentary on it from an AB member being last week, and I would encourage you to respond, because you engaged once in the PR in reaction to my initial response, and then stopped.

I am upset at your characterization that "the AB hasn't been exactly forthcoming in processing this feedback", as we are of course not sitting around in a circle waiting for your feedback to put it at the top of our list. I certainly wish we had moved the Vision along more over the last year or so - but we were busy trying to migrate the W3C to a legal entity. And yes, the Vision doc IS the result of consensus within the AB at least - certainly far more so than something any one person produces by themself - and it's intentionally high-level principles, so the detail can be better defined and made more actionable elsewhere. If a new principle needs to be added to that list, it actually DOES need to have consensus, from the AB at least (since they're the nominal owner of that document). And we've heard a request from Board members that we need a principled "elevator pitch" document, so I'm not convinced not bothering with the high level is a good idea.

Does the Vision doc need to be "re-engineered"? It certainly needs to be continually refined, and we certainly need to take it to the point of ensuring everything on it is actionable - and yes, certainly, horizontal review a key piece of that puzzle (as we explicitly call out the things the W3C does horizontal review on today). But you took a high-level document, and rather than working within that framework and those principles, to expand on the "grit", just started entirely over, with new principles and values. I can guarantee you that I've personally spent more time on the Vision effort, working with others, than it took you to crank out your 1800 words, so I'm sure you can understand how sensitive I might be to wasted effort.

Throwing away that "high-level vision", and claiming that we were "staying at a very abstract level ... not tying it to a process" misses the point. Your comment that this is "ship them, and THEN follow up with some implementations" is not an appropriate comparison at all. Trying to "go deep principle by principle" prior to building consensus on what the principles even ARE is more like writing the IDL for the API before reaching any agreement that the use cases and scenarios even need to be solved - and THAT is how we used to do standards, and it doesn't work.

torgo commented 1 year ago

Folks it's not appropriate to be having this discussion in our issues. I'm locking this now.