16 ms·
What's your number one recommendation for mobile app developers in terms of enhancing (or not screwing up) accessibility? If you're feeling extra ambitious, I'
by eric_bullington 12y ago
What's your number one recommendation for mobile app developers in terms of enhancing (or not screwing up) accessibility?
If you're feeling extra ambitious, I'd love to hear the same advice with respect to web apps. Has HTML5 made a big difference in terms of accessibility? Are there any obvious big wins for accessibility that most of us are missing?
Thanks for your awesome comment!
- mwcampbell 12y agoFor native apps, my biggest single piece of advice is to use the platforms' native UI toolkits. Or use something that wraps those toolkits at a high level, like wxWidgets or Toga (http://pybee.org/toga/ http://pybee.org/toga/). Be careful with wxWidgets though; some of the widgets are custom, and which ones are native or custom varies by platform. Non-native toolkits, such as Qt or Kivy, can in principle be accessible, but it takes a lot of work to implement each platform's accessibility APIs, and the toolkits often don't get it quite right. This has been the case with Qt on Windows and Mac. And Qt has zero accessibility on iOS, Android, or for that matter, any platform besides Windows, Mac, and desktop Unix. As far as I can tell, Kivy doesn't have any accessibility either. As for rich web apps, the relevant standard for accessibility is called ARIA (http://www.w3.org/WAI/intro/aria http://www.w3.org/WAI/intro/aria). It seems to me, though, that robust, working implementations of ARIA are few and far between. The Dojo Toolkit and YUI Library are well-known for iimplementing ARIA across their widget sets. Of course, those aren't exactly the hot JavaScript libraries these days. jQuery UI also has some level of ARIA support. More recently, I've worked with WinJS (https://github.com/winjs/winjs https://github.com/winjs/winjs), and from what I've seen so far, it has pretty good ARIA suppport. I don't know what to tell you, though, if you want to use something more mainstream like Ember, Angular, or Backbone with a smattering of jQuery plugins. I'm afraid I don't have the expertise to offer good advice for developing accessible rich web apps.
- eric_bullington 12y agoThanks for your detailed response. The good news with ARIA is that the documentation for ultra-popular Bootstrap 3 includes ARIA support. That's one of the reasons I asked the HTML5 question. Also, reading your post inspired me to see what's out there for Bootstrap, and I found a very cool toolkit from Paypal[1] that makes Bootstrap's accessibility even better. Good point about non-native toolkits, although in this day and age using anything other than Qt is extremely painful unless you're targeting a single platform. As popular as Qt is, some association for visually impaired people should take that up as a challenge. I do seem to recall that Qt5 has made some major progress in terms of accessibility, and also that many of their official guides address the issue explicitly. 1. https://www.paypal-engineering.com/2014/01/28/bootstrap-accessibility-plugin-making-the-popular-web-development-framework-better/ https://www.paypal-engineering.com/2014/01/28/bootstrap-acce...
- silencio 12y agoI say this as a sighted dev, but I used to volunteer to teach computer basics and programming to visually impaired folks and related things. Feel free to sub in a lot of the visual impairment-specific stuff with other disabilities too, deafness being another big one. * Learn to use a screenreader and just play with your app/website. Voiceover has a screen curtain you can enable so you don't have the temptation to peek. * Read accessibility documentation for best practices (iOS: https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/iPhoneAccessibility/Accessibility_on_iPhone/Accessibility_on_iPhone.html https://developer.apple.com/library/ios/documentation/UserEx... Android: http://developer.android.com/guide/topics/ui/accessibility/index.html http://developer.android.com/guide/topics/ui/accessibility/i... Web (a decent start, I forget the better ones right now cause it's been a while): https://developer.mozilla.org/en-US/docs/Web/Accessibility https://developer.mozilla.org/en-US/docs/Web/Accessibility) * A lot of times, making your app easier and simpler for new users to use (i.e. ux improvements) will have the side benefit of making it more accessible and vice versa ;) * Reach out to blind users if you have any, and ask them for tips and problems. * When you get someone reaching out to you about how inaccessible something is, work with them to fix it if you can (you'd be surprised....) * Check out your local groups/conferences/hackathons, I've seen some great projects needing help and lots of people sharing their knowledge on this front (one that comes to mind is Yahoo Accessibility down in LA in the past when I used to live there) Sometimes even I fuck up on this front, and it's definitely a constant checking-your-privileges and rethinking things battle. The one thing that keeps me going is this: there will be times where all of us will benefit from accessibility, even if it's not a permanent or big problem. I try to do what I can on this front for my own work/hobbies, hoping it helps someone else. And I thank the person that had the foresight to reserve the front buses on seats for people with disabilities because I need it right now. :P
- eric_bullington 12y ago>* Learn to use a screenreader and just play with your app/website. Excellent advice. I'll start testing my sites with a screenreader in addition to IE8 and all other other usual suspects. I also just found a cool toolkit for Bootstrap 3 (I use Bootstrap a lot): https://www.paypal-engineering.com/2014/01/28/bootstrap-accessibility-plugin-making-the-popular-web-development-framework-better/ https://www.paypal-engineering.com/2014/01/28/bootstrap-acce...
- adrianhoward 12y agoIf you're interested learning about accessibility —especially the broader issues outside of problems with vision — I'd strongly recommend having a look at http://rosenfeldmedia.com/books/a-web-for-everyone/ http://rosenfeldmedia.com/books/a-web-for-everyone/ (Disclaimer: One of the authors is a friend so I may be a bit biased, but we did first encounter each other on discussions about accessibility in the 90's ;-) The technical advice in it is mostly written for web folk, but the framework of accessibility/UX it places that advice in is pretty much applicable to anything.