Re: Why ignoring unknown mandatory constraints is not stupid

On 11/18/2013 05:55 PM, Jan-Ivar Bruaroey wrote:
> On 11/16/13 7:50 AM, Harald Alvestrand wrote:
>> On 11/16/2013 07:07 AM, Jan-Ivar Bruaroey wrote:
>>> How can blocking it be in accordance with his wishes for a 3D camera?
>> Because a mandatory constraint saying "3D camera" means "I want a 3D
>> camera".
>
> I understand. You'll refuse lots of users who have 3D cameras to avoid
> dealing with the unknown. You, the programmer may be happy
> (initially), while many users are unhappy. That's my problem. If you
> don't see that trap, then many programmers won't either, and fall in
> it. I thank you for demonstrating this.

I don't think personalizing our disagreement is going to get us very far.
It's plain that we disagree. I don't see any sign that one of us is
doing very well in convincing the other.

>
>>   If he was happy with getting a 3D camera some of the time, he
>> could have used an optional constraint;
>
> Saying programmers should always use optional constraints is no
> solution, just like putting a working elevator adjacent to an open
> elevator shaft is no solution (because the problem isn't just "How do
> I get down now?" but "Entering absentmindedly is dangerous").
>
> The problem with mandatory constraints is that they work too well,
> falsely over-constraining in the unknown case, for no good reason to
> boot (apps aren't melting today). So lets change them not to do that,
> without breaking or abandoning them in the cases they do work.

It's the "for no good reason" part I just plain disagree with.

>
> The way you paint mandatory constraints, I see them only ever safe to
> use with Mandatory-To-Implement constraints (an ironic interpretation
> of the name), or for people who don't care about false negatives.
> Actually, they're useful for one more thing: saddling people who
> didn't think about this too deeply with false-negative problems. The
> last group is probably larger than the second one.
>
> The way I paint mandatory constraints, they work only for the
> constraints the browser knows about. This will never falsely block a
> legitimate source. The programmer who truly prefers no UX when the
> browser doesn't support the constraint can query the browser if it
> supports the constraint. If that answer is no, then don't even go to
> camera selection. Out of scope.

Alternatively, the programmer who truly prefers a random result when the
browser doesn't support the constraint can be the one who has to do
extra work.
This argument is symmetric.

>
> In other words, don't make mandatory constraints harder all the time.
> Just change how they deteriorate in the unknown case to favor the
> user. If the programmer doesn't like that outcome, he can add a line
> of code. The user cannot.
>
> This works for everyone.
> This works with webidl.

Only if you are right.

>
> .: Jan-Ivar :.
>


-- 
Surveillance is pervasive. Go Dark.

Received on Monday, 18 November 2013 20:04:29 UTC