惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

K
Kaspersky official blog
小众软件
小众软件
Engineering at Meta
Engineering at Meta
博客园 - 三生石上(FineUI控件)
WordPress大学
WordPress大学
G
Google Developers Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
V
V2EX
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Google DeepMind News
Google DeepMind News
Security Archives - TechRepublic
Security Archives - TechRepublic
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
C
Check Point Blog
aimingoo的专栏
aimingoo的专栏
罗磊的独立博客
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
MongoDB | Blog
MongoDB | Blog
L
LINUX DO - 热门话题
酷 壳 – CoolShell
酷 壳 – CoolShell
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
H
Help Net Security
Martin Fowler
Martin Fowler
G
GRAHAM CLULEY
Simon Willison's Weblog
Simon Willison's Weblog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - Franky
V
Vulnerabilities – Threatpost
云风的 BLOG
云风的 BLOG
博客园_首页
C
Cybersecurity and Infrastructure Security Agency CISA
量子位
Stack Overflow Blog
Stack Overflow Blog
Recent Announcements
Recent Announcements
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
I
Intezer
Scott Helme
Scott Helme
A
About on SuperTechFans
博客园 - 司徒正美
Hacker News: Ask HN
Hacker News: Ask HN
The GitHub Blog
The GitHub Blog
Forbes - Security
Forbes - Security
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
博客园 - 聂微东
人人都是产品经理
人人都是产品经理
The Cloudflare Blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Spread Privacy
Spread Privacy
T
Tailwind CSS Blog
S
Security Affairs
宝玉的分享
宝玉的分享

MarcySutton.com RSS Feed

On Joining Khan Academy Developing anti-SLAPP policies for A11y Slack with Harvard Cyberlaw Clinic Focus on What Matters Celebrating One Year of Independence as Modern Sole Design, LLC Evinced is Pushing the Limits of Automated Accessibility Testing Content-visibility and Accessible Semantics Finding accessibility jobs in specialized companies and the mainstream Outsider Leverage and Accessibility Encouraging Open Source Contributions with Docs: a Self-Fulfilling Prophecy Remote Work and Van Life Salary and Career Growth Prototype Testing for Accessible Client-Side Routing On Great Leadership, Gatsby & Girl Develop It The Deal with Developer Advocacy Live Coding Accessibility Chapter Two at Deque 2017, in Music Writing winning abstracts Accessibility is a Civil Right 2016, a Year of Milestones Best of 2016 Music Links vs. Buttons in Modern Web Applications Accessibility and Performance I won an O Web Accessibility Resources This is what a developer looks like. What Wally On writing better captions for images What I’ve Learned Working on a Large Open-Source Framework Speak at your local elementary school. Button Focus Hell Page Scrolling in Mobile Safari & VoiceOver Accessibility Wins Notes from CSUN 2015 Protractor Accessibility Plugin Riding a bicycle to an accessibility conference 2014: One to Remember Summing Up JSConf EU 2014 How I Audit a Website for Accessibility Accessibility and the Shadow DOM: JSConf Australia 2014 CSUN 2014 Conference Recap Accessibility and the Shadow DOM Favorite Music 2013 Girl Develop It Web Accessibility Mobile Web Accessibility with VoiceOver Webstock & NZ 2013 Favorite Music 2012 Target Corporate Site Redesign: Accessible & Responsive Web Development Decibel Festival Recap 2012 Favorite Music 2011 Spiceboard: Wordpress Recipes for iPad POP Clock Favorite Music 2010 CSS + JS + Accessibility Christmas JS1k Zend Framework. NACCC Urban Type Sutton RV Simplexml in php 5 AS3 Load Workflow AS3 Mouse Events Holiday 2009 Why Outlook Sucks
AngularJS Material Design & ngAria
2014-11-15 · via MarcySutton.com RSS Feed

November 15, 2014

Angular Material Design

When Material Design was launched, many of us in the accessibility community noticed that both the Polymer and Angular.js Material Design component demos hadn’t been built with accessibility in mind. I remember saying out loud, “companies can’t continue to do this.” Designers and developers must set an example with prototypes that work for everyone, especially at that scale.

Somehow through the magic of Twitter, a.k.a. my big accessibility megaphone, Brad Green from the Angular team at Google invited me to speak at ngEurope in Paris. He also expressed a need for some accessibility work to be done on the Angular Material project. Substantial was willing to let me bring in that project and work as a solo accessibility engineer. I’m still pretty amazed by all that. (It probably helped that I presented on Accessibility of MVC frameworks at CascadiaJS and JSConf EU.)

Since August, I’ve been fortunate enough to work remotely with members of the Ionic Framework team and the Angular.js core team, all from different parts of the country. I’ve participated in team meetings on Google Hangouts (sometimes a hot mess from biking up Capitol Hill), audited almost everything on the Angular Material website, opened and closed issues on Github, contributed pull requests to improve accessibility in components and in the docs themselves. I love suggesting accessibility ideas to the team because they’re receptive, smart people: they run with the ideas and improve on them. As a designer/developer hybrid, interpreting a gorgeous design spec to create accessible framework components has been my happy place.

Thanks Google for the Nexus 5 test device!

Thanks Google for the Nexus 5 test device!

Aside from Material Design, I was asked to give feedback on a community-contributed module for accessibility, ngAria. ngAria’s goal is to improve Angular’s default accessibility by hooking into directives and dynamically adding ARIA attributes for common scenarios. I had worked with Angular before, but not written a module for the core framework. It was a bit daunting, at first! After I had some time to review and comment, Brian Ford and Tobias Bosch made some useful architecture changes and ngAria was merged into Angular.js. It took using ngAria on the Material Design project for me to really evaluate it and find ways to make it better, which is currently an ongoing process. I rewrote the Angular.js Developer Guide on accessibility and also the API docs for ngAria to explain the module better and to show examples. To accomplish this and much of my Material work with ngAria, I’ve spent time creating Codepens and Plunkers to test assumptions about the module and see how it could evolve to be more useful. I’ve absolutely loved this mix of accessibility and UX research, development and communication.

It was announced at ngEurope that Angular 2.0 will use Web Components and native DOM APIs instead of directives, controllers, and the jqLite DOM wrapper. This has great implications for accessibility, since we’ll be able to extend native elements, which is better than bolting on a bajillion ARIA attributes (see Bruce Lawson & Karl Groves’ Web Components talk discussing “built-in vs. bolt-on”). Angular evolving in this new direction to me seems necessary for it to stay relevant and useful. I was happy to hear they are going for Web Components, since I’ve already seen them in Ember.js and Polymer. Frameworks should do everything they can to help people code responsibly–in Angular, the ease with which you could create inaccessible markup has produced a bunch of inaccessible websites (there are inaccessible examples in books, too). In the future, I’m hoping I’ll get to work on Angular 2.0 since Web Components are of particular interest as an accessibility researcher and presenter on the subject.

By getting out there and talking about the need for accessibility, writing useful docs, and improving the utility of frameworks, I’ve seen accessibility become a mainstream topic. ngAria is listed next to ngAnimate, after all. It’s cool to see a framework take on more responsibility and do some heavy lifting for marginalized users. I’ll just keep bringing my energy and optimism even though I know realistically developers forget accessibility quite often. I can still try to boil the ocean one talk or pull request at a time.

In November, I was a guest blogger on the official AngularJS blog about Using ngAria, the accessibility module. It was a really great opportunity to talk about accessibility to a wide, mainstream audience and I’m grateful I had the chance.

I am also speaking about Angular Accessibility at Fluent Conf and the CSUN 30th Annual International Technology and Persons with Disabilities Conference. I learned so much at CSUN last year (that’s how we refer to the incredibly long conference name), I’m excited to give back on a topic that I started thinking about my first time there. I wrote about that wonderful experience on the Substantial blog.