Speaking at Ember Conf 2020!
A11y First, and Everyone Wins is a talk I've given at numerous meetups and I'm proud to announce that I've been selected to present this topic at Ember Conf 2020!
I'll update this post when more information is available on the website.
By putting accessibility first we can achieve a far more composable, intuitive, and testable product.
Come and listen to the real tale of modern automation testing the untestable: a drag and drop user interface. The story of a drag and drop feature doomed to be unaccessible, made accessible. The telling of a feature salvaged by accessibility.
We've all been told accessibility is important, but rarely do we feel the fruits of the labor directly. We'll discuss how developers, QA and leads can all feel the same benefit our users feel by putting accessibility first.
Those who on the surface understand the need for accessibility, but haven't been sold a compelling success story yet.
- Title Slide
- Who am I, Why am I here
- Ice Breaker - "Who's the world's largest minority?" - People with Disabilities
- Pitch: Composable, Intuitive & Testability through Accessibility
- What we'll discuss: A Project Feature Saved by A11y (Drag & Drop, A11y Research / Wrapper Components, Testing)
Set the Stage
- Project Goals
- Mouse Drag & Drop
- Touch Drag & Drop
- Keyboard Reordering
- Initial Designs
- How it was Done
A11y Research - W3C Sortable Lists Pattern, Aria Roles
- Component Structure - ember-sortable & accessibility wrappers
- Living Styleguide to Spike the work
- ember-native-dom-helpers (testing unification RFC #119)
- KeyboardEvent.key Triggers
- Async / Await
- Example test using all of the above
Results & Value Explained
- A11y allowed us to automated test reordering!
- Spiking allowed for a quick feedback loop (with design, with PM's)
- Sign off for UX
- Less stress on QA
- Less scope creep
- Demo of final results
- A11y first allowed for a more composable, more discoverable and a testable solution
- Better UX
- Shipping with confidence
- What can YOU do right now to continue the conversation?
- Integrate tooling like ember-a11y
- Make A11y a priority
- Talk about #a11y
This is a success story in a living product powered by bleeding edge Ember that makes the impossible look easy. By putting users and accessibility first I'm truly proud what we shipped. We essentially managed to write automated tests Drag & Drop, a known difficult problem to solve, in an elegant way. We composed accessible wrapper components around community created ember addons for a lasting solution that's good for developers and users alike.
I've worked on five enterprise scale ember apps over the past five years. From teams large to small, apps in beta or with a large user base, from Ember v1.10 to the latest v3.x I've seen the community grow over time. This is a story truly worth telling to inspire Ember devs new and experienced alike. Everything pitched in the talk is achievable while encouraging further community involvement to build better apps for our users.