A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/w3ctag/design-principles/issues/455 below:

When introducing heuristics or "magic", also include a way to override them · Issue #455 · w3ctag/design-principles · GitHub

Heuristics are great because they save time and ease migration costs, but when they fail they can degrade the user experience far more than if there was no heuristic at all, especially if they are used in parts of the platform that cannot be avoided. As a general UI/UX principle when introducing heuristics, one should also include ways to override the heuristic.

Overriding should be possible in both directions, if it makes sense in both directions:

No override is necessary if the heuristic is 100% accurate in one direction.

The need for overrides is affected by two factors:

  1. How good is the heuristic? I.e. what is the rate of false positives/false negatives (for binary heuristics) or distance from the ideal value (for numerical heuristics). This is often very hard to determine before shipping! Overrides are still needed even when the heuristic is excellent (since it's not 100% or it wouldn't be a heuristic), but in that case they can be less prominent.
  2. How does it affect the user experience when the heuristic is wrong? Are there alternatives? Overrides may not be needed if the heuristic produces no user observable effect (e.g. is only used for analytics) or the feature is one of many that solve the same problem.

Examples from the web platform:

Example that came up later: The web’s same origin policy is a heuristic that is attempting to infer the end-user’s desired privacy boundary from the URL structure. In many cases that matches user intent, but in some cases it does not:

There are no mechanisms to override false negatives that I’m aware of. Mechanisms to override false positives include CORS, First Party Sets, Cross-window Messaging etc, but each imposes different restrictions. However, this is likely acceptable, since making it possible to override heuristics that exist to protect end-users’ privacy and security should be approached with a lot of care.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4