Tag Archives: mobile

iOS vs. Android, a Web and Native Application Accessibility Comparison

This is my first session from the second day at the CSUN conference.  This session covers “a comparison of accessibility and WAI-ARIA support in Android and iOS.  Which ARIA features work in one, both, or neither of these mobile platforms.”  I met Paul at CSUN in 2013, and he’s both an enthusiastic and opinionated developer.  This makes his Twitter feed fun to watch at times 😉

Presenter:

  • Paul Adam, Accessibility Evangelist at Deque (@pauljadam)

 

RESOURCES

 

Google has done a great job improving Android’s accessibility API, but is still a few years behind Apple.  Paul showed Apple’s UIKitFramework and some of the properties available when using XCode, including:

  • accessibilityViewIsModal()
  • accessibilityPerformMagicTap()
  • UIAccessibilityPostNotification()

Sending focus to items is much easier in native apps versus mobile web apps (web is not a nice controlled environment and still has a way to go).

Adding descriptions to images in Android:  androidcontentDescription

XCode allows you to add content descriptions via GUI or programatically.

 

WAI-ARIA Live Demos

There’s a WAI-ARIA attribute support matrix available from Paul’s presentation (see resources link above).  The matrix is not exhaustive, but let’s give Paul a break, eh?

ARIA is generally well-supported in current browsers.

Paul then opened up a web page made by Andrew Kirkpatrick that had some pictures with ARIA tags for people to test how different browsers handle the tags.

With Live Regions you can make the screen reader read entries on-the-fly.  However, you need to have a container painted on the page to receive updatable content.

 

Paul then demonstrated a couple simple forms with VoiceOver showing how aria-describedby, aria-required, aria-invalid and jQuery.focus().  Paul has an iOS WAI-ARIA “fail list” on his web site which is worth checking out:  http://www.pauljadam.com/demos/aria-expanded.html

 

Apple does not support HTML5 form validation, but Google does.   Using HTML5 form types are recognized, so context-appropriate keyboards are presented, i.e. numeric keypads in telephone fields, datepickers in date fields, etc.

All mobile browser default placeholders / control outlines fail contrast tests.

 

Paul then gave a demonstration of how captions work on both Android and iOS.  Interesting fact: in iOS, you can’t make an HTML5 button say whatever you want.

 

As a user, you probably want to use iOS.  As a developer, you probably want to play with Google.  I captured a few of the platform pros/cons Paul listed:

  • A big con for iOS developers:  Apple doesn’t do a very good job of documenting fixes to VoiceOver.
  • A con for Android users:  zoom level isn’t maintained between apps.
  • Facebook and Twitter are much more accessible on iOS

 

Q & A

Question:  what are the user stats for each platform…which gets used more?  Answer: iOS is far and away the most used, according to WebAIM’s screen reader survey.

Scaling Web Accessibility at Facebook

This is my fourth session from the first day at the CSUN conference.  This session “…covers Facebook’s work over the past year to scale web/mobile accessibility across the company’s large engineering department.”  Description comes from the conference event guide.

Presenters:

  • Jeffrey Wieland
  • Ramya Sethuraman
  • George Zamfir (@good_wally)

 

RESOURCES

 

BACKGROUND:  how to scale accessibility in a large engineering environment.

  • Complexity:  Each platform has different considerations
  • Awareness:  products need to know what do for accessibility
  • Speed:  need to integrate accessibility into the process

 

JEFFREY’S SEGMENT

Accessibility team came into existence by recognizing that users were using AT to mediate their relationship with the product.  Jeffrey appealed to user interface engineering (UIE), which is the front-end team that builds all the core components of the product.  These components are similar to the design pattern library work that LinkedIn is doing.

Unfortunately, most Computer Science graduates do not have much exposure to accessibility.  So, accessibility has been integrated into the core training regimen at Facebook.  If it’s a part of the core training, then it sends a message to the developers that it’s important.

Testing matters, so we’ve invested in something called an “accessibility nub” which is essentially a flyout menu (built in-house) that allows developers to toggle looking for best practices.

Centralizing documentation and best practices has helped engineering review things “in-context.”  Contextual links to this resource have been embedded wherever needed.

These steps have give us the ability to “have more hands on deck” with respect to accessibility.  This has grow the number of developers working on accessibility fixes to over 80(!)

A number of ambassadors have been enlisted to help evangelize accessibility internally.  We also have channels by which we communicate with our users (see resources section above)

 

RAMYA’S SEGMENT

Ramya began her segment by describing the alt text issue she had posting a picture of her one year-old daughter trying yogurt for the first time (very cute!).

Caption generator:  takes bits of metadata about uploaded photos and auto-generates a caption for the user.  Ramya demonstrated how this sounds with VoiceOver, both before and after using the caption generator.  Addition of  metadata elements like location photo was taken was very effective!

Semantic Structure has been added via headings and landmarks.

The core components library contains controls like buttons, links, images, etc.  Accessibility is built directly into these components.  Dialogs now have keyboard enhancements, with appropriate labeling.  Focus cycles through dialogs.

Keyboard Shortcuts:

  • j/k keys are used for moving focus forward and backward, respectively.
  • “c” key is used to comment on a post
  • “s” key is used to share the post,
  • “o” key is used to open attachments like photos
  • “q” key to chat.

High contrast mode is also available now.

A lot of effort was put into making the desktop view accessible.

 

GEORGE’S SEGMENT

Quality Assurance:  all is done with scale in mind.  It all started with a spread sheet, and testing was done in an ad-hoc fashion by a very small accessibility team.  In order to scale it, it had to be spread to the entire team!

We now run standardized regression tests on a regular basis for each platform.  We also do user testing with people who have disabilities.

QA (test run) > ProdOps (triage & assignment) > Eng (improvements)

Where does the A11Y team fit into the above?  It fits in wherever it makes sense.  Across products & platforms, and runs on auto-pilot.

“If you build the product, accessibility is YOUR responsibility.” It’s just another form of code quality.

 

JEFFREY’S SEGMENT

Mainstreaming accessibility is something that we want to pursue at all levels.  One of their front-end engineers was working on the web messenger product, and when asked if he’d tested with a screen reader, his response was “what’s a screen reader?”  This is not his fault, because he was not exposed to accessibility during his education.  So, Facebook is now partnering with PayPal, Stanford engineering to get students to think about accessibility.  This will help to build awareness.

 

Q & A SEGMENT

Question:  how much of the data associated with the photo example presented earlier is auto-generated versus user-supplied?  Answer:  it has be user-entered content.

Question:  how are you testing for high-contrast mode?  Answer:  well, it’s complicated…(I didn’t catch all of the answer).

Question:  are the testing links you talked about generalizable for use by public testers?  Answer:  not really, but we’re working on it.

Question:  how do you track focus when using keyboard shortcuts?  Answer:  we return the currently active element.

Question:  have you been able to document whether or how the accessibility features have been implemented?  This is a big challenge, quantifying the impact your work has made.  We’re doing a lot around measurement, which helps improve where we focus our efforts.  We do read all of the feedback we receive, both positive and negative…please be candid with us!

Question:  where does the role of the engineer start and end?  Where does design fit in…how do you get accessibility baked in?  Answer:  we’re still defining how this works Facebook.  Some things engineers should absolutely be involved with, notably focus and readback.  Things get trickier when building more dynamic and collaborative tools.  George indicated that their designers were ready to roll straight into implementation and pretty much ate up everything he gave them.

Question:  do you need to activate keyboard shortcuts somewhere in the user preferences?  Answer:  no!

Comment:  I wanted to mention that I submitted a JavaScript-related accessibility bug recently and got a response THE SAME DAY.   Very great high-touch service (this got some applause).

 

The CSUN 2013 Web Track Mega Post

Greetings, fellow web accessibilistas!  (not to be confused with accessiballistas, the little-known and even less-documented accessible siege engine of yore).

As you may have gathered if you followed my live blog posts a couple weeks ago, my interest in attending the CSUN 2013 conference was almost exclusively web-related.  Now that it’s been a couple weeks and I’ve had some time to reflect, I figured it would be a good idea if I consolidated everything into one mega-list.  This year, there were several times when I wish I could have been in two places at once.  Hopefully this gives you a pretty representative sampling of what was on offer web-wise this year.  Follow me @paulschantz for more web-related topics, including accessibility, project management, web development and design philosophy, thoughts on working in higher education, bad clients, off-color humor, and other ephemera.  Enough self-promotion…on with the list!

Pre-Conference Seminar:  Google Accessibility

Day One:  February 27, 2013

Day Two:  February 28, 2013

Day Three:  March 1, 2013

Panel: Inclusive Mobile for Everyone – Challenges

This was a panel discussion with several panelists.  Please accept my apologies in advance for spotty / crappy coverage 🙂

Captioning was provided, host asked that people didn’t “company bash”  haha nice touch

Panelists Government and Industry Leaders

  • Holly Nielsen – host
  • Brian Cragun – moderator
  • Bruce Bailey – Access Board of US
  • Peter Korn – Oracle Accessibility guy (missed his title)
  • Rich Schwerdtfeger – CTO of Accessibility at IBM
  • Pirthipal Singh – Team leader of Web Standards office in treasury board of Canada (similar to OMB in the US)
  • Madeleine Rothberg of WGBH
  • Andrew Arch – Assistant Director of government management office within dept of finance of the Australian government

Pirthipal – students want to do everything from a mobile device.  Companies need to understand where their next gen of customers is coming from.  Daisy and Bookshare; eBooks.  Seeing a ton of media consumption and “second screen usage” on mobile devices.

Peter – 3 years at Oracle.  Focused on how big they are.  140,000 empoyees, 390,000 customers, more big numbers.  Have Java tech (ME and embedded via Sun) which is used pretty much everywhere.  Been to CSUN developers.  Co-developed outspoken SR, worked on Java, GNOME, etc.  Worked on 508 refresh group.  We make a lot of enterprise applications, customers want to run them on mobile, so we’re interested in it.

Bruce (on phone) – US Access Board.  Working to harmonize standards with the rest of the world.  Been involved with AT for 20 years.  Moving “up the chain” has removed him from the down-and-dirty of AT, which is a bittersweet thing for him.  Mobile devices are the poster child for why the current standards are unworkable int their current form; hard to apply the standard to them.  508 has a large loophole for commercial nonavailability (tell me about it), we want mainstream tech to have it built in.

Pirth – what we’ve learned from doing accessibility on the web can be applied to mobile.  Developing standards wasn’t enough…we have 106 departments and agencies…need to come together.  Their project is up on github…search for “WET” and you’ll find it.  PAUL – I think this is the repo “Web Experience Toolkit”  https://github.com/wet-boew/wet-boew.

Andrew – Australia was one of the first countries to adopt WCAG 1.  Have 4 year trategy for implementing WCAG2.  Had tremendous uptake.  Been working with the web since the early 90s and accessibility for about 15 years.  BYOD is very seriously on the agenda of the Austrailian govt right now.  Some say mobile isn’t web site, so those standards don’t necessarily apply.

Rich – over 20 years in the business.  Development community is excited about working with AT now and implementing it in mainstream devices.  There’s a lot of challenges out there now, how do we educate communities.  Not everything is fully baked, particularly with the web.  For example, iOS doesn’t have a keyboard unless you’re in an input field or content editable area.  Working on projects like IndieUI that can help standardize things like zoom, open, close, without worrying what generated the command.  Many apps are a combination of web and native platforms.  Lots of innovation, but also a lot of challenges.

Andrew – What do you see as the biggest obstacles to business / govt integration of mobile into their infrastructure.

Brian – Security

Richard – yes.  Siri is a great technology, but your requests go off to Apple and that’s a potential security issue.

Pirth – tech is changing so rapidly, some devices have good security, some don’t.  Biggest challenge is not being able to identify, say, the 3 – 5 platforms or devices to support.

Bruce – too much attention is paid to “sexy” tech like Google Glass.  How about just delivering plain old cross-platform services?  (word up, yo – Paul aside)

Richard – mobile browsers have not done all the performance enhancements that you have on the mobile device.  Some things like Dojo are slow when put on mobile (Paul:  dojo is pretty fat, mobile networks are carrying fatter and fatter web sites and apps that seem to assume a desktop browser with a broadband connection).

Madeleine – we don’t know yet what makes for a great mobile interface.  We have to relearn how we interact with our devices.  Need to go back and do a LOT more usability testing.

Peter – we’re tightly connected with 508 and CVAA and anything we adopt is:  what does it mean to require that a mobile device be accessible?  For example:  big screen for people with mobility issues.  Some choices that are good for one device will not be appropriate for others.  There’s a disconnect between the structure of the regulations and the structure of the enabling law.  How do you regulate it?

Andrew – having multiple devices makes the layering of security on top of them a pretty sticky issue.  How many layers do we need to have to keep govt information / citizen’s info safe and secure?

Brian – what are the conflicts we see in the enterprise with BYOD and how do we address those?

Peter – focusing on accessibility component – who buys the accommodation?  do we assume the employee pays out of pocket?  That’s at odds with our idea of what the ADA stands for.  Then there’s the training component.  What if the built-in AT doesn’t meet my needs?  If we stuff a desktop OS into a device (like Microsoft, that may be an option.  But for the most part, that’s an issue right now.

Madeleine – multiplicity of formats is an issue.  Need to be able to push training out to people when they need it.  There are many players, video formats, captioning availability, etc will be an ongoing issue.

Richard – our CIO wants to promote this – move as much toward we-based technology and components that are already accessible on mobile devices.  Example:  Notes mail, put an Exchange server as a front end to notes mail.  We also need to address the functional performance criteria.  Permutations are a challenge.

Audience question – mobile device management – what about policies assigned to specific applications…how do we make use of accessibility as a policy?  For example, certain applications may not provide access (like logins).

Brian – MDM policies need to ba able to be pushed out to the end points.

Peter – a variant of the general problem tied to BYOD.  Certain features may be turned off in certain environment for certain reasons, which can be a problem for some users.  accessibility often requires more

Audience question – is there overlap between what’s being done here and what might be expected within the school systems within the next 10 years?  Obliquely referred to digital divide (who pays)

Madeleine – there is a lot of overlap between the environments (students at school, employees at a corporation).  Some policies in schools are designed to keep kids safe.  Where it differs is the mandatory nature of the funding.  Mandates are in different places.

Bruce – a big challenge is where school systems and govts are selecting / endorsing devices that are or don’t have good accessibility.  What happens when that selection differs from personal user preferences.

Peter – trend toward built-in accessibility doesn’t always meet every need, but that also makes it more affordable for everyone.  If every phone is $100 – $200 and it comes with a built-in SR, that’s really going to make things more affordable and somewhat easier for everyone.

Brian paraphrasing audience question – what are the thoughts on equivalent facilitation that might allow us leapfrog to new kinds of technologies or interfaces?

Richard – The do indirectly.  It’s almost taken equivalent facilitation and putting it on steroids.  We hae equivalent facilitation, and then we have functional performance criteria. Context awareness and adaptation, this is how you meet accessibility on mobile devices (like an iPhone user taking a pic with instagram).  What we are dealing with now is a complex visualization technology.  Our solutions in some cases may not be rich enough to meet every need.

Pirth – Canadian govt is def meeting WCAG2.  Our web apps are optimized for mobile devices, using responsive design, HTML5, WAI-ARIA, etc.  That gets us a long way toward meeting this goal.  The same info services should be widely available.

Peter – equivalent facilitation cannot be emphasized enough (508f) – textual info shall be provided using the OS mechanisms for displaying text.  Java couldn’t do that, and what about UNIX?  There is none.  This is why accessiblity API was developed.  This is how we prefer to do everything.

Bruce – equivalent facilitation comes out of ADA and then was used in current 508. That concept is not going away  Equivalent facilitation is here to stay.

Andrew – IndieUI is fantastic but now here yeat.  Still being worked out, still to be standardized, how to operate.  Devs are asking what do we do, what is our responsibility, where does the repsonsibility of the users start and stop.

Madeleine – 21st century communications video and accessibility act.  Hardware manufacturers are required to make their devices accessible.  If devices come pre-loaded with apps, those tools need to be accessible too (video chat).  3rd party apps are other people’s responsibility.

 

 

 

Making Mobile Both Accessible and Secure

IBM

URL for slides (you’re gonna need it, the slides have thousands of bullets and I couldn’t possibly capture all of it here):  http://bit.ly/csun-ibm-secure

  • Costs to business of incompatible mobile secrity and accessibility?
  • Weak links
  • There are security gaps to be checked for

SESSION AGENDA

  • BYOD
  • Examples of inaccessible security
  • Risks of inaccessible secirty
  • Risks of non-secure accessibility
  • Items to consider when implementing a secure accessibility
  • Challenges you’ll encounter

A whole slide of disclaimers:  how IBM is approaching this topic, conclusions are based on anecdotal experiences, etc.

Risks related to inaccessible security:  biggest risk is the human element

Some interesting stats on BYOD::  most enterprises have personal devices accessing corporate resources, 89% of IT departments support them, but 46% are unmanaged.

Accessibility and Security don’t always work together; we start from a foundation of risks (508 and other intl. legislation).  Showed a slide of big corporations that had litigation against them, Target, Netflix, Google, etc.  Yes, the “risk” is real, but of course we all know that corporations should do accessibility because it’s good for business AND it’s the right thing to do.  Presenter Talked about brand, what it’s worth to your company, that sort of thing.  Sadly, the presentations I’ve seen given to corporate audiences seem to be driven primarily by fear and pursuit of the bottom line.  This presentation (so far) is following that line.

PDFs recently had an issue where secured docs could be read with a screen reader.  Within IBM, Antivirus could not be used by blind employees, so they needed to use an alternate AV program.

QUOTABLE QUOTE:  “If a security test fails an individual’s capabilities, it fails as an implementation.  If a security test fails the situation, it fails as a solution.”

INCOMPATIBILITY RISKS

  1. AT do not function correctly in a secure env
  2. Unverified AT leave exposures to secrity
  3. Security is unusable
  4. Secure solutions may not be able to be retrofitted for accessibility

They had a complicated slide that showed “10-Steps to security”

Slide with a triangle containing:  Accessibility, Security, Enterprise

Embed standards into the enterprise (mandates, processes, guidance, metrics, education, documentation, tools)

WHY DOES EVERY IBM SLIDE HAVE TO HAVE 20 BULLETS AND SMALL FONTS?

Slide about platforms:  OS, Hardware, carrier, AT

Slide showing a pie chart of platforms, there were about 50 (completely unreadable, but did show the scale of the problem)

BRIDGE BETWEEN SECURITY AND ACCESSIBILITY (directly from slide)

  • AT (SR, Zoom, preconfigure, dev tools)
  • Security (platform settings, policy, partitioning)

THIS PART WAS INTERESTING

Siri is a problem because “we don’t know what happens to that spoken utterance, it doesn’t stay on the device, it goes to what we’re told is a secure server.”

QUESTION:  what about captioning and transcription services?  These fall into the same bucket.  Concern is the unknown about “who’s wearing the Siri face” right now.

Evaluate AT for security

  • Does it run correctly when the security is engaged?
  • Have artifacts that leave unprotected content (logs, buffers, off-device processing, transmission, secure processing, is encription adequate
  • Does it work in public / private situations?
  • Does it require a network connection?

Accessible Authentication

  • Pwd length, complexity, time-outs, alternatives
  • Biometrics:  consider cost, environmental considerations, alternatives
  • Graphical pwds (not suitable for device without a mouse or touch-screen access

Partitioning

  • MDM, Security, Enterprise Applications
  • Bare metal vs. Hosted (type 2 like VMWare)
  • Container virtualization (i.e. Enterproid Divide), similar to UNIX chroot solution
  • Have to assess these solutions for accessibility

Paul’s sidebar regarding the “model” of IBM presentations:  they provide lots of big-sounding questions and problems, present slides that are overloaded with gobs of information, focus on compliance (often injected with fear), but not a lot of practical information.  Ya gots ta pay for that stuff, buddy.

IBM uses “Worklight,” a tool that sounds similar to PhoneGap, but it comes with a lot more under-the-hood stuff for policies, server interaction, endpoint management and management of services, etc.

Enable, monitor, and enforce compliance

System settings, software inventory, software distribution, automation, monitoring, reporting, taking action

Slide:  Rapid transformation of change (loaded with literally a hundred items and completely unreadable.  Again, shows just how complicated things are)

Mobile standards are lagging growth

New hypervisors have been announced by VMware (type 2) and Redbend vLogix Mobile (type 1)

10 new MDM solutions reported May 2012

Retrofitting is expensive and may in fact not work at all