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

About: Add page to about section that explains the AT support tables #3000

Merged
merged 24 commits into from
May 22, 2024

Conversation

mcking65
Copy link
Contributor

@mcking65 mcking65 commented Apr 29, 2024

Resolve #2970, #3019.

Preview Page

Preview Assistive Technology Support Tables | APG | WAI | W3C


WAI Preview Link (Last built on Wed, 22 May 2024 22:23:55 GMT).

@mcking65
Copy link
Contributor Author

mcking65 commented May 8, 2024

@boazsender

Love the clarity, brevity, and structure of your first draft!! Dividing the content into explanations and recommendations is spot-on. I really like your choice of presenting the usage aspects of the content as 'recommendations'.

Thoughts about next rev ...

I think it would be especially helpful to provide a bit more color around the meaning of 'must' and 'should'. We might want to choose two simple example assertions, one 'must' and one 'should' and contrast them, explaining why the must is a must and the should is a should.

In the recommendations, one thing I think we should say more explicitly is that if you are testing your own implementation of a pattern using an AT that scores less than 100% for must and 100% for should, you should determine whether the AT failures are impacting your assessment of your implementation before making changes to your code. If possible, you should test with an AT that scores 100% if one is available. these recommendations probably fit under "Don’t Code to the Bugs".

Not coding to the bugs is the most actionable recommendation. It should probably be first.

I am thinking about how to change "Understand the failures" into something more actionable. What does one do with that understanding? Do we really want people to completely avoid implementations of a pattern that fall below 100% must? Perhaps by understanding a failure, they can determine what specific attribute of an implementation is problematic and design around it while remaining within the pattern's guidelines.

@boazsender
Copy link
Contributor

@mcking65 Thanks, I'm glad you like the first rev.

one question:

if you are testing your own implementation of a pattern using an AT that scores less than 100% for must and 100% for should, you should determine whether the AT failures are impacting your assessment of your implementation before making changes to your code

Can you say more about why you think this?

@boazsender
Copy link
Contributor

@mcking65 just reviewed the updates. I think this is ready to go!

@mcking65 mcking65 marked this pull request as ready for review May 21, 2024 16:46
@a11ydoer a11ydoer requested review from shirsha and a11ydoer May 21, 2024 18:49
<h3>Design to Mitigate Critical Support Failures</h3>
<p>
Where feasible, avoid designing experiences that rely on features of APG patterns that have less than 100% support for must-have behaviors.
If the must-have support level is less than 100% for the example implementation of a pattern, that does not mean all ways of implementing that pattern will present assistive technology users with critical problems.
Copy link
Contributor

@a11ydoer a11ydoer May 21, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mcking65 Can we change "all ways of implementing that pattern" with "multiple ways of implementing that pattern" which was used in the suggestion below?

"If there are multiple implementation examples of..."

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

that would change the meaning. I revised the wording a bit to hopefully resolve the lack of clarity ...

If the must-have support level is less than 100% for one example implementation of a pattern, that does not mean every other way of implementing that pattern will present assistive technology users with the same problems.

Avoid modifying code to accommodate an assistive technology failure unless you are confident that the modification will:
</p>
<ul>
<li>Not negatively affect the experience when using assistive technologies that provide 100% support.</li>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mcking65 Would it be clearer if we update "that provide 100% support" as "that provide 100% must-have support"?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It does not matter if it is a must or should that is being accomodated. However, your question prompted me to clarify by avoiding the need to use support levels as the factor that needs to be considered when making this judgment.

</p>
<ul>
<li>Not negatively affect the experience when using assistive technologies that provide 100% support.</li>
<li>Not negatively affect the experience when the assistive technology vendor resolves the failure being accommodated.</li>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mcking65 did you intend to remove "being accommodated" from the the sentence?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I reworded so it is simpler with a new commit I will push soon.

@a11ydoer
Copy link
Contributor

a11ydoer commented May 21, 2024

@mcking65 I reviewed and added three comments for your consideration. The contents look great, and thanks again for creating this useful content for APG users, @mcking65 and @boazsender!

@mcking65
Copy link
Contributor Author

@howard-e Check examples/index.html / coverage (pull_request) is failing.

I looked at the logs and couldn't figure out why. It seems like a diff command is erroring out.

I am going to go ahead and merge. I am guessing the worst case here is that the coverage and quality report is not getting updated. I hope this is something you can easily resolve before we publish. If not, perhaps we publish again with any necessary fix/update.

@mcking65 mcking65 merged commit 2e21c92 into main May 22, 2024
21 of 23 checks passed
@mcking65 mcking65 deleted the about-support-tables branch May 22, 2024 22:38
@howard-e
Copy link
Contributor

howard-e commented May 23, 2024

@howard-e Check examples/index.html / coverage (pull_request) is failing.

I looked at the logs and couldn't figure out why. It seems like a diff command is erroring out.

Seems this happened because changes went into main from #2775 which affect the coverage report without the script being re-ran (which is also curious) but my guess is the script was just accidentally skipped during a later push on that PR.

I am going to go ahead and merge. I am guessing the worst case here is that the coverage and quality report is not getting updated. I hope this is something you can easily resolve before we publish. If not, perhaps we publish again with any necessary fix/update.

@mcking65 it was easy enough to resolve, in re-running npm run coverage-report. But that made me notice that EVERY example was reported as using event.keyCode, the amount reported as using event.which, 60 which seemed very wrong. That's because the skipto.js utility wasn't being ignored during the generation and adding to the metrics. So I've filed #3026 to ignore skipto.js and to also re-run the script so report can be up to date, and accurate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Any addition or improvement that doesn't fix a code bug or prose inaccuracy
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Define content for About section that explains how to interpret and use the AT support tables
5 participants