You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
My name is sarah higley, my twitter handle is codingchaos, and I often use it to rant about tooltips
34
34
</aside>
35
35
</section>
36
+
<section>
37
+
<h2>This talk is <strong>not</strong> about:</h2>
38
+
<ul>
39
+
<liclass="fragment">how to test</li>
40
+
<liclass="fragment">how to fix specific bugs</li>
41
+
<liclass="fragment">tooltips</li>
42
+
</ul>
43
+
<asideclass="notes">To start off, I want to set expectations...</aside>
44
+
</section>
36
45
<section>
37
46
<h2>Why debugging?</h2>
47
+
<asideclass="notes">
48
+
So why debugging specifically? It's because for me, that's usually the part of the learning process where I feel most lost (even outside of a11y)
49
+
</aside>
38
50
</section>
39
51
<section>
40
52
<h3>The accessibility process (imagination)</h3>
41
53
<divclass="left">
42
54
<olclass="content-list">
43
-
<li>Tutorials: semantic HTML, tabbing, yay!</li>
44
-
<li>Do accessibility testing on product</li>
55
+
<li>Learn: semantic HTML, tabbing, yay!</li>
56
+
<li>Test</li>
45
57
<li>Fix bugs</li>
46
58
<li>Include everyone!</li>
47
59
</ol>
48
60
</div>
49
61
<divclass="right">
50
62
<imgsrc="./assets/eager.jpg" alt="Retsuko is starry-eyed and eager, surrounded by bishie sparkles">
51
63
</div>
64
+
<asideclass="notes">
65
+
So tell me if this story sounds familiar: you're working on learning a skill, or getting your footing in a field. You soak up tutorials, articles, and talks. Then whenever you strike out on your own, you rapidly get mired in some unforseen problem and get stuck without a roadmap.
66
+
<p>Like when I bought my first car, which was a ~15 year old new england rust bucket, and when trying to fix it up...</p>
67
+
</aside>
52
68
</section>
53
69
<section>
54
70
<h3>The accessibility process (reality)</h3>
55
71
<divclass="left">
56
72
<olclass="content-list">
57
-
<li>Tutorials: semantic HTML, tabbing, yay!</li>
73
+
<li>Learn: semantic HTML, tabbing, yay!</li>
58
74
<li>Testing happens</li>
59
75
<li>...</li>
60
76
<li>...</li>
61
-
<li>... ... why is focus disappearing??!</li>
77
+
<li>... ... what is aria-required-children??!</li>
62
78
</ol>
63
79
</div>
64
80
<divclass="right">
65
81
<imgsrc="./assets/overworked.jpg" alt="Aggretsuko staggers under a huge pile of papers with deep shadows under her eyes, surrounded by little blue flames">
66
82
</div>
83
+
<asideclass="notes">
84
+
<p>... I rapidly proceeded to sheer the head off a bolt, and was then just ... stuck.</p>
85
+
<p>And everything I knew up until that point had not told me what to do when something went wrong and I went off the rails.</p>
86
+
<p>Maybe this is just my perception, but I've found a lot of resources out there both about how to test (and great testing tools like aXe, accessibility insights, and others), and also on how to build or make specific patterns, like dialogs or SPA navigation. But not a lot on how to actually troubleshoot or move forward when stuck (which is one of the places I struggle most when learning a new skill)</p>
87
+
</aside>
67
88
</section>
68
89
<section>
69
90
<h3>My learning process:</h3>
@@ -82,7 +103,7 @@ <h3>My learning process:</h3>
82
103
</li>
83
104
</ul>
84
105
<asideclass="notes">
85
-
<p>This isn't made any easier by the way a lot of us approach learning (or maybe it's just me) I want to tell a personal story: the way I learned web dev, javascript, and accessibility was largely isolated, because:</p>
106
+
<p>This isn't made any easier by the way a lot of us approach learning (or maybe it's just me): the way I learned web dev, javascript, and accessibility was largely isolated, because:</p>
86
107
<ul>
87
108
<li>I was afraid to ask for help, yay imposter syndrome</li>
88
109
<li>Often companies only have one accessibility person, and even that is if you're lucky (I didn't always work at Microsoft).</li>
@@ -92,15 +113,6 @@ <h3>My learning process:</h3>
92
113
<p>I really don't recommend this way of learning.</p>
93
114
</aside>
94
115
</section>
95
-
<section>
96
-
<h2>This talk is <strong>not</strong> about:</h2>
97
-
<ul>
98
-
<liclass="fragment">how to test</li>
99
-
<liclass="fragment">how to fix specific bugs</li>
100
-
<liclass="fragment">tooltips</li>
101
-
</ul>
102
-
<asideclass="notes">To bring it back to the actual talk... (also there are a lot of resources already out there about these three things)</aside>
103
-
</section>
104
116
<section>
105
117
<h2>This talk <strong>is</strong> about:</h2>
106
118
<imgsrc="./assets/rage-work.jpg" alt="aggretsuko, an aggrieved red panda, working furiously at her computer as papers go flying" style="width: 80%;">
<imgsrc="./assets/pairing.jpg" alt="Retsuko looking at her computer while Haida watches over her shoulder, both looking nonplussed.">
115
127
<asideclass="notes">
128
+
<p>And it's also about finding or making a better option:</p>
116
129
<p>Good communication with coworkers who have domain expertise in the thing you want to learn is a good way to mitigate this. Pair programming (or just pairing) is a great method to get direct insight into how other people do things</p>
117
130
<p>But as mentioned, a11y folks can be a bit isolated work-wise, and sometimes there aren't a lot of opportunities to pair specifically on accessibility.</p>
118
131
</aside>
@@ -144,6 +157,19 @@ <h2>Our Toolbox:</h2>
144
157
</aside>
145
158
</section>
146
159
160
+
<section>
161
+
<h2>The bugs:</h2>
162
+
<ol>
163
+
<li>Semantics</li>
164
+
<li>Focus</li>
165
+
<li>Oops</li>
166
+
<li>Nope</li>
167
+
</ol>
168
+
<asideclass="notes">
169
+
You'll see what I mean about those last two when we get to them
170
+
</aside>
171
+
</section>
172
+
147
173
<section>
148
174
<h2>Bug 1: the dreaded <table></h2>
149
175
<imgsrc="./assets/table-ex1.png" alt="screenshot of a simple-looking table with information about books">
@@ -190,7 +216,7 @@ <h3>Compare in the spec:</h3>
190
216
<section>
191
217
<h2>Bug 2: the screen reader cursor is "lost"</h2>
192
218
<imgsrc="./assets/actions-menu.png" alt="An open file actions dropdown menu with three actions: save, edit, and delete" style="width: 60%;">
193
-
<asideclass="notes">This bug is logged on a dropdown menu (a programmatic menu, not a navigation menu), where after activating one of the items, the menu closes and the screen reader (JAWS on any browser or NVDA on Chrome) is jumped somewhere else (i.e. the top of the page). Tabbing still seems to work, though.</aside>
219
+
<asideclass="notes">This bug is logged on a dropdown menu (a programmatic menu, not a navigation menu), where after activating one of the items, the menu closes and the screen reader (JAWS) is jumped somewhere else (i.e. the top of the page). Tabbing still seems to work, though.</aside>
<imgsrc="./assets/links-ex2.png" alt="screenshot of a styled list of nav links: Home, About, and Contact" style="width: 70%;">
242
-
<pclass="small">"NVDA isn't reading the index of the link when I tab"</p>
267
+
<imgsrc="./assets/actions-menu.png" alt="The same open file actions dropdown menu with three actions: save, edit, and delete" style="width: 50%;">
268
+
<pclass="small">"VoiceOver isn't reading the index of the menu items"</p>
243
269
<asideclass="notes">
244
-
This is a series of links within list items, and someone has reported that a screen reader is not reading the index of a link within the list when tabbing.
270
+
Someone, perhaps the same person as logged the previous bug, tested the same menu with VO on iOS and found that VO does not read the index of actions in a menu.
245
271
</aside>
246
272
</section>
247
273
@@ -261,7 +287,7 @@ <h3>Tools</h3>
261
287
262
288
<section>
263
289
<h4>Do NOT do this:</h4>
264
-
<pre><codedata-trimdata-noescapeclass="html"><li aria-label="Home, 1 of 3">Home</li></code></pre>
290
+
<pre><codedata-trimdata-noescapeclass="html"><button role="menuitem" aria-label="Save, 1 of 3">Save</li></code></pre>
265
291
<asideclass="notes">
266
292
I agree this is a real problem, because if unchecked, it can result in bad code like this.
267
293
<p>However, rather than saying "never use screen readers"...</p>
@@ -271,19 +297,11 @@ <h4>Do NOT do this:</h4>
271
297
<section>
272
298
<h3>Compare:</h3>
273
299
<divclass="left" role="nav" aria-label="example styled list of links">
<divclass="right" role="nav" aria-label="example plain HTML list of links">
282
-
<ul>
283
-
<li><ahref="#">Home</a></li>
284
-
<li><ahref="#">About</a></li>
285
-
<li><ahref="#">Contact</a></li>
286
-
</ul>
304
+
<ahref="https://w3c.github.io/aria-practices/examples/menu-button/menu-button-actions.html"><imgsrc="./assets/apg-menu.png" alt="The menu button example from the ARIA Authoring Practices" style="width: 40%;"></a>
287
305
</div>
288
306
289
307
<asideclass="notes">
@@ -387,8 +405,12 @@ <h2>Digging up roots</h2>
387
405
</section>
388
406
389
407
<section>
390
-
<h3>Table structure, HTML, and the value of front-end knowledge</h3>
391
-
<imgsrc="./assets/table-ex1-debug.png" alt="screenshot of Firefox dev tools showing the incorrect table accessibility tree from bug 1">
408
+
<h3>The value of front-end knowledge</h3>
409
+
<divclass="collage">
410
+
<imgsrc="./assets/table-ex1-debug.png" alt="screenshot of Firefox dev tools showing the incorrect table accessibility tree from bug 1" style="transform: translateX(-15%);">
411
+
<imgsrc="./assets/actions-menu.png" alt="The file menu from bug 2" style="width: 40%;top: -5%;right: -5%;">
Going back to the semantic structure of that table from Bug 1
394
416
</aside>
@@ -398,7 +420,7 @@ <h3>Table structure, HTML, and the value of front-end knowledge</h3>
398
420
<p>Accessibility practitioner yells at cloud</p>
399
421
<imgsrc="./assets/yell-at-cloud.png" alt="meme of Abe Simpson shaking his fist with the headline Old Man Yells At Cloud.">
400
422
<asideclass="notes">
401
-
<p>The problem with "developers these days" not knowing semantic HTML has been beaten to death by others, and doesn't really need input from me. So I'll be quick.</p>
423
+
<p>The problem with "developers these days" not knowing semantic HTML, or focus management has been beaten to death by others, and doesn't really need input from me. So I'll be quick.</p>
402
424
</aside>
403
425
</section>
404
426
@@ -417,15 +439,16 @@ <h3>Look at the structure, not the individuals:</h3>
417
439
418
440
<section>
419
441
<h3>Bad Assistive Tech assumptions</h3>
420
-
<pre><codedata-trimdata-noescapeclass="html"><li aria-label="Home, 1 of 3">Home</li></code></pre>
442
+
<pre><codedata-trimdata-noescapeclass="html"><button role="menuitem" aria-label="Save, 1 of 3">Save</li></code></pre>
421
443
<pclass="small">remember this?</p>
422
444
</section>
423
445
424
446
<section>
425
-
<h4>Who is doing the testing?</h4>
447
+
<h4>Who is doing the testing, and who decides what the experience should be?</h4>
426
448
<ul>
427
-
<li>Are disabled people hired, and do they stay?</li>
428
-
<li>Are your devs and testers only familiar with VoiceOver?</li>
449
+
<li>Are disabled people hired?</li>
450
+
<li>Do they stay?</li>
451
+
<li>Are they listened to?</li>
429
452
</ul>
430
453
<asideclass="notes">
431
454
Hiring isn't enough if accommodations aren't provided as well.
@@ -475,15 +498,15 @@ <h4>Github checks anyone can do:</h4>
475
498
<section>
476
499
<h4>With some help:</h4>
477
500
<divclass="steps2">
478
-
<divclass="fragment fade-out step2">
501
+
<divclass=" step2">
479
502
<imgsrc="./assets/gh-stats-search.png" alt="A screenshot of a form field collecting github repository URL information for ant-design, under the heading 'Find accessibility stats by github repository'.">
480
503
</div>
481
-
<divclass="fragment fade-in-then-out step2">
504
+
<!--<div class="fragment fade-in-then-out step2">
482
505
<img src="./assets/gh-stats-labels.png" alt="A screenshot of a github label with the name 'accessibility' and a keyboard emoji under the heading 'Issue labels'." style="width: 60%;">
483
506
</div>
484
507
<div class="fragment fade-in step2">
485
508
<img src="./assets/gh-stats-results.png" alt="A heading saying 'Issue statistics' followed by a table that has shows issues tagged with accessibility on average get 6 comments, take 114 days to close, 7 days to comment, and are resolved 18% of the time compared to all issues, which average 2 comments, 13 hours to close, 8 hours to comment, and are resolved 5% of the time." style="width: 85%;">
486
-
</div>
509
+
</div>-->
487
510
</div>
488
511
<asideclass="notes">
489
512
<p>I chose ant design because it came up first when I googled "most popular UI library of 2020." Those stats are actually on the good side of the UI libraries I checked. This is super rough and experimental, so take it with a lot of salt and critical thinking. I'd love feedback on it.</p>
@@ -524,8 +547,9 @@ <h2>This talk is about:</h2>
524
547
<p>...but it's better with friends.</p>
525
548
<imgsrc="./assets/better-with-friends.png" alt="aggretsuko screams into a karaoke mic while sharing wine with two of her friends">
526
549
<asideclass="notes">
527
-
<p>I still don't know how to solve this, and I'm not sure anyone does. But it doesn't do any good to try to figure it out alone.</p>
528
-
<p>The ultimate tool to debugging accessibility is sometimes just to be kind to yourself, and find people who you can share, rant, cry, and figure it out with.</p>
550
+
<p>But this talk is also about the better option:</p>
551
+
<p>Sometimes the best way to make progress on a seemingly impossible task is to find other people and other perspectives.</p>
552
+
<p>The ultimate tool to debugging accessibility is sometimes just to be kind to yourself, and find people who you can share, rant, cry, or maybe just sing death metal in a karaoke bar with plenty of wine.</p>
0 commit comments