Accessibility as a First Class Citizen

Rate this content
Bookmark

All too often A11Y is only an afterthought and will be added to a project "when we have time" i.e. never. But there are a many reasons why you should develop with a11y in mind from the start including some that will convince The Higher-Ups. We'll explore tools we can use to help us develop more accessibly and talk about some of the quirks and limitations that React Native has.

This talk has been presented at React Summit 2020, check out the latest edition of this React Conference.

FAQ

TypeScript is currently the most popular programming language.

TypeScript is considered the best language for learning JavaScript because it emphasizes not just types, but also how to write and express code effectively.

React is a popular JavaScript library for building user interfaces. It is important because it helps developers create interactive and dynamic web applications.

Sophie Au is a front-end full stack developer with experience in back-end development. She has been focusing on front-end development, specifically React Native, for the past one and a half years.

Sophie Au's talk focuses on accessibility in general and specifically in React Native. She discusses who accessibility is for, why it is important, and how to implement it effectively.

Accessibility features benefit not only people with disabilities such as visual, hearing, and motor impairments, but also people with slow or spotty internet connections, old devices, and different screen sizes. It also considers people's personal sensibilities and left-handed users.

Building accessibility in from the start is important because adding it later can be costly and time-consuming. It ensures that all users can access and use the app or website effectively from the beginning.

Designers should ensure high contrast colors, accommodate zoom levels, provide large tap areas, plan for loading and error states, and create simple and short app flows. They should also avoid offensive or condescending language and consider the needs of non-native speakers.

Companies should care about accessibility because it is the right thing to do, and it can prevent legal issues and lawsuits. Additionally, accessible apps and websites attract more users and employees, enhancing the company's reputation.

Engineers play a crucial role in making apps and websites accessible by ensuring that they are usable with screen readers, run efficiently on low computing power, and do not drain users' batteries. They also use tools to verify accessibility compliance.

Sophie Au
Sophie Au
24 min
17 Jun, 2021

Comments

Sign in or register to post your comment.

Video Summary and Transcription

Accessibility is vital for everyone, not just for those with disabilities. It benefits users with slow or no internet, old devices, and different sensibilities. Building accessibility can prevent lawsuits and attract users and employees who value inclusivity. Around 50% of the world population has some form of disability, making it crucial to consider accessibility from the start. High contrast colors, zoom levels, tap areas, loading and error states, and simple app flows are essential for designers. Content should be easily understandable, avoiding offensive or hurtful language. Engineers play a crucial role, especially for screen readers, and must ensure apps run on low computing power and slow internet. The Accessibility Inspector is a key tool for Mac developers to run audits. React Native's Accessibility API and props cover most use cases. Setting the accessible prop groups text elements for screen readers. The accessibility label describes components, while the accessibility role indicates interactivity. Setting the accessibility state to 'disabled' accurately conveys the button's state. The Pareto principle applies to the remaining accessibility needs. TypeScript is popular for learning JavaScript, and React Native allows building mobile apps using React. Accessibility in app development ensures inclusivity and prevents exclusion of users.

1. Introduction to Accessibility and React Native

Short description:

TypeScript and React are the most popular languages. TypeScript is great for learning JavaScript. React is about making connections. Welcome to my talk on accessibility as a first-class citizen. I'm Sophie Au, a front-end full stack developer with a focus on React Native. I've delved into accessibility due to my role as a diversity advocate. Check out my website and follow me on Twitter. This is part 1 of 2, with a focus on accessibility in general and React Native.

So, what's the most popular language? TypeScript. And, of course, React. TypeScript is the best language for learning JavaScript. And it's really not about type. It's about the type. It's about the word. The language is about how to write it. It's about how you can learn it, it's about the way to express it, and, yes, it's about the language coming up. It's about making a connection. And, of course, React is about that. Most people don't do a lot of research when it comes to languages or languages. But it's about making a connection. So, if you're working on a course, it's about making a connection. If you're working on a course, it's about making a loop. And that's it.

Hey, everyone. And welcome to my talk. Accessibility as a first-class citizen. My name is Sophie Au. The pronouns are she, they, or he. I'm not too fast. People generally go with she, though. I'm a front-end full stack developer. Coming from the back-end originally but for the last one and a half years, roughly, I've been doing front-end, React Native specifically. And in my time in the React Native front-end, I've also been somewhat of the token diversity person in my company which also essentially led me down the accessibility rabbit hole, which is I guess part of the diversity. If you want to know more about me, you can find me on the internet on SophieAu.com. My website among other things, I have a whole block series on accessibility and you can also follow me on Twitter at Sophie Au.

Before we jump in, just a quick note that this is somewhat of a part 1 of 2 together with Jean-Luc's talk on accessibility on the web, which is going to be airing, or she is going to be airing in about an hour, I think, one and a half hours. So I'm going to focus more on accessibility in general in the first half of my talk, so who is it for? Why do we do it? How do we do it? And then I'm going to focus on accessibility in React Native, specifically. So, let's jump right in.

2. Who's Accessibility For and Why Should We Care?

Short description:

Who's accessibility for? It's not just for blind people or those with disabilities. It's also for those with slow or no internet, old devices, and different sensibilities. Building accessibility is the right thing to do and can prevent expensive lawsuits. It also attracts users and employees who value inclusivity. Around 50% of the world population is disabled, including those with minor impairments.

Who's accessibility for? When I ask my engineering buddies, usually the number one answer that I get is for blind people, people with visual impairments, which technically isn't wrong, it's definitely for those people, but that's only a small sub-group of people who we need to build an accessibility for.

When I try to dig in deeper, asking who else could accessibility be for, usually what I get is people who are disabled, which, amongst other things, includes people who are deaf or have a hearing impairment, people who have a motor impairment, people with neurological or mental disorders, or people with learning disabilities. And again, this is definitely people that we need to build an accessibility for, but it's not everyone, because what accessibility also contains is building for people who have slow internet, or no internet, or spotty internet connection, people who have old and slow devices with different screen sizes, some are tiny, some are huge.

Like, for example, me personally, I have a Samsung Galaxy S5, which is probably older than most people who are going to watch this talk, and if I turn on Bluetooth, my battery is just immediately going to drain, which means that, for example, I can't use the German COVID app, because my phone just dies immediately. But also, things you need to be aware of are people's personal sensibilities. Some things that you think are normal and fine are offensive to people, are hurtful. And also one thing, especially in mobile development, is you need to be aware that some people are left-handed and some people have small hands, and you need to make sure that your app can be, like, that the corners of the app can be reached by everyone.

So now that we have the list of people who we build an accessibility for, why should we care? And really there's kind of two big things. Number one is it's the right thing to do. You don't want to on purpose exclude people. Of course, you know, if you're not aware of the issues that your app has in terms of accessibility, that's fine. You know, everyone starts somewhere. Do your best. Get there. But if you are aware of your issues, you should fix them to help other people out. And then the one point which usually goes down really well with the C-level types, your managers is, you know, not being accessible can get really expensive. And why is that? Because if your accessibility is bad, you run the risk of getting sued. In the U.S., there's the Americans with Disabilities Act, there's different types of legislation in, I guess, most countries around the world where if your app or your website is inaccessible, you can get sued, and those legal costs can run really high. It happened to Beyonce. It happened to Domino's Pizza, and you don't want to run, you don't want to join that club. And then it's not only the legal costs that are going to cost that, that are going to make it expensive. It's also fixing that issue if you don't want to get sued like two months later. So fixing the issue takes engineering time, it takes design time, you might have to overhaul the whole feature because it's just not possible to do this accessibly. And it's going to cost you time as well, which might give your competitor the advantage to shoot ahead and like take part of your, of your market. And then not only is it costly in that situation, it's also costly in the future where, you know, nowadays, people want to work for companies that do good, and users want to use apps of companies that do good, and to attract a valuable user, to attract good employees, you want to show them that you are a company that values people, which also includes making your app accessible, making your website accessible. And speaking of users, up to or according like, depending on the statistic, with the World Health Organization, it's around 50% of people. Yeah, 50% of people are of the world population are disabled. And that doesn't include, for example, your, your parent who, even though they can barely going to wear reading glasses because they're not that old and they can read just fine, or your grandparents who even though they can't hear a thing, just tell you no, just speak up louder. It's fine, I don't need a hearing aid. Those people aren't even counted in that statistic.