Deceptive Patterns and FAST Framework for Accessible Speci cations of Technologies CodeMash 2023 fi Todd Libby - 19 January, 2023

Todd Libby • • • • • • Senior Accessibility Engineer W3C Invited Expert Accessibility Advocate Phoenix, Arizona 42 years experience 24 years professionally Todd Libby - 19 January, 2023 CodeMash 2023

#CodeMash2023 #DeveloperCommunity #Accessibility Todd Libby - 19 January, 2023 CodeMash 2023

Thank You! Todd Libby - 19 January, 2023 CodeMash 2023

Todd Libby - 19 January, 2023 CodeMash 2023

What is FAST? Todd Libby - 19 January, 2023 CodeMash 2023

The Framework for Accessible Speci cation of Technologies (FAST) advises creators of technical speci cations how to ensure their technology meets the needs of people with disabilities. fi CodeMash 2023 fi Todd Libby - 19 January, 2023

Goals of FAST Todd Libby - 19 January, 2023 CodeMash 2023

FAST was originally designed for internal accessibility spec review at the W3C. Todd Libby - 19 January, 2023 CodeMash 2023

WCAG WAI-ARIA ATAG (Authoring Tool Accessibility Guidelines) UAAG (User Agent Accessibility Guidelines) ACCG (Accessibility for Children Community Group) Todd Libby - 19 January, 2023 CodeMash 2023

User & Functional Needs Todd Libby - 19 January, 2023 CodeMash 2023

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 - 19 January, 2023 CodeMash 2023

Functional need: A statement that describes a speci c gap in one’s ability, or a speci c mismatch between ability and the designed environment or context. fi CodeMash 2023 fi Todd Libby - 19 January, 2023

3 Stages of FAST Todd Libby - 19 January, 2023 CodeMash 2023

FAST Approach Three stages • Inventory functional and user needs; • Identify ways to meet needs; • Develop technology guidelines. Todd Libby - 19 January, 2023 CodeMash 2023

FAST Approach Stage One • Many user needs are well-known; • Documented in multiple places; • Collected and related to each other; • Arrive at a single set of user needs. Todd Libby - 19 January, 2023 CodeMash 2023

FAST Approach Stage Two • Technology features; • Author implementation; • User agent support. Todd Libby - 19 January, 2023 CodeMash 2023

FAST Approach Stage Three • If the author must implement something… • If the user need is met by design… • If the user need is met by user agents… Todd Libby - 19 January, 2023 CodeMash 2023

“Dark” Patterns Todd Libby - 19 January, 2023 CodeMash 2023

“Dark” Patterns Todd Libby - 19 January, 2023 CodeMash 2023

Connotation and Inclusion Todd Libby - 19 January, 2023 CodeMash 2023

Black/Dark - Evil, disgrace, vile, immoral White/Light - Purity, good, innocence, cleanliness Todd Libby - 19 January, 2023 CodeMash 2023

Deceptive Patterns or Anti-patterns Todd Libby - 19 January, 2023 CodeMash 2023

“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 - 19 January, 2023 CodeMash 2023

“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 - 19 January, 2023 CodeMash 2023

Deceptive Pattern: Deliberate. With intent Anti-pattern: No intent but harmful/bad UX Todd Libby - 19 January, 2023 CodeMash 2023

Solving User Needs Todd Libby - 19 January, 2023 CodeMash 2023

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 - 19 January, 2023 CodeMash 2023

Barriers & Categories Todd Libby - 19 January, 2023 CodeMash 2023

Deceptive Patterns Categories of barriers • Annoying / Unwanted (Unexpected) • Not using a ordances • Vestibular • Not activated / Not controlled by user • Indicators • Unwanted content / advertising / without user knowledge ff Todd Libby - 19 January, 2023 CodeMash 2023

Deceptive Patterns Categories of barriers • Wording • Consistency (A ordances) • Adjustability / ow blockers • (Time) Pressure • Invasive ff fl Todd Libby - 19 January, 2023 CodeMash 2023

Deceptive Patterns Examples of patterns/anti-patterns • Trick questions; • In nite scroll; • Copy and paste is disabled; • Timers; • Asking the user to enable features (microphone, camera, etc.). fi Todd Libby - 19 January, 2023 CodeMash 2023

Unsubscribing Anti-pattern • Confusion? • Intent / No Intent? • Deceitful? • Accessibility?

Preferences Deceptive Pattern • Confusion? • Intent / No Intent? • Deceitful?

Preferences Anti-pattern • Confusion? • Intent / No Intent? • Deceitful? • Accessibility?

Preferences Anti-pattern • Confusion? • Intent / No Intent? • Deceitful? • Accessibility?

Any current gap in the WCAG guidelines we want to address through FAST and Deceptive Patterns. Todd Libby - 19 January, 2023 CodeMash 2023

The most important part about bringing Deceptive Patterns to WAI / WCAG 3 is to reduce harm to those who are affected. Todd Libby - 19 January, 2023 CodeMash 2023

People can use without physical harm or risk (to self or others within a physical environment). Todd Libby - 19 January, 2023 CodeMash 2023

Ways to Meet User Needs Todd Libby - 19 January, 2023 CodeMash 2023

How to meet user needs: • • Author design & technical implementation • Assistive technology support (including accessibility API mediation) User agent accessibility support of standard & authorimplemented features Todd Libby - 19 January, 2023 CodeMash 2023

User needs need to be analyzed for how they can be met. Todd Libby - 19 January, 2023 CodeMash 2023

But… Todd Libby - 19 January, 2023 CodeMash 2023

What about large companies like Meta, Twitter, Google, etc.? How will you get them to change? Todd Libby - 19 January, 2023 CodeMash 2023

Ethical Web Principles Todd Libby - 19 January, 2023 CodeMash 2023

• W3C TAG Ethical Web Principles • The web should be a platform that helps people and provides a positive social bene t • 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 fi Todd Libby - 19 January, 2023 CodeMash 2023

Acknowledgments Todd Libby - 19 January, 2023 CodeMash 2023

• Jake Abma (Invited Expert) • Joshue O Connor (Invited Expert) • Michael Cooper (W3C/MIT) • Charles Hall (Invited Expert) Todd Libby - 19 January, 2023 CodeMash 2023

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 - 19 January, 2023 CodeMash 2023

Twitter: @toddlibby Mastodon: a11y.info/@todd LinkedIn: linkedin.com/in/todd-libby Website: https://toddl.dev Todd Libby - 19 January, 2023 CodeMash 2023

Questions? Todd Libby - 19 January, 2023 CodeMash 2023

Thank you! Todd Libby - 19 January, 2023 CodeMash 2023