The best I can come up with are features that are too complex for small development teams
This is probably the biggest risk.
Another risk is changes that prevent the development of important features in the future.
@jupiter_rowland The two-implementation requirement sounds totally inadequate to me. Does it really work like that?
I think nothing new should ever be added to the core spec unless it is supported by 51% of implementers.
@silverpill 'Implemented' is not boolean, some FEPs have partial implementations, implementations of a prior draft or implementations that do the opposite of a MUST
@eyeinthesky One of such "bug fixes" has already been proposed:
In section 4.1 "Actor objects", the definition of "inbox" uses the imprecise term "reference" and is different from the definition of "outbox", giving the false impression that the range of the "inbox" property is different than that of "outbox". A possible correction is to make the definition of inbox parallel with that of outbox: "An OrderedCollection comprised of all the messages received by the actor; see 5.2 Inbox."
-- https://www.w3.org/wiki/ActivityPub_errata
Previously, inbox was a reference, but now an embedded inbox collection will be considered valid:
{
"type": "Person",
"inbox": {
"type": "OrderedCollection",
"items": []
}
It's a breaking change. I don't actually mind the change itself, but the way it was made. When I pointed out that this change affects existing implementations and asked to amend the erratum, other participants literally started to gaslight me with "there is no change" and completely ignored my objections.
@dimkr I mean implementers of ActivityPub specification. I think if a feature doesn't rise to the level of "most projects should support it", it shouldn't be included in the specification.
FEPs are a different story, In many cases 2 independent implementations of a FEP is enough.
@silverpill I agree, huge parts of the spec don't have enough interoperable implementations to justify them. However, this rule also means it's super hard to 'upstream' a FEP into the spec because it's hard to count implementations that do exactly what the FEP says.
@silverpill @julian @slyborg Those are really good. I'm going to see what I can do to collect some of these concerns before we get started with the WG.
@evan@cosocial.ca I also agree with @silverpill@mitra.social that complexity is the enemy of progress.
I've seen firsthand good ideas that wither on the vine because they're too complicated to implement. Partly it could be because they're complex ideas that require refactoring or abstractions of existing code, or straightforward ideas couched in complex language.
The latter is especially unfortunate, because the solution is just good plain technical writing.
I like to think I'm a fairly good technical writer, although that hasn't been empirically proven 
@silverpill I think you're talking about documenting existing practices rather than making new standards. The point of the two implementations rule, I think, is to show that the new standard is feasible and implementable. Feedback from that implementation stage informs the final standard.
@evan@cosocial.ca @silverpill@mitra.social fwiw (sorry to butt in), "most implementations" is hard to prove... where do you draw the line, by software MAUs? Down to the instance (% of active fediverse)? Gut feeling (vibes!)?
One could also argue that Mastodon alone qualifies 
Citiverse è un progetto che si basa su NodeBB ed è federato! | Categorie federate | Chat | 📱 Installa web app o APK | 🧡 Donazioni | Privacy Policy