Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rethink the term "mobile" #3

Open
rachaelbradley opened this issue Jul 21, 2023 · 24 comments
Open

Rethink the term "mobile" #3

rachaelbradley opened this issue Jul 21, 2023 · 24 comments
Labels
Please Review This item needs wide review before being added to the agenda

Comments

@rachaelbradley
Copy link
Contributor

As we write guidance for pointers, gestures, and motion actuation, we should consider rethinking using the term "mobile."

https://lists.w3.org/Archives/Public/w3c-wai-gl/2023JulSep/0065.html

@patrickhlauke
Copy link
Member

To give a "too long; didn't read" of my lengthy post: focus on features (motion sensor? touchscreen/pointers? typically small viewports?) rather than trying to pigeonhole characteristics into a single device type, as boundaries between device types have been increasingly blurred for ages and are simply outdated/inaccurate.

@GreggVan
Copy link

GreggVan commented Jul 21, 2023 via email

@rachaelbradley rachaelbradley added the Please Review This item needs wide review before being added to the agenda label Aug 3, 2023
@Myndex
Copy link
Member

Myndex commented Aug 5, 2023

As the intent for WCAG3 is to base guidelines on user need, IMO "mobile" is not a user need in this context.

User needs that are part of mobile UX would seem to include:

  • user needing larger text can zoom text up to (48px TBD or per visual angle), such that text reflows without breaking content and without requiring scrolling in the direction of reading. (no horizontal scroll for L2R or R2L languages).

  • user is not restricted from zooming content (without reflow), and zooming does not affect the availability of touch activated controls.

  • user has adequate spacing of controls, adequate touch target size

  • user can focus controls on designed-for-mobile content using a keyboard or other non-touchscreen device (gestures/touch have alternative engagement or AT access)

  • user is not restricted from reorienting content between portrait and landscape.

  • user is not prevented from requesting desktop version of site.

  • user is not distracted when using the mobile device for navigation tasks.

Thoughts

With these examples, it should be clear that while important for mobile, these have use in other contexts—the values for some features such as zoom will undoubtedly need to be different—arguably zoom specifications should be aligned with available screen real-estate and resolution, rather than "zoom for mobile".

So, if the items such as zoom, contrast, focus, are handled for mobile in each of the respective, related guidelines, then a separated "mobile" group is needed only for things such as "user is not prevented from requesting desktop version" or "not distracted when using the mobile device for navigation"...

@LJWatson
Copy link

LJWatson commented Aug 6, 2023

To extend @GreggVan's comments, hybrid devices are now commonplace - laptops with touch screens, even desktop monitors with touch screen capability, so +1 to @Myndex's suggestion to frame things around user needs rather than device characteristics.

@patrickhlauke
Copy link
Member

To extend @GreggVan's comments, hybrid devices are now commonplace - laptops with touch screens, even desktop monitors with touch screen capability

as I pointed out in my original post, yes

@KimPatch
Copy link

KimPatch commented Aug 7, 2023

My two cents:

A desktop or laptop with a touch screen is a little like a mobile device, but is also different in many ways. And a smart phone with a full-size keyboard plugged in is a little like a laptop, but is also different.

One big difference between mobile and desktop is context – the mobile phone is with you all the time and the laptop you have to sit down for. It’s not the same experience (even if you have a VR headset, which is a whole different subject…) because when you're walking down the street you’re moving. This makes for a different experience.

Most of the growing number of people who use smart phones as their go-to devices don't have VR headsets and are dealing with small screens and platforms with different abilities than desktops and laptops. Development is different on mobile, to the extent that there are apples-to-oranges issues in WCAG for mobile developers.

I agree that framing things around user needs is good. One key thing users need is to be able to choose what form of input and output to use at any given time, including mixed input and output. Making sure mobile is addressed well – however that happens – will help. It's not addressed well now.

Dictation is faster? It can be. It depends how and where it’s used. It’s also different, and also still not well addressed in standards. Speech input includes dictation and also using speech to control the device. These are two different animals.

Also here's a really good resource around mobile development:
https://appt.org/en

@patrickhlauke
Copy link
Member

patrickhlauke commented Aug 7, 2023

Kim ... in that case, boil down what the actual thing is that is different. don't use a generic term and say "mobile", trying to lump all sorts of different (and often blurry/fluid) devices into it. Focus on the underlying feature/user need.

Development is different on mobile, to the extent that there are apples-to-oranges issues in WCAG for mobile developers.

i believe your distinction here is more "web application versus native application". the same applies just as well for development of native applications on laptops/desktops. (so nothing to do with "mobile" per se)

And, to bring to a point: the fact that in WCAG 2.1 "Pointer Gestures" came from MATF, and (if using the same mapping of TFs) is lumped under "Mobile" in WCAG 3, is slightly nonsensical, since the SC applies to mouse on desktop/laptop just as well. Same with "Label in Name" ... originated in MATF, but hard pressed to work out why anybody would consider it a "mobile" only issue. That was my point in the original thread and here...the pigeonholing by device category (which is flawed these days anyway, as there's no clear delineation anymore of what is and isn't a "mobile" device, and many characteristics associated historically with "mobile", like touchscreens, are now present in all sorts of other devices outside of the classic "mobile" bucket) was never a good idea, and we should not carry it forward into WCAG 3

@u9000-Nine
Copy link
Member

Kim ... in that case, boil down what the actual thing is that is different. don't use a generic term and say "mobile", trying to lump all sorts of different (and often blurry/fluid) devices into it. Focus on the underlying feature/user need.

One thing that I believe is still limited to mobile devices is the ability to control the direction of scrolling. On laptops and desktops, one can either use the arrow keys or the scroll wheel to only scroll in one direction. By default on a mobile device, however, one must use their finger to physically move the content, which can make scrolling on pages with long tables or code samples particularly annoying. This means that it might be better to have tables and pres with overflow: scroll on mobile, when on desktop, that can sometimes cause keyboard traps.

The reason I bring this up is because I think it's still useful to have an idea of mobile when writing the criteria. I'm all for publishing them without mentioning specific device types, but I worry that if we don't consider specific device types while writing the criteria, we might forget about some of the few remaining differences.

This is more of something to think about going forwards than it is a specific issue with this proposal.

@patrickhlauke
Copy link
Member

patrickhlauke commented Aug 15, 2023

One thing that I believe is still limited to mobile devices is the ability to control the direction of scrolling. On laptops and desktops, one can either use the arrow keys or the scroll wheel to only scroll in one direction. By default on a mobile device, however, one must use their finger to physically move the content, which can make scrolling on pages with long tables or code samples particularly annoying.

that's not a trait of "mobile", that's a trait of "touchscreen input" ("direct manipulation input"). you can have "mobile" devices that also have an attached bluetooth mouse and/or keyboard, and conversely you can have "desktop"/"laptop" devices with a touchscreen.

@u9000-Nine
Copy link
Member

that's not a trait of "mobile", that's a trait of "touchscreen input" ("direct manipulation input"). you can have "mobile" devices that also have an attached bluetooth mouse and/or keyboard, and conversely you can have "desktop"/"laptop" devices with a touchscreen.

Yes, but it is a trait of mobile devices by default, because they do not have keyboards or mice attached by default. Conversely, Desktops and laptops do have at least a keyboard attached by default. My point wasn't that it's an actual trait of mobile, but instead that it's a trait that might be forgotten about if we don't occasionally think of mobile devices specifically.

@scottaohara
Copy link
Member

but that wouldn't be forgotten if the narrative is around users who use touch to interact with their device, regardless of whether it's a phone, tablet or a touch screen for a desktop.

@Myndex
Copy link
Member

Myndex commented Aug 15, 2023

Hi @u9000-Nine

One thing that I believe is still limited to mobile devices is the ability to control the direction of scrolling. On laptops and desktops, one can either use the arrow keys or the scroll wheel to only scroll in one direction. By default on a mobile device, however, one must use their finger to physically move the content, which can make scrolling on pages with long tables or code samples particularly annoying.

This is not an author-centric issue, and is more dependent on the OS/technology.

iOS scrolls in only one direction, for instance, locking things in columns.

And here again, this relates to screen size. For low vision, on a laptop or desktop, it is common to zoom the screen up so much that a standard screen is in fact the same effective resolution as a phone, causing the same column-locked behavior.

This is why screen size related SCs need to be directly addressed as “screen size”, not mobile.

This goes for other considerations of “mobile/desktop”. At the moment the only user agent determining factor is a media query for screen size, to determine if something is “mobile”.

Because small effective screen size is used even in desktops by low vision, there should not be such a distinction in the language.

One SC that would need the term “mobile” would be:


SC for MOBILE:

If a site has a mobile-only-app version and separate full desktop version, it is possible for the user to request the full desktop version.


Extending this usefully indicates the need for additional media query and user agent preferences.

@patrickhlauke
Copy link
Member

If a site has a mobile-only-app version and separate full desktop version, it is possible for the user to request the full desktop version.

here i'd be more specific about how a site decides to show the "mobile" version. user agent sniffing? silly heuristics (small screen + coarse pointer + no hover)? and then craft an SC along those more generic lines

@Myndex
Copy link
Member

Myndex commented Aug 16, 2023

Hi @patrickhlauke

here i'd be more specific about how a site decides to show the "mobile" version

How do they determine what to show?

Okay, so a responsive site just adjusts to screen size and doesn’t per se have a mobile version, I.ez it’s one unified version, so not part of the SC example I indicated.

I am referring to sites with a completely different gestalt for mobile.

How/when these sites determine is not so relevant IMO, in some cases as early as the load balancing reverse proxy, or triggering a redirect i.e. from www.example.com to m.example.com, which uses different CSS, different HTML, etc.

It’s this later type I’m mentioning, and the “means” of determining if it’s redirected to the mobile device servers is not germane from the user perspective.

The relevant factor for the user is “hey I’m getting the mobile version with the Fisher-Price simplified UI, I want the full desktop UI”.

In this case, the user wants to be redirected to desktop, probably with persistence.

It was the one example I could think of that could indicate use of the term “mobile”. But with the foregoing in mind, instead of mobile then how about the phrasing:

SC for ALTERNATE LAYOUTS

If a site has a default, full-featured desktop version, and one or more alternates optimized for certain device types or screen sizes, then:

  1. The user must be able to request the full desktop version, and
  2. The user’s choice must have site-wide persistence for the duration of the session, or until the user requests to return to the alternate layout.

SCOPE: This does not apply to embedded systems, where a specific alternative layout is part of system security, or where page content is only available on the given alternative layout.

@patrickhlauke
Copy link
Member

patrickhlauke commented Aug 16, 2023

it is germane because that makes the difference between writing a wooly SC a la "If a site has a mobile version and redirects a mobile user to it..." (since the term "mobile" is and will be a handwavy and inaccurate label to try and pigeonhole things), versus a more robust "If a site, based on factors including user agent name and capabilities, redirects users to a separate site, ..." which then will also apply to other situations, such as users accessing a site on a "TV" browser, or a "game console" browser, or any other situation where they're using a UA that for some reason gets identified as one that should be redirected to another version of the site, while the user really would want to go to the "regular" version.

otherwise, you risk once again making a lovely SC for "mobile", which all of a sudden doesn't apply to other scenarios that are exactly the same but where the user is not on a "mobile" device, even though what the site is actually doing technically behind the scenes (taking cues from the UA string, etc) is exactly the same.

and then we get to the "maybe our understanding document should explain that when we said 'mobile', what we actually meant was any sort of device/browser/environment detection..."

@Myndex
Copy link
Member

Myndex commented Aug 16, 2023

Hi @patrickhlauke

I "think" we're in agreement Patrick, hence the revised example SC that does not mention "mobile" and instead says "...one or more alternates optimized for certain device types or screen sizes..."

RE: "not germane to the user"

What I was saying (that I think might have been lost in translation) is, from the user perspective they're not necessarily going to care if the site decided to provide an alternate based on screen size, or based on operating system, or based on user agent. The user is only concerned that:

  1. They're at some site-design version that is not the standard desktop site.
  2. They want to use the desktop site, despite the device they are on, even if they have to scroll.

This excursion came up with the thought experiment of "is there anything valid to use the term 'mobile' on", and my last post was stating that even if there is there are other ways to state it clearly, which I thought I did but maybe I didn't.

@u9000-Nine
Copy link
Member

patrickhlauke wrote:

it is germane because that makes the difference between writing a wooly SC a la "If a site has a mobile version and redirects a mobile user to it..." (since the term "mobile" is and will be a handwavy and inaccurate label to try and pigeonhole things), versus a more robust "If a site, based on factors including user agent name and capabilities, redirects users to a separate site, ..." which then will also apply to other situations, such as users accessing a site on a "TV" browser, or a "game console" browser, or any other situation where they're using a UA that for some reason gets identified as one that should be redirected to another version of the site, while the user really would want to go to the "regular" version.

Yes, but precise wording such as this would create a loophole where developers could simply identify the device type with some other method. It might be better to say something like the following:

If a site has seperate versions for different devices types (for example a "mobile version/view", a "desktop version/view", and a "TV version/view"), then:

  1. The user must be able to request the other versions, and
  2. The user’s choice must have site-wide persistence for the duration of the session, or until the user requests to return to the alternate layout.

Myndex wrote:

This is why screen size related SCs need to be directly addressed as “screen size”, not mobile.

This goes for other considerations of “mobile/desktop”. At the moment the only user agent determining factor is a media query for screen size, to determine if something is “mobile”.

I'm talking more about input-type--related SCs. In that case, there are several other media queries which can be used to approximate a scroll wheel or other inputs, such as pointer: course.

I agree that we shouldn't think about device types when considering screen size because that is very poorly correlated with device types. The functionality of inputs, however, can very depending on device types. For example, my laptop has a touchscreen, but even when I unplug the external mouse the pointer is set to fine. The pointer by default on an Android phone is course, but with an external mouse it becomes fine. On an iPhone, though, it remains course. My point is that we need to at least be aware of the input quirks of different devices, so that we don't write something and assume it's adequate just because it works with one configuration of the input device.

@patrickhlauke
Copy link
Member

patrickhlauke commented Aug 17, 2023

As an aside

The pointer by default on an Android phone is course, but with an external mouse it becomes fine. On an iPhone, though, it remains course.

note that this is a bug, not a feature ... one that i've reported to Apple a while ago already and that is being looked into. so not something that a guideline needs to take into account. (also, it's coarse not course)

https://css-tricks.com/interaction-media-features-and-their-potential-for-incorrect-assumptions/

[edit: I just noticed you talked of pointer, rather than any-pointer - this is in fact not a bug, but...a choice: pointer refers to whatever the browser/device considers the primary input. a device that primarily uses a touchscreen can happily report pointer:coarse, as long as it also evaluates any-pointer:fine when there's another pointer input like a mouse or stylus present. so again, not a specific "mobile" quirk as such, but a difference in defaults...which could just as well happen on a "laptop" device with a touchscreen - for instance, if removing the keyboard/trackpad from a two-in-one device, then reattaching a mouse to it.

anyway, related:

https://bugs.webkit.org/show_bug.cgi?id=212580
https://bugs.webkit.org/show_bug.cgi?id=209292
https://bugs.webkit.org/show_bug.cgi?id=134822
]

@KimPatch
Copy link

KimPatch commented Aug 28, 2023

I think that mobile device use and development have not been considered enough in standards even as large parts of the world are moving to mobile devices.
Here are some key points:

Developer:

  • Mobile developers have trouble following standards because there are still apples-to-oranges areas.
  • Mobile development is different and it's important that mobile developers be part of standards conversations.
    I mentioned this resource because it fills in part of the gap: https://appt.org/en/docs

User:

  • Looking at a small screen in an office is different than looking at a small screen in the street.
  • Controlling a mobile device using a given input is often different from controlling a laptop/desktop using that same input (touch, speech, keyboard, mouse are the ones I can attest to myself).

Semantics:
This is a completely separate issue – I would agree that there doesn't need to be a mobile group if folks writing the standards have a good understanding of mobile device development and user needs, but saying mobile devices are the same as desktop/laptop form either a developer or a user point of view because you can plug a keyboard into a mobile device (how often are mobile devices used on the run?) doesn't sound like that to me.

Again, please take a look at the code examples at appt.org to see what's been missing. The mobile group resources may also provide some fodder for thought. There are several spreadsheets linked on the MATF wiki page under "Current Work"

@patrickhlauke
Copy link
Member

Looking at a small screen in an office is different than looking at a small screen in the street.

This is not a reason for having "mobile" as a group/categorisation. Similar user concerns will happen with medium and large screens in different lighting conditions, potential distractions, other environmental factors.

Controlling a mobile device using a given input is often different from controlling a laptop/desktop using that same input (touch, speech, keyboard, mouse are the ones I can attest to myself).

Then, again, these user needs need to be considered for all similar situations, and not pigeonholed into "mobile". These additional considerations need to naturally be folded under more general categorisations (such as input), and provide sub-aspects there

From a developer perspective, WCAG should be tech-agnostic in the first instance and provide high-level requirements that can apply to all different situations. How these then get realised - and, in particular, in native applications (both on desktop/laptop, mobile, tablet, large touch-enabled wall-mounted surfaces, etc) then comes under the tech-agnostic high-level requirement.

but saying mobile devices are the same as desktop/laptop form either a developer or a user point of view because you can plug a keyboard into a mobile device (how often are mobile devices used on the run?) doesn't sound like that to me.

I don't think anybody was saying that these are the same, but that categorising things into am amorphous "mobile" bucket - rather than naturally adding different aspects/lived experiences/particular user needs when things are being used on a smartphone or tablet - is not ideal.

@GreggVan
Copy link

GreggVan commented Aug 28, 2023 via email

@JJdeGroot
Copy link
Member

Some good points have been made here already. The term "mobile" doesn't have a clear definition and the interpretation depends on the person you are talking with.

The main issue I have with WCAG 2.x is the lack of techniques for native mobile applications. There are zero code samples in the technique resources. All code samples are focused on websites. Which is understandable, considering WCAG is part of the World Wide Web Consortium.

The problem is that Section 508 and EN 301 549 have adopted WCAG for native mobile apps, but there is zero guidance for native app developers.

This gap is something we are trying to close with the Appt code samples for WCAG which @KimPatch mentioned.

With WCAG 3, we are (hopefully) moving towards better technology agnostic descriptions of requirements and solutions. The same applies to devices, I don't think we explicitly need to mention "mobile" devices, but from a user perspective we can mention narrow viewports and other characteristics.

@GreggVan
Copy link

GreggVan commented Aug 29, 2023 via email

@Myndex
Copy link
Member

Myndex commented Aug 29, 2023

...mobile device use...not been considered enough...saying mobile devices are the same as desktop/laptop form either a developer or a user point of view...

I don't think anyone is trying to say that mobile devices are the same as a desktop or laptop. It's more that the term mobile is ambiguous. What's important from a guideline point of view are the specifics of a given use-case or technology category.

Examples

Technology Use Case User Need Outcome
Visual Display Content Text Zoom without horizontal scroll User is able to zoom small text up to 96px or to a size fitting 35 characters across the screen for the current device context, whichever is smaller; and where text reflows such that horizontal scrolling is not required.
" Visible Content Zoom page larger User is able to zoom overall page content by at least 400%, without reflow or regard to scrolling, and where interactive components remain functional.
Visual Touch Display Interactive Touch Clickable size A clickable size no smaller than the operating system's default touch control for touch-screen type device contexts, or the equivalent of 36px² visual angle.
Visual Display Interactive Pointer Clickable size A clickable size no smaller than the operating system's default pointer target, or an area no less than 12px² on the display, for mouse, trackball, stylus, and similar pointer device contexts.
Assistive Technology Interactive Control Focus/operate Controls available in the current context can be focused and operated using keyboard, switches, and other assistive tech.
HTML Server Contextual Layout Selectable alternate layout When multiple layouts are available, and a device-context specific layout is delivered to the user, the user can choose a default layout context instead.
Environment Sensing Dynamic Orientation Lock orientation For content that responds to changes in device orientation or other device environmental sensors, user can disable content from responding to such changes.

Device Context as a term

In these examples, the term "device context" serves instead of "mobile". "Device context" is technology agnostic, more comprehensive, and open to future technology shifts.

Thank you for reading

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Please Review This item needs wide review before being added to the agenda
Projects
None yet
Development

No branches or pull requests

9 participants