Deceptive Patterns and FAST

A presentation at Devnexus 2023 in April 2023 in Atlanta, GA, USA by Todd Libby

Slide 1

Slide 1

Deceptive Patterns and FAST Framework for Accessible Specification of Technologies

Todd Libby - 6 April, 2023 Devnexus

Slide 2

Slide 2

Thank you

Todd Libby - 6 April, 2023 Devnexus

Slide 3

Slide 3

Todd Libby

• Senior Accessibility Engineer • W3C Invited Expert • Accessibility Advocate • Portland, Maine 🦞 • Phoenix, Arizona 🌵 • Former Executive Head Chef

Todd Libby - 6 April, 2023 Devnexus

Slide 4

Slide 4

What is FAST?

Todd Libby - 6 April, 2023 Devnexus

Slide 5

Slide 5

The Framework for Accessible Specification of Technologies (FAST) advises creators of technical specifications how to ensure their technology meets the needs of people with disabilities.

Todd Libby - 6 April, 2023 Devnexus

Slide 6

Slide 6

FAST was originally designed for internal accessibility spec review at the W3C.

Todd Libby - 6 April, 2023 Devnexus

Slide 7

Slide 7

Goals of FAST

Todd Libby - 6 April, 2023 Devnexus

Slide 8

Slide 8

Fill gaps in authoring tools where there are varying levels of accessibility.

Todd Libby - 6 April, 2023 Devnexus

Slide 9

Slide 9

FAST is intended to be a single, optional, well-considered, potential source of guidelines addressing specifically the features technologies need to provide to support accessibility.

Todd Libby - 6 April, 2023 Devnexus

Slide 10

Slide 10

User & Functional Needs

Todd Libby - 6 April, 2023 Devnexus

Slide 11

Slide 11

User need: A high-level accessibility characteristic of content and/or a user interface that is necessary for users to complete an objective.

Todd Libby - 6 April, 2023 Devnexus

Slide 12

Slide 12

Functional need: A statement that describes a specific gap in one’s ability, or a specific mismatch between ability and the designed environment or context.

Todd Libby - 6 April, 2023 Devnexus

Slide 13

Slide 13

Along with POUR (Perceivable, Operable, Understandabale, Robust) we have added Personalization and Deceptive Patterns with over 1,500 intersections of user and functional needs.

Todd Libby - 6 April, 2023 Devnexus

Slide 14

Slide 14

3 Stages of FAST

Todd Libby - 6 April, 2023 Devnexus

Slide 15

Slide 15

FAST Approach Three stages

• Inventory functional and user needs; • Identify ways to meet needs; • Develop technology guidelines to meet those needs as best as we can.

Todd Libby - 6 April, 2023 Devnexus

Slide 16

Slide 16

“Dark” Patterns

Todd Libby - 6 April, 2023 Devnexus

Slide 17

Slide 17

“Dark” Patterns

Todd Libby - 6 April, 2023 Devnexus

Slide 18

Slide 18

Connotation and Inclusion

Todd Libby - 6 April, 2023 Devnexus

Slide 19

Slide 19

Black/Dark - Evil, disgrace, vile, immoral

• Slave/Master • White Hat/Black Hat • Blacklist/Whitelist • Grandfathered

White/Light - Purity, good, innocence, cleanliness

• Primary/Secondary • Ethical/Non-Ethical Hacker • Deny/Allow-list • Exempt

Todd Libby - 6 April, 2023 Devnexus

Slide 20

Slide 20

Harry Brignull Cognitive Scientist, designer, UX consultant

• 2010 coined “dark patterns” • Gained traction in legal circles • Still used widely today • Deceptive practices go back as far as 1938!

Slide 21

Slide 21

A voting card in 1938 for Germans to vote for Adolf Hitler where the circle for “yes” is large and in the bottom center of the card with the “no” circle off to the right and smaller to separate those and identify those who voted against Hitler

Slide 22

Slide 22

Harry Brignull to Todd Libby

“Also I considered your words about “dark” patterns (and input from others) and I’m in the process of updating the site to use the term “deceptive patterns”. Also my new book will not use the term “dark patterns” as the title.

Todd Libby - 6 April, 2023 Devnexus

Slide 23

Slide 23

Deceptive Patterns or Anti-patterns

Todd Libby - 6 April, 2023 Devnexus

Slide 24

Slide 24

“A deceptive pattern is a deliberate anti-pattern designed to confuse or deceive a user. There is a difference between poor design and unintentional blockers for users.” Functional Needs Subgroup

Todd Libby - 6 April, 2023 Devnexus

Slide 25

Slide 25

“A deceptive pattern is where there is a deliberate attempt to aim or force a user down a particular path or to trap attention in a way that redirects or focuses on a goal, that the user either doesn’t want or need or maybe harmful to them.” Functional Needs Subgroup

Todd Libby - 6 April, 2023 Devnexus

Slide 26

Slide 26

Deceptive Pattern: Deliberate. With intent Anti-pattern: No intent but harmful/bad UX

Todd Libby - 6 April, 2023 Devnexus

Slide 27

Slide 27

Solving User Needs

Todd Libby - 6 April, 2023 Devnexus

Slide 28

Slide 28

Makes Web pages more accessible and usable, less harmful to people with disabilities and neurodivergent users, and creates friendlier and safer user experiences for everyone.

Todd Libby - 6 April, 2023 Devnexus

Slide 29

Slide 29

Barriers & Categories

Todd Libby - 6 April, 2023 Devnexus

Slide 30

Slide 30

Deceptive Patterns Categories of barriers

• Wording • Consistency (Affordances) • Adjustability / Flow blockers • (Time) Pressure • Invasive

Todd Libby - 6 April, 2023 Devnexus

Slide 31

Slide 31

Deceptive Patterns Examples of patterns/anti-patterns

• Trick questions; • Infinite scroll; • Copy and paste is disabled; • Timers; • Asking the user to enable features (microphone, camera, etc.).

Todd Libby - 6 April, 2023 Devnexus

Slide 32

Slide 32

Unsubscribe Shaming Anti-Pattern

Todd Libby - 6 April, 2023 Devnexus

Slide 33

Slide 33

⚠ Trigger Warning 🚨

Todd Libby - 6 April, 2023 Devnexus

Slide 34

Slide 34

CAPTCHA Anti-Pattern

Todd Libby - 6 April, 2023 Devnexus

Slide 35

Slide 35

Subscription Deception Deceptive Pattern

Todd Libby - 6 April, 2023 Devnexus

Slide 36

Slide 36

Obscuring Deceptive Pattern

Todd Libby - 6 April, 2023 Devnexus

Slide 37

Slide 37

Confusing Navigation Anti-Pattern

Todd Libby - 6 April, 2023 Devnexus

Slide 38

Slide 38

Unsubscribe Shaming Anti-Pattern

Todd Libby - 6 April, 2023 Devnexus

Slide 39

Slide 39

Grover shows a picture of who the f🤬k asked

Todd Libby - 6 April, 2023 Devnexus

Slide 40

Slide 40

Pay to Play Deceptive Pattern

Todd Libby - 6 April, 2023 Devnexus

Slide 41

Slide 41

Any current gap in the WCAG guidelines we want to address through FAST and Deceptive Patterns.

Todd Libby - 6 April, 2023 Devnexus

Slide 42

Slide 42

The most important part about bringing Deceptive Patterns to WAI / WCAG 3 is to reduce harm to those who are affected.

Todd Libby - 6 April, 2023 Devnexus

Slide 43

Slide 43

People can use without physical harm or risk (to themselves or others within a physical environment).

Todd Libby - 6 April, 2023 Devnexus

Slide 44

Slide 44

Ways to Meet User Needs

Todd Libby - 6 April, 2023 Devnexus

Slide 45

Slide 45

How to meet user needs:

• Author design & technical implementation • User agent accessibility support of standard & author-implemented features • Assistive technology support (including accessibility API mediation)

Todd Libby - 6 April, 2023 Devnexus

Slide 46

Slide 46

User needs need to be analyzed for how they can be met.

Todd Libby - 6 April, 2023 Devnexus

Slide 47

Slide 47

But…

Todd Libby - 6 April, 2023 Devnexus

Slide 48

Slide 48

What about large companies like Meta, Twitter, Google, etc.? How will you get them to change?

Todd Libby - 6 April, 2023 Devnexus

Slide 49

Slide 49

Ethical Web Principles

Todd Libby - 6 April, 2023 Devnexus

Slide 50

Slide 50

• W3C TAG Ethical Web Principles

• The web should be a platform that helps people and provides a positive social benefit

• Ethical Principles for Web Machine Learning

• This document discusses ethical issues associates with using Machine Learning and outlines considerations for web technologies that enable related use cases

Todd Libby - 6 April, 2023 Devnexus

Slide 51

Slide 51

https://toddl.dev/slides https://raw.githack.com/w3c/fast/restructurefunctional-and-user-needs/index.html https://www.w3.org/TR/ethical-web-principles/ https://www.w3.org/TR/webmachinelearning-ethics/

Todd Libby - 6 April, 2023 Devnexus

Slide 52

Slide 52

Twitter: @toddlibby Mastodon: a11y.info/@todd LinkedIn: linkedin.com/in/todd-libby Website: https://toddl.dev

Todd Libby - 6 April, 2023 Devnexus

Slide 53

Slide 53

Questions?

Todd Libby - 6 April, 2023 Devnexus

Slide 54

Slide 54

Thank you!

Todd Libby - 6 April, 2023 Devnexus