←back to thread

Web Translator API

(developer.mozilla.org)
97 points kozika | 4 comments | | HN request time: 0s | source
Show context
troupo ◴[] No.44375326[source]
While this might be useful, be mindful:

- it's experimental

- the "specification" is nowhere near a standards track: https://webmachinelearning.github.io/translation-api/

Of course it's already shipped in Chrome, and now Chrome pretends that its own Chrome-only API is somehow standard. Expect people on HN to blame other browsers for not shipping this.

replies(2): >>44376319 #>>44377080 #
moron4hire ◴[] No.44377080[source]
This is the W3C standardization process.

The W3C is not a prescriptive standardization body. It doesn't have any regulatory power giving it any teeth to go after vendors acting in bad faith. So the W3C process is descriptive and encourages a period of competitive divergence in implementations. It is only after the early adopters have hammered on the features and figured out which parts they like best that a Web API can then start to get standardized.

replies(1): >>44380016 #
troupo ◴[] No.44380016[source]
> This is the W3C standardization process.

Let me quote the site for you

--- start quote ---

This specification was published by the Web Machine Learning Community Group. It is not a W3C Standard nor is it on the W3C Standards Track.

--- end quote ---

> So the W3C process is descriptive and encourages a period of competitive divergence in implementations.

That is exactly opposite of how the w3c standardization process works

> It is only after the early adopters have hammered on the features and figured out which parts they like best that a Web API can then start to get standardized.

Yes, and until then this work is not supposed to be enabled by default

replies(1): >>44385808 #
1. moron4hire ◴[] No.44385808[source]
You're quoting from their literal, W3C-format working draft, quoting the name of the W3C working group that has been formed to standardized this.

Being "standards track" means the spec is out of draft and has been proposed. It does not mean "we intend to standardize this". It means, "we've put in all of the work to standardize this and are waiting on final acceptance".

I don't know what you mean by "isn't supposed to be enabled by default". There is no mention of when browser vendors may or may not ship features in the standardization process.

replies(1): >>44386908 #
2. troupo ◴[] No.44386908[source]
> You're quoting from their literal, W3C-format working draft, quoting the name of the W3C working group that has been formed to standardized this.

The literal "Draft Community Group Report" (and not a working draft) is a literal link to w3c standardization process: https://www.w3.org/standards/types/#CG-DRAFT

Since the words "not on the W3C Standards Track" from the document didn't persuade you, you could go to the actual w3c process and answer a few simple questions:

- is "Draft Community Group Report" a document on a standards track?

- what does it take to get on the standards track?

- what does it take to "put in all of the work to standardize this and wait on final acceptance", and how many steps there are between "Draft Community Group Report" and this stage?

> I don't know what you mean by "isn't supposed to be enabled by default".

For a person who is so confidently talking about the w3c standards process, I'm surprised you don't.

w3c doesn't explicitly state this. Except for the final few stages, all steps in the process contain the following: "Software MAY implement these specifications at their own risk but implementation feedback is encouraged."

However.

Since this is browsers we're talking about, it means that whatever browsers ship enabled by default will remain in the wild forever because people will immediately start depending on that implementation.

Additionally, a standard cannot become a standard until there are at least two independent implementations of a proposed feature. This is to eliminate the possibility to ship purely internal APIs, or depend on a single library/implementor.

So the way to do it, especially for APIs that are nowhere close to being "waiting for final acceptance" is: ship behind a flag, iron out issues and differences, perhaps change the API (and changes to API happen all the time), then ship.

Of course, Chrome shits all over this process and just ships whatever it wants to ship.

replies(1): >>44390693 #
3. moron4hire ◴[] No.44390693[source]
> However.

No "however". The W3C is not actually a standards body. They don't get to tell people what to do. The W3C even knows this, even though we all colloquially call these things "standards", they're actually just "Recommendations".

The FCC is a standards body. NIST is a standards body. You go against them, you get fined. Messing with weights and measures is one of two crimes defined in the US Constitution, they both come with the death penalty, and the other one is treason.

That's not the W3C. You go against the W3C, worst case scenario, Apple says, "nah, we ain't gonna do that" and then Web devs don't adopt your feature because they can't run it on one of the biggest platforms: Safari on iOS, the only browser allowed to run on iOS.

What you've just pointed out is the W3C explicitly saying it doesn't mind if browser vendors implement features early. They "MAY" do it. And then they remind everyone the risk is on the vendor if the eventual sta... excuse me, "recommendation", diverges from what does eventually get standardized.

replies(1): >>44394523 #
4. troupo ◴[] No.44394523{3}[source]
> No "however". The W3C is not actually a standards body.

Oh look. You've stopped claiming that this spec is on the standards track, that the final step is just final acceptance, or that there's an actual standardisation process.

You've now switched to saying that this is not an actual standardization process and to pretending that I said something I never did: that w3c enforces standards.

Imagine if you actually knew anything about what you were talking about and argued in good faith.

Adieu.