SlideShare uma empresa Scribd logo
1 de 30
The Good,
The Bad,
The Voice Over
Aimee Maree Forsstrom
Technical Director
Aug 29-31, 2016
@aimee_maree
Who am I?
Aimee Maree Forsstrom
Old School Technologist — Born before the classic
mac was (something Princess Josh reminded me)
Educational Research - Academic and paid researcher
Principal Engineer - Marcel Sydney
Accessibility Advocate - ADHD / ASD / SPD
Someone who wants to help people
A Problem Solver! and that I think is the most
important
Why am I here?
I have been working in technology since the early days
(when flashing gifs where actually how we animated)
My main passion in technology has been how humans use
technology and the human connection to tech
When I was being taught to code I was told don't worry
about making your code accessible… Challenge
accepted…
Solutions Architect and developer for many Aussie
accessible websites
As I like to say all great things start with a story…
Disclaimer
I told you there would be iOS code examples
I am a web developer and web/email systems
administrator by trade
Y'all probably know iOS better then me
So lets chat about how the API works and discuss
some ways to change our thinking of accessibility
when designing and developing Apps
Accessibility Matters
Estimated 15 percent of the worlds population live with
some kind of impairment -
2011 WHO World Report on Disability
Ageing population
Increase in diagnosis of cognitive and sensory
differences (ASD, ADHD, SPD)
Time Poor
Because you make Apps for People
Increased Market Share as you cater for wider audience
History
in 2009 Apple released Voice Over feature on iOS 3.0
If you have an iPhone higher then iphone3 it includes the UI
Accessibility programming interface
Part of iOS SDK
Accessibility checker built into xcode simulator
Accessibility attributes available in interface designer
OSX / iOS and
Accessibility
Apple is actually pretty good at having a similar accessibility
experience across devices
They have for a long time had an actual accessibility team
iPad and iPhone have become an assistive aid for many
people with disabilities (in certain circumstances the
government will give you a grand under NDIS for an ipad)
Sorry Android… but after using VoiceOver on iphone
Android is a poor experience
Google maps horribly inaccessible, however Apple Maps is
Accessibility Assistance
Or as I like to call it Human Assistance
Lets look into some differences in humans that
iOS caters for
Cognitive Assistance
Guided Access
Introduced in iOS 6 to help people with cognitive
differences and sensory challenges to focus on a
single app to provide an uninterrupted learning
experience
iOS 8 introduced with Time Limits (above), which
guides a child through transitions to prepare them to
move on to the next activity in a scheduled series
Visual Impairments
Voice Over on iOS it works with touch sensitive - it can tell the
user what is under there finger
Speak Screen - it can read your screen for example emails this
can be turned on with Siri or your fingers
Siri - can be used to activate other accessibility features as well
as assist you with reading your emails, tweets
Dictation - need to send a message? with dictation you can
simply speak it
Braille Keyboard - Last time I checked I think Apple supported
around 56 Braille keyboards
Hearing Impairments
Captions - You can caption movies but you can also caption
your application when a noise occurs
Hearing Aid - There is a long list of different hearing aids
supported
Mono Audio - Removes the left and right track this is useful
for people with hearing issues in only one ear etc
Motor Impairments
Switch Control - Interaction without touching the screen this
allows you to point at elements using a gliding cursor
Select elements and actions via external switches that can
be activated with head, chin, limb
Can work with simple sensitive controls, sip and puff and
motion
The Good, The Bad, The Voice
Over
Lets look at VoiceOver?
Accessibility API is a way to talk to AT aka VoiceOver
Lives in UIKit in UIAccessiblity.h
Can access individual items in the user interface
Query for its STATUS, STATE and DESCRIPTION
Perform ACTIONS and EVENTS
Accessibility
Architecture
App
1. User presses compass app
2. VoiceOver asks
"Whats the element at this position"
3. The app looks to its code bundles up
the info and sends it to Voiceover RPC
4. VoiceOver knows the actions
and attributes of the element
and performs needed action
Its all about the
Attributes
(BOOL) isAccessibilityElement - does the element have
accessibility features
(NSString *) accessibilityLabel - the description
(UIAccessiblityTraits) accessibilityTraits - is it a button is it
selected
(CGRect) accessiblityFrame - onscreen rectangle [container]
(NSString *) accessibilityHint - provides additional help
(NSString *) accessibilityValue - indicates dynamically
changing element [changing states]
Accessibility Traits
App
Static Text
Button
Image
Traits also
have Traits
Traits define behaviours
The play button will start
music
When user presses button
VoiceOver knows to stop speakin
and let the media playStarts Media Session
Interface
Builder has
Accessibility
functionality
build in,
makes it easy
to add
accessibility
into your App
So its simple then?
Standard UI Elements have the accessibility features
included
However
Custom Elements do not, so this is where you need
to add them yourself and think about the actions you
need VoiceOver to perform
Voice Over Gotchas
Voice over takes over the gestures on your phone
It changes how your phone is controlled
Touch to select and double tap to operate
Why? Focus… Screen Readers need focus and
users need to know whats under their fingers
Remember your users don't all speak the one
language, so localise your app
Development
Localise your app - remember your audience is
international
Errors - make sure your communicate in simple
language with text clearly
Remember Containers can be a trap, it will start on
the high level UI container and then drill down
API Calls for media
(void) awakeFromNib {
UIControl *control = [[UIControl alloc] initWithFrame:frame];
control.isAccessibilityElement = YES;
control.accessibilityLabel = @"Play";
[window addSubview:control];
}
Whats wrong with this scenario?
So lets think about a scenario where you are
wanting to convey a historical story about World
War II Diary letters, the creative might think I know
lets add a fading song in the background and
include snippets of soldiers speaking…
Think through your application
Design is creating something functional, lets think about the
functionality of our design
Think about scenarios that you might find yourself in?
Your on the train your listening to music you see a tweet that
says check this cool site out and you click the link… In an
autoplay world what happens?
does your audio overtake the music app? does your audio
interfere with VoiceOver?
Change your approach and
language
See what we did there? We did not need to say “But
someone with a disability can not use this app or site” we
changed the language to “This will provide a negative user
experience”
But we want Sound and your degrading our user experience
So Lets make it not auto play, lets add a stop and pause
button so the user can control it?
Accessibility needs to be thought of as inclusive design,
Accessibility needs to happen at
Design
Before you code something draw it
Work through the workflow
Integrate inclusive thinking into your UX and design
Low Vision and Color Bilindness can also be thought of
as Sunlight Blindness - don't use colour alone to convey
information use colour and shape
Think about your timing, don't limit actions to time
constraints
Screen Readers, Screen
Readers…
Mac OSX Voice Over Safari/Firefox
Mac OSX NVDA Safari/Firefox
Mac OSX JAWS Safari/Firefox
iOS Voice Over
Windows Phone Narrator
Windows JAWS Internet Explorer/FireFox/Chrome
Windows NVDA Internet Explorer/FireFox/Chrome
Linux ORCA Firefox/Chromium
… the list keeps growing and the user experience varies greatly
There is no industry
standard
So when your developing a desktop Application
you need to speak to the Operating System
accessibility APIs
For Mobiles its the phones Operating Systems
accessibility features
For the web its the browser and screen reader
combination and this can get complex
What can we do?
Build accessibility into your release cycle
There are accessibility frameworks for testing
The iOS Simulator has a built-in Accessibility
Inspector. It displays all the accessibility data of
any given object on screen (just click on it)
Think about inclusivity of your website or app at
the design stage
Accessibility is not easy…
You will need to educate people
You will need to add extra time to development
You will need to learn new tools
You will need to test
You will need to fix the bugs
You will need to retest

Mais conteúdo relacionado

Mais procurados

10 Design Commandments for Mobile App Developers
10 Design Commandments for Mobile App Developers10 Design Commandments for Mobile App Developers
10 Design Commandments for Mobile App DevelopersJigyasa Makkar
 
Natural language interaction with the web of things
Natural language interaction with the web of thingsNatural language interaction with the web of things
Natural language interaction with the web of thingsdadahl
 
2009 Mux Florentstroppa Mobilecontext Small
2009 Mux Florentstroppa Mobilecontext Small2009 Mux Florentstroppa Mobilecontext Small
2009 Mux Florentstroppa Mobilecontext SmallFlorent Stroppa
 
Itkan mobile-disabilities v5
Itkan mobile-disabilities v5Itkan mobile-disabilities v5
Itkan mobile-disabilities v5Pat Maher
 
Designing Mobile Applications for All: Accessible Contact Manager
Designing Mobile Applications for All: Accessible Contact ManagerDesigning Mobile Applications for All: Accessible Contact Manager
Designing Mobile Applications for All: Accessible Contact ManagerAEGIS-ACCESSIBLE Projects
 
2011 mobile technology task force presentation to framingham state university...
2011 mobile technology task force presentation to framingham state university...2011 mobile technology task force presentation to framingham state university...
2011 mobile technology task force presentation to framingham state university...FSU-ITS
 
MVP Presentation
MVP PresentationMVP Presentation
MVP PresentationDan Prevo
 
voice recognition application (Buddy)
voice recognition application (Buddy)voice recognition application (Buddy)
voice recognition application (Buddy)gajendrakumar124
 
Indrani TR35 short
Indrani TR35 shortIndrani TR35 short
Indrani TR35 shortEmTech
 
Human Interface Guidlines for Mobile Applications
Human Interface Guidlines for Mobile ApplicationsHuman Interface Guidlines for Mobile Applications
Human Interface Guidlines for Mobile ApplicationsMartin Ebner
 
Web2.0 Tablet Experience Design Workshop
Web2.0 Tablet Experience Design WorkshopWeb2.0 Tablet Experience Design Workshop
Web2.0 Tablet Experience Design Workshophenrikolsen123
 
Designing for Tablet Experiences (Henrik Olsen)
Designing for Tablet Experiences (Henrik Olsen)Designing for Tablet Experiences (Henrik Olsen)
Designing for Tablet Experiences (Henrik Olsen)Autodesk
 
Software (fundamentals)
Software (fundamentals)Software (fundamentals)
Software (fundamentals)JDoughty1
 
Challenges in HCI for Mobile Devices
Challenges in HCI for Mobile DevicesChallenges in HCI for Mobile Devices
Challenges in HCI for Mobile DevicesAmol Kamble
 
iPhone Introduction
iPhone IntroductioniPhone Introduction
iPhone Introductionardiri
 
iPhone Development Overview
iPhone Development OverviewiPhone Development Overview
iPhone Development OverviewWilliam Taysom
 

Mais procurados (20)

10 Design Commandments for Mobile App Developers
10 Design Commandments for Mobile App Developers10 Design Commandments for Mobile App Developers
10 Design Commandments for Mobile App Developers
 
Natural language interaction with the web of things
Natural language interaction with the web of thingsNatural language interaction with the web of things
Natural language interaction with the web of things
 
2009 Mux Florentstroppa Mobilecontext Small
2009 Mux Florentstroppa Mobilecontext Small2009 Mux Florentstroppa Mobilecontext Small
2009 Mux Florentstroppa Mobilecontext Small
 
Ebulyne
EbulyneEbulyne
Ebulyne
 
MA2017 | Danny Nou | The Science of Empathy
MA2017 | Danny Nou | The Science of Empathy MA2017 | Danny Nou | The Science of Empathy
MA2017 | Danny Nou | The Science of Empathy
 
Itkan mobile-disabilities v5
Itkan mobile-disabilities v5Itkan mobile-disabilities v5
Itkan mobile-disabilities v5
 
Designing Mobile Applications for All: Accessible Contact Manager
Designing Mobile Applications for All: Accessible Contact ManagerDesigning Mobile Applications for All: Accessible Contact Manager
Designing Mobile Applications for All: Accessible Contact Manager
 
2011 mobile technology task force presentation to framingham state university...
2011 mobile technology task force presentation to framingham state university...2011 mobile technology task force presentation to framingham state university...
2011 mobile technology task force presentation to framingham state university...
 
MVP Presentation
MVP PresentationMVP Presentation
MVP Presentation
 
Leap motion
Leap motionLeap motion
Leap motion
 
voice recognition application (Buddy)
voice recognition application (Buddy)voice recognition application (Buddy)
voice recognition application (Buddy)
 
Indrani TR35 short
Indrani TR35 shortIndrani TR35 short
Indrani TR35 short
 
Human Interface Guidlines for Mobile Applications
Human Interface Guidlines for Mobile ApplicationsHuman Interface Guidlines for Mobile Applications
Human Interface Guidlines for Mobile Applications
 
Web2.0 Tablet Experience Design Workshop
Web2.0 Tablet Experience Design WorkshopWeb2.0 Tablet Experience Design Workshop
Web2.0 Tablet Experience Design Workshop
 
Designing for Tablet Experiences (Henrik Olsen)
Designing for Tablet Experiences (Henrik Olsen)Designing for Tablet Experiences (Henrik Olsen)
Designing for Tablet Experiences (Henrik Olsen)
 
Software (fundamentals)
Software (fundamentals)Software (fundamentals)
Software (fundamentals)
 
Challenges in HCI for Mobile Devices
Challenges in HCI for Mobile DevicesChallenges in HCI for Mobile Devices
Challenges in HCI for Mobile Devices
 
iOS Human Interface Guideline
iOS Human Interface GuidelineiOS Human Interface Guideline
iOS Human Interface Guideline
 
iPhone Introduction
iPhone IntroductioniPhone Introduction
iPhone Introduction
 
iPhone Development Overview
iPhone Development OverviewiPhone Development Overview
iPhone Development Overview
 

Destaque

Automating the Gaps of Unit Testing Mobile Apps
Automating the Gaps of Unit Testing Mobile AppsAutomating the Gaps of Unit Testing Mobile Apps
Automating the Gaps of Unit Testing Mobile AppsGeoffrey Goetz
 
Mobile Accessibility - iOS, Android, Mobile Web
Mobile Accessibility - iOS, Android, Mobile WebMobile Accessibility - iOS, Android, Mobile Web
Mobile Accessibility - iOS, Android, Mobile WebTed Drake
 
A11Y Camp - Lessons learnt from building accessible native mobile apps
A11Y Camp - Lessons learnt from building accessible native mobile appsA11Y Camp - Lessons learnt from building accessible native mobile apps
A11Y Camp - Lessons learnt from building accessible native mobile appsAshton Williams
 
Where Does User Experience & Accessibility Meet?
Where Does User Experience & Accessibility Meet?Where Does User Experience & Accessibility Meet?
Where Does User Experience & Accessibility Meet?Richard Douglass
 
User Experience and Accessibility
User Experience and AccessibilityUser Experience and Accessibility
User Experience and Accessibilityfaisalqau
 
Learnings for Accessibility for iOS Platform
Learnings for Accessibility for iOS PlatformLearnings for Accessibility for iOS Platform
Learnings for Accessibility for iOS PlatformTasneem Sayeed
 
Mobile Accessibility (MobA11y)
Mobile Accessibility (MobA11y)Mobile Accessibility (MobA11y)
Mobile Accessibility (MobA11y)Henny Swan
 
iOS Accessibility
iOS AccessibilityiOS Accessibility
iOS AccessibilityLuis Abreu
 
Ubiquitous Transactions - Financial Future and Accessibility
Ubiquitous Transactions - Financial Future and AccessibilityUbiquitous Transactions - Financial Future and Accessibility
Ubiquitous Transactions - Financial Future and AccessibilityTed Drake
 
iOS 10 - What you need to know
iOS 10 - What you need to knowiOS 10 - What you need to know
iOS 10 - What you need to knowThe App Business
 
Beyond the touch screen - better accessibility for mobile apps
Beyond the touch screen - better accessibility for mobile appsBeyond the touch screen - better accessibility for mobile apps
Beyond the touch screen - better accessibility for mobile appscxpartners
 
React Native Accessibility - San Diego React and React Native Meetup
React Native Accessibility - San Diego React and React Native MeetupReact Native Accessibility - San Diego React and React Native Meetup
React Native Accessibility - San Diego React and React Native MeetupTed Drake
 
Android vs. IOS: Comparing features & functions
Android vs. IOS: Comparing features & functionsAndroid vs. IOS: Comparing features & functions
Android vs. IOS: Comparing features & functionsDipesh Bhatiya
 

Destaque (16)

Lightning Talk
Lightning TalkLightning Talk
Lightning Talk
 
Automating the Gaps of Unit Testing Mobile Apps
Automating the Gaps of Unit Testing Mobile AppsAutomating the Gaps of Unit Testing Mobile Apps
Automating the Gaps of Unit Testing Mobile Apps
 
Mobile Accessibility - iOS, Android, Mobile Web
Mobile Accessibility - iOS, Android, Mobile WebMobile Accessibility - iOS, Android, Mobile Web
Mobile Accessibility - iOS, Android, Mobile Web
 
ATIA Workshop - iOS Accessibility
ATIA Workshop - iOS AccessibilityATIA Workshop - iOS Accessibility
ATIA Workshop - iOS Accessibility
 
A11Y Camp - Lessons learnt from building accessible native mobile apps
A11Y Camp - Lessons learnt from building accessible native mobile appsA11Y Camp - Lessons learnt from building accessible native mobile apps
A11Y Camp - Lessons learnt from building accessible native mobile apps
 
Where Does User Experience & Accessibility Meet?
Where Does User Experience & Accessibility Meet?Where Does User Experience & Accessibility Meet?
Where Does User Experience & Accessibility Meet?
 
User Experience and Accessibility
User Experience and AccessibilityUser Experience and Accessibility
User Experience and Accessibility
 
Learnings for Accessibility for iOS Platform
Learnings for Accessibility for iOS PlatformLearnings for Accessibility for iOS Platform
Learnings for Accessibility for iOS Platform
 
Mobile Accessibility (MobA11y)
Mobile Accessibility (MobA11y)Mobile Accessibility (MobA11y)
Mobile Accessibility (MobA11y)
 
iOS Accessibility
iOS AccessibilityiOS Accessibility
iOS Accessibility
 
Mobile Accessibility on the Move
Mobile Accessibility on the MoveMobile Accessibility on the Move
Mobile Accessibility on the Move
 
Ubiquitous Transactions - Financial Future and Accessibility
Ubiquitous Transactions - Financial Future and AccessibilityUbiquitous Transactions - Financial Future and Accessibility
Ubiquitous Transactions - Financial Future and Accessibility
 
iOS 10 - What you need to know
iOS 10 - What you need to knowiOS 10 - What you need to know
iOS 10 - What you need to know
 
Beyond the touch screen - better accessibility for mobile apps
Beyond the touch screen - better accessibility for mobile appsBeyond the touch screen - better accessibility for mobile apps
Beyond the touch screen - better accessibility for mobile apps
 
React Native Accessibility - San Diego React and React Native Meetup
React Native Accessibility - San Diego React and React Native MeetupReact Native Accessibility - San Diego React and React Native Meetup
React Native Accessibility - San Diego React and React Native Meetup
 
Android vs. IOS: Comparing features & functions
Android vs. IOS: Comparing features & functionsAndroid vs. IOS: Comparing features & functions
Android vs. IOS: Comparing features & functions
 

Semelhante a The Good, The Bad, The Voiceover - ios Accessibility

Accounting For Every Camper
Accounting For Every CamperAccounting For Every Camper
Accounting For Every CamperAshley Dzick
 
Designing Software With the User in Mind - Symbio
Designing Software With the User in Mind - SymbioDesigning Software With the User in Mind - Symbio
Designing Software With the User in Mind - SymbioEmily Chong
 
Devmento발표100525
Devmento발표100525Devmento발표100525
Devmento발표100525jinwook shin
 
QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10Almog Koren
 
Making Apps More Accessible - Rizwan Ahmed - Swift
Making Apps More Accessible - Rizwan Ahmed - SwiftMaking Apps More Accessible - Rizwan Ahmed - Swift
Making Apps More Accessible - Rizwan Ahmed - SwiftRizwan Ahmed
 
Sensory Aids for Persons with Visual Impairments
Sensory Aids for Persons with Visual ImpairmentsSensory Aids for Persons with Visual Impairments
Sensory Aids for Persons with Visual ImpairmentsDamian T. Gordon
 
Getting Started with Voice UI
Getting Started with Voice UIGetting Started with Voice UI
Getting Started with Voice UIIsidore Gotto
 
Users becoming-designers-begona pino
Users becoming-designers-begona pinoUsers becoming-designers-begona pino
Users becoming-designers-begona pinoBegoña Pino
 
The Next Generation of Flash User Experience
The Next Generation of Flash User ExperienceThe Next Generation of Flash User Experience
The Next Generation of Flash User ExperienceKevin Suttle
 
Guide Dogs and Digital Devices
Guide Dogs and Digital DevicesGuide Dogs and Digital Devices
Guide Dogs and Digital DevicesXamarin
 
Designing iOS apps that rock!
Designing iOS apps that rock!Designing iOS apps that rock!
Designing iOS apps that rock!Joey Rigor
 
virtual-assistant-160214154006.pdf
virtual-assistant-160214154006.pdfvirtual-assistant-160214154006.pdf
virtual-assistant-160214154006.pdfHarshKumar534677
 
Virtual personal assistant
Virtual personal assistantVirtual personal assistant
Virtual personal assistantShubham Bhalekar
 
Jan Kroon's talk @mdevcon 2012
Jan Kroon's talk @mdevcon 2012Jan Kroon's talk @mdevcon 2012
Jan Kroon's talk @mdevcon 2012Jan Kroon
 
AR / UX: Building Augmented Reality Experiences
AR / UX: Building Augmented Reality ExperiencesAR / UX: Building Augmented Reality Experiences
AR / UX: Building Augmented Reality ExperiencesJoey deVilla
 
The Affordances Of Mobile Technologies
The Affordances Of Mobile TechnologiesThe Affordances Of Mobile Technologies
The Affordances Of Mobile TechnologiesNeil Milliken
 
Rediscovering Accessibility for Future Tech - Everyone is affected!
Rediscovering Accessibility for Future Tech - Everyone is affected!Rediscovering Accessibility for Future Tech - Everyone is affected!
Rediscovering Accessibility for Future Tech - Everyone is affected!Samir Dash
 
Presentation 204 lisa bruening aac in times of change
Presentation 204  lisa bruening aac in times of changePresentation 204  lisa bruening aac in times of change
Presentation 204 lisa bruening aac in times of changeThe ALS Association
 
The Future of User Interfaces
The Future of User InterfacesThe Future of User Interfaces
The Future of User InterfacesJason Mesut
 

Semelhante a The Good, The Bad, The Voiceover - ios Accessibility (20)

Accounting For Every Camper
Accounting For Every CamperAccounting For Every Camper
Accounting For Every Camper
 
Designing Software With the User in Mind - Symbio
Designing Software With the User in Mind - SymbioDesigning Software With the User in Mind - Symbio
Designing Software With the User in Mind - Symbio
 
Devmento발표100525
Devmento발표100525Devmento발표100525
Devmento발표100525
 
QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10
 
Droidcon2014 - Android UX
Droidcon2014 - Android UXDroidcon2014 - Android UX
Droidcon2014 - Android UX
 
Making Apps More Accessible - Rizwan Ahmed - Swift
Making Apps More Accessible - Rizwan Ahmed - SwiftMaking Apps More Accessible - Rizwan Ahmed - Swift
Making Apps More Accessible - Rizwan Ahmed - Swift
 
Sensory Aids for Persons with Visual Impairments
Sensory Aids for Persons with Visual ImpairmentsSensory Aids for Persons with Visual Impairments
Sensory Aids for Persons with Visual Impairments
 
Getting Started with Voice UI
Getting Started with Voice UIGetting Started with Voice UI
Getting Started with Voice UI
 
Users becoming-designers-begona pino
Users becoming-designers-begona pinoUsers becoming-designers-begona pino
Users becoming-designers-begona pino
 
The Next Generation of Flash User Experience
The Next Generation of Flash User ExperienceThe Next Generation of Flash User Experience
The Next Generation of Flash User Experience
 
Guide Dogs and Digital Devices
Guide Dogs and Digital DevicesGuide Dogs and Digital Devices
Guide Dogs and Digital Devices
 
Designing iOS apps that rock!
Designing iOS apps that rock!Designing iOS apps that rock!
Designing iOS apps that rock!
 
virtual-assistant-160214154006.pdf
virtual-assistant-160214154006.pdfvirtual-assistant-160214154006.pdf
virtual-assistant-160214154006.pdf
 
Virtual personal assistant
Virtual personal assistantVirtual personal assistant
Virtual personal assistant
 
Jan Kroon's talk @mdevcon 2012
Jan Kroon's talk @mdevcon 2012Jan Kroon's talk @mdevcon 2012
Jan Kroon's talk @mdevcon 2012
 
AR / UX: Building Augmented Reality Experiences
AR / UX: Building Augmented Reality ExperiencesAR / UX: Building Augmented Reality Experiences
AR / UX: Building Augmented Reality Experiences
 
The Affordances Of Mobile Technologies
The Affordances Of Mobile TechnologiesThe Affordances Of Mobile Technologies
The Affordances Of Mobile Technologies
 
Rediscovering Accessibility for Future Tech - Everyone is affected!
Rediscovering Accessibility for Future Tech - Everyone is affected!Rediscovering Accessibility for Future Tech - Everyone is affected!
Rediscovering Accessibility for Future Tech - Everyone is affected!
 
Presentation 204 lisa bruening aac in times of change
Presentation 204  lisa bruening aac in times of changePresentation 204  lisa bruening aac in times of change
Presentation 204 lisa bruening aac in times of change
 
The Future of User Interfaces
The Future of User InterfacesThe Future of User Interfaces
The Future of User Interfaces
 

Mais de Aimee Maree Forsstrom

DOM and Accessibility API Communication
DOM and Accessibility API CommunicationDOM and Accessibility API Communication
DOM and Accessibility API CommunicationAimee Maree Forsstrom
 
Accessiblity 101 and JavaScript Frameworks
Accessiblity 101 and JavaScript Frameworks Accessiblity 101 and JavaScript Frameworks
Accessiblity 101 and JavaScript Frameworks Aimee Maree Forsstrom
 
Javascript Framework Acessibiliity Review
Javascript Framework Acessibiliity ReviewJavascript Framework Acessibiliity Review
Javascript Framework Acessibiliity ReviewAimee Maree Forsstrom
 
Diversity through iOS Development - App Camp 4 Girls
Diversity through iOS Development - App Camp 4 GirlsDiversity through iOS Development - App Camp 4 Girls
Diversity through iOS Development - App Camp 4 GirlsAimee Maree Forsstrom
 
Waving an Open Source Flag in Australian Government
Waving an Open Source Flag in Australian GovernmentWaving an Open Source Flag in Australian Government
Waving an Open Source Flag in Australian GovernmentAimee Maree Forsstrom
 
Govhack - Collections of World War One Connecting the Dots
Govhack - Collections of World War One Connecting the DotsGovhack - Collections of World War One Connecting the Dots
Govhack - Collections of World War One Connecting the DotsAimee Maree Forsstrom
 
Accessibility with Joomla [on a budget]
Accessibility with Joomla [on a budget]Accessibility with Joomla [on a budget]
Accessibility with Joomla [on a budget]Aimee Maree Forsstrom
 
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)Aimee Maree Forsstrom
 
Introduction to Python - Training for Kids
Introduction to Python - Training for KidsIntroduction to Python - Training for Kids
Introduction to Python - Training for KidsAimee Maree Forsstrom
 
UK Communications Bill Proposed Changes 2012
UK Communications Bill Proposed Changes 2012UK Communications Bill Proposed Changes 2012
UK Communications Bill Proposed Changes 2012Aimee Maree Forsstrom
 
Drupal7 themeing changes and inheritence
Drupal7 themeing changes and inheritenceDrupal7 themeing changes and inheritence
Drupal7 themeing changes and inheritenceAimee Maree Forsstrom
 

Mais de Aimee Maree Forsstrom (20)

AI - PAST, PRESENT, FUTURE.pptx
AI - PAST, PRESENT, FUTURE.pptxAI - PAST, PRESENT, FUTURE.pptx
AI - PAST, PRESENT, FUTURE.pptx
 
Pioneering Technology - My Story
Pioneering Technology - My StoryPioneering Technology - My Story
Pioneering Technology - My Story
 
DOM and Accessibility API Communication
DOM and Accessibility API CommunicationDOM and Accessibility API Communication
DOM and Accessibility API Communication
 
Machine Learning ate my homework
Machine Learning ate my homeworkMachine Learning ate my homework
Machine Learning ate my homework
 
Accessiblity 101 and JavaScript Frameworks
Accessiblity 101 and JavaScript Frameworks Accessiblity 101 and JavaScript Frameworks
Accessiblity 101 and JavaScript Frameworks
 
Accessibility, SEO and Joomla
Accessibility, SEO and JoomlaAccessibility, SEO and Joomla
Accessibility, SEO and Joomla
 
Javascript Framework Acessibiliity Review
Javascript Framework Acessibiliity ReviewJavascript Framework Acessibiliity Review
Javascript Framework Acessibiliity Review
 
DeCoupling Drupal
DeCoupling DrupalDeCoupling Drupal
DeCoupling Drupal
 
Diversity through iOS Development - App Camp 4 Girls
Diversity through iOS Development - App Camp 4 GirlsDiversity through iOS Development - App Camp 4 Girls
Diversity through iOS Development - App Camp 4 Girls
 
Waving an Open Source Flag in Australian Government
Waving an Open Source Flag in Australian GovernmentWaving an Open Source Flag in Australian Government
Waving an Open Source Flag in Australian Government
 
Cyber Terrorism or Terrible Code
Cyber Terrorism or Terrible Code Cyber Terrorism or Terrible Code
Cyber Terrorism or Terrible Code
 
Govhack - Collections of World War One Connecting the Dots
Govhack - Collections of World War One Connecting the DotsGovhack - Collections of World War One Connecting the Dots
Govhack - Collections of World War One Connecting the Dots
 
Accessibility with Joomla [on a budget]
Accessibility with Joomla [on a budget]Accessibility with Joomla [on a budget]
Accessibility with Joomla [on a budget]
 
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
 
Introduction to Python - Training for Kids
Introduction to Python - Training for KidsIntroduction to Python - Training for Kids
Introduction to Python - Training for Kids
 
UK Communications Bill Proposed Changes 2012
UK Communications Bill Proposed Changes 2012UK Communications Bill Proposed Changes 2012
UK Communications Bill Proposed Changes 2012
 
Welcome to the World of Trolls
Welcome to the World of TrollsWelcome to the World of Trolls
Welcome to the World of Trolls
 
Drupal7 themeing changes and inheritence
Drupal7 themeing changes and inheritenceDrupal7 themeing changes and inheritence
Drupal7 themeing changes and inheritence
 
Drupal’s growth
Drupal’s growthDrupal’s growth
Drupal’s growth
 
Help me help you learn
Help me help you learnHelp me help you learn
Help me help you learn
 

Último

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 

Último (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 

The Good, The Bad, The Voiceover - ios Accessibility

  • 1. The Good, The Bad, The Voice Over Aimee Maree Forsstrom Technical Director Aug 29-31, 2016 @aimee_maree
  • 2. Who am I? Aimee Maree Forsstrom Old School Technologist — Born before the classic mac was (something Princess Josh reminded me) Educational Research - Academic and paid researcher Principal Engineer - Marcel Sydney Accessibility Advocate - ADHD / ASD / SPD Someone who wants to help people A Problem Solver! and that I think is the most important
  • 3. Why am I here? I have been working in technology since the early days (when flashing gifs where actually how we animated) My main passion in technology has been how humans use technology and the human connection to tech When I was being taught to code I was told don't worry about making your code accessible… Challenge accepted… Solutions Architect and developer for many Aussie accessible websites As I like to say all great things start with a story…
  • 4. Disclaimer I told you there would be iOS code examples I am a web developer and web/email systems administrator by trade Y'all probably know iOS better then me So lets chat about how the API works and discuss some ways to change our thinking of accessibility when designing and developing Apps
  • 5. Accessibility Matters Estimated 15 percent of the worlds population live with some kind of impairment - 2011 WHO World Report on Disability Ageing population Increase in diagnosis of cognitive and sensory differences (ASD, ADHD, SPD) Time Poor Because you make Apps for People Increased Market Share as you cater for wider audience
  • 6. History in 2009 Apple released Voice Over feature on iOS 3.0 If you have an iPhone higher then iphone3 it includes the UI Accessibility programming interface Part of iOS SDK Accessibility checker built into xcode simulator Accessibility attributes available in interface designer
  • 7. OSX / iOS and Accessibility Apple is actually pretty good at having a similar accessibility experience across devices They have for a long time had an actual accessibility team iPad and iPhone have become an assistive aid for many people with disabilities (in certain circumstances the government will give you a grand under NDIS for an ipad) Sorry Android… but after using VoiceOver on iphone Android is a poor experience Google maps horribly inaccessible, however Apple Maps is
  • 8. Accessibility Assistance Or as I like to call it Human Assistance Lets look into some differences in humans that iOS caters for
  • 9. Cognitive Assistance Guided Access Introduced in iOS 6 to help people with cognitive differences and sensory challenges to focus on a single app to provide an uninterrupted learning experience iOS 8 introduced with Time Limits (above), which guides a child through transitions to prepare them to move on to the next activity in a scheduled series
  • 10. Visual Impairments Voice Over on iOS it works with touch sensitive - it can tell the user what is under there finger Speak Screen - it can read your screen for example emails this can be turned on with Siri or your fingers Siri - can be used to activate other accessibility features as well as assist you with reading your emails, tweets Dictation - need to send a message? with dictation you can simply speak it Braille Keyboard - Last time I checked I think Apple supported around 56 Braille keyboards
  • 11. Hearing Impairments Captions - You can caption movies but you can also caption your application when a noise occurs Hearing Aid - There is a long list of different hearing aids supported Mono Audio - Removes the left and right track this is useful for people with hearing issues in only one ear etc
  • 12. Motor Impairments Switch Control - Interaction without touching the screen this allows you to point at elements using a gliding cursor Select elements and actions via external switches that can be activated with head, chin, limb Can work with simple sensitive controls, sip and puff and motion
  • 13. The Good, The Bad, The Voice Over
  • 14. Lets look at VoiceOver? Accessibility API is a way to talk to AT aka VoiceOver Lives in UIKit in UIAccessiblity.h Can access individual items in the user interface Query for its STATUS, STATE and DESCRIPTION Perform ACTIONS and EVENTS
  • 15. Accessibility Architecture App 1. User presses compass app 2. VoiceOver asks "Whats the element at this position" 3. The app looks to its code bundles up the info and sends it to Voiceover RPC 4. VoiceOver knows the actions and attributes of the element and performs needed action
  • 16. Its all about the Attributes (BOOL) isAccessibilityElement - does the element have accessibility features (NSString *) accessibilityLabel - the description (UIAccessiblityTraits) accessibilityTraits - is it a button is it selected (CGRect) accessiblityFrame - onscreen rectangle [container] (NSString *) accessibilityHint - provides additional help (NSString *) accessibilityValue - indicates dynamically changing element [changing states]
  • 17. Accessibility Traits App Static Text Button Image Traits also have Traits Traits define behaviours The play button will start music When user presses button VoiceOver knows to stop speakin and let the media playStarts Media Session
  • 18. Interface Builder has Accessibility functionality build in, makes it easy to add accessibility into your App
  • 19. So its simple then? Standard UI Elements have the accessibility features included However Custom Elements do not, so this is where you need to add them yourself and think about the actions you need VoiceOver to perform
  • 20. Voice Over Gotchas Voice over takes over the gestures on your phone It changes how your phone is controlled Touch to select and double tap to operate Why? Focus… Screen Readers need focus and users need to know whats under their fingers Remember your users don't all speak the one language, so localise your app
  • 21. Development Localise your app - remember your audience is international Errors - make sure your communicate in simple language with text clearly Remember Containers can be a trap, it will start on the high level UI container and then drill down
  • 22. API Calls for media (void) awakeFromNib { UIControl *control = [[UIControl alloc] initWithFrame:frame]; control.isAccessibilityElement = YES; control.accessibilityLabel = @"Play"; [window addSubview:control]; }
  • 23. Whats wrong with this scenario? So lets think about a scenario where you are wanting to convey a historical story about World War II Diary letters, the creative might think I know lets add a fading song in the background and include snippets of soldiers speaking…
  • 24. Think through your application Design is creating something functional, lets think about the functionality of our design Think about scenarios that you might find yourself in? Your on the train your listening to music you see a tweet that says check this cool site out and you click the link… In an autoplay world what happens? does your audio overtake the music app? does your audio interfere with VoiceOver?
  • 25. Change your approach and language See what we did there? We did not need to say “But someone with a disability can not use this app or site” we changed the language to “This will provide a negative user experience” But we want Sound and your degrading our user experience So Lets make it not auto play, lets add a stop and pause button so the user can control it? Accessibility needs to be thought of as inclusive design,
  • 26. Accessibility needs to happen at Design Before you code something draw it Work through the workflow Integrate inclusive thinking into your UX and design Low Vision and Color Bilindness can also be thought of as Sunlight Blindness - don't use colour alone to convey information use colour and shape Think about your timing, don't limit actions to time constraints
  • 27. Screen Readers, Screen Readers… Mac OSX Voice Over Safari/Firefox Mac OSX NVDA Safari/Firefox Mac OSX JAWS Safari/Firefox iOS Voice Over Windows Phone Narrator Windows JAWS Internet Explorer/FireFox/Chrome Windows NVDA Internet Explorer/FireFox/Chrome Linux ORCA Firefox/Chromium … the list keeps growing and the user experience varies greatly
  • 28. There is no industry standard So when your developing a desktop Application you need to speak to the Operating System accessibility APIs For Mobiles its the phones Operating Systems accessibility features For the web its the browser and screen reader combination and this can get complex
  • 29. What can we do? Build accessibility into your release cycle There are accessibility frameworks for testing The iOS Simulator has a built-in Accessibility Inspector. It displays all the accessibility data of any given object on screen (just click on it) Think about inclusivity of your website or app at the design stage
  • 30. Accessibility is not easy… You will need to educate people You will need to add extra time to development You will need to learn new tools You will need to test You will need to fix the bugs You will need to retest