Monday, April 11, 2016

Open letter to computer science students, faculty and others: beautiful means accessible, too, teaching accessibility design as part of computer science courses

Fellow developers, computer science students, professors and scholars, university leaders, industry observers and others:

My name is Joseph S. Lee, a former computer science student at University of California, Riverside, currently majoring in communication studies at Los Angeles City College and part of a team of developers of a screen reading software. First, I hope many of you are having a good time as you go through spring academic term (and for those who’ll be graduating this year, congratulations).
I’d like to take some time to talk to you about a subject that I’m sure some of you are talking about in your classrooms, in your business meetings, included as part of requirements analysis documents and so on: product accessibility, specifically software accessibility, or as I see it, a lack of such discussion in the educational setting.

According to one study, the number of people with disabilities is several hundred million. For visual impairment alone, the World Health Organization in 2014 estimated that there are about 285 million people with varying levels of visual impairment. Another study reports that, with discovery of new diseases and aging population around the world, we’ll witness increases in incidents of encountering people with disabilities.
For many folks with disabilities, computerized equipment’s such as mobility aids and assistive software such as screen readers have become an important part of their lives. Computerized hardware are opening the doors for employment, education and job opportunities, while assistive computer software are making strides at making lives of disabled people easier through speech and image recognition, face-to-face and computer-mediated communication, workplace collaboration and so forth. Companies such as Microsoft, Google, Facebook, Twitter and others have set up accessibility communication channels and have promised to make their products accessible to all, including people with disabilities.
However, it is not just the big corporations that should be saying all this. As a person who have tasted the power and potential of computer science despite blindness, I do know that student developers, scholars and others involved in training the next generation of computer scientists and influential programmers should also join the bandwagon and say, “we too can help people with disabilities through education, product development and outreach”. Also, by teaching student developers about accessibility, they could make an impact around the world and gain experience on working with users with disabilities by the time they receive their diplomas. Lastly, I believe that students, professors, researchers, industry observers and others should remember that design doesn’t stop at defining beautiful user interfaces and to remember the notion that beautiful means accessible as well.

First, I believe it is vital to teach students that their products and ideas will be used not only by peers, but also people from all walks of life including users with disabilities. Somewhere in the world, a blind computer user would appreciate the fact that a sighted computer science student is writing a mobile app to improve his chances of finding a job. In another part of the world, thanks to work from a team of student engineers, a deaf professional can conduct business meetings via online communication. Still in another part of the globe, an autistic child would dream of becoming the next Steve Jobs thanks to apps made by computer science students who do care about the needs, well-being and future of this child.
If the mission statement of computer science discipline is to solve problems and make the world a better place through machine-based interventions, then I think it is important for students to remember that accessibility is a problem that they have powers to solve. That is, by engaging with users with disabilities and learning to work with them, student developers will gain insight into the widespread epidemic of accessibility issues facing the globe, especially for those who cannot afford a luxury such as a tablet, computer software and a chance to navigate this vast ocean called the Internet. With the rise in popularity of computer science education in many countries and with the demand for software developers on the rise, I believe today’s computer science students are better equipped to tackle accessibility problems.

Speaking of accessibility problems, as a software developer working on screen reading software, I’m disappointed at the current level of awareness of accessibility among students, faculty, university leaders and industry observers despite outreach efforts by many. There are numerous events promoting accessibility for people with disabilities such as annual CSUN conference, a number of companies have talked about accessibility improvements, a number of countries have shown interest in legislations or court cases involving inaccessible websites and devices, and there is even a special interest group in Association for Computing Machinery (ACM) that deals with accessibility.
Although students and faculty could look up information on accessibility issues in spare time or as part of research, the idea that accessibility is a growing trend in software design isn’t addressed in the vast majority of software engineering lectures. We can spend all day talking about requirements analysis, product lifecycle management, unit testing frameworks and so on. But I believe that today’s software engineering courses, let alone any computer science course dealing with topics such as operating systems, artificial intelligence and so on cannot ignore accessibility. In fact, accessibility considerations are one of the cornerstones of user interface researches around the world, scientists are researching human-friendly AI’s, operating system vendors are providing tools to make lives of people with disabilities easier and so on. Given that incidents of people with disabilities is on a rising trend, coupled with the fact that more and more young people (late teens and early twenties) are discovering the art and science of programming, I believe that it is time that high schools, colleges and universities should start thinking about incorporating accessible product design and engaging with users with disabilities as part of their curriculum.

Lastly, I would like to address the notion that beautiful design doesn’t necessarily mean accessible in the context of software user interface and assistive technologies. In the past, because of lack of awareness and support from operating systems, it was cumbersome to use highly visual software package such as presentation software, collaboration tools and so forth. Nowadays, thanks to continued advocacy from users, developers and observers, we’ve seen vast improvements in accessibility of software products. Operating systems designed for desktops, laptops, tablets and so on such as Microsoft Windows, OS X, Linux and others include basic assistive software as a standard, while others provide API’s (application programming interfaces) such as UI Automation for use by assistive software such as magnifiers, screen readers and others to impart screen information such as color, location, live information and so on. Mobile devices and operating systems such as iOS, Android, Windows Mobile and others aren’t exceptions anymore - computer users with disabilities are scrutinizing mobile device and OS releases to locate accessibility regressions, and companies such as Microsoft and Apple have publicly acknowledged accessibility issues in preview software thanks to feedback from users of assistive software. Because of these improvements, what might have been inaccessible is being transformed into something that is accessible for all, including highly visual software such as Microsoft PowerPoint, thus enforcing my view that beautiful means accessible too, something that, I think, not many computer science students are introduced to.

In closing, I would like to pose the following questions to readers of this open letter:
·         For students and student developers: I’m sure many of you would like to see your ideas come to life and want your next app to become a hit in various app stores. If you want to target all users, does this mean excluding people with disabilities in order to achieve beautiful user interfaces and experiences? Many years ago, I took the same path like you did or are doing: discovering art and science of programming, data structures, algorithms, operating system concepts and so on. Please remember this: somewhere around the world, peers like you who have disabilities crave what you are doing and are searching for solutions to make their computing lives easier, and as the next generation of computer science and information technology professionals, you have the full power of your education at your disposal to help people like me who have disabilities. I know it won’t be easy to think about accessibility in the beginning, but trust me: learning about accessibility issues, causes and solutions during product design can help you in the long run (there are developers with disabilities like me who can assist you).
·         For computer science faculty and university leaders: First, thank you for teaching me and others about the beauty of computer science discipline. Although we didn’t understand some concepts during lectures, we’re seeing various concepts come to life as we gain experiences. As a computer user and a software developer with a disability, if there is one concept I think students should master, it would be user-centric design, particularly accessibility. I would like to kindly suggest implementing a way to talk to students about accessibility, either as an overview course, during discussions, labs and so on. If some computer science students cannot obtain jobs after graduation, how much more would it be for computer users with disabilities who cannot afford a way to improve their lives through computerized solutions? Please consider teaching students about importance of engaging with the community, particularly with people with disabilities as students lay out their future and use their talents to make the world a better place for many.
Thank you.
Joseph Lee
Former student of computer science, University of California, Riverside (2008-2014)
Student of communication studies, Los Angeles City College (2015-present)
Translator, code contributor and community add-ons reviewer, NVDA screen reader project (, June 2012-present)