Making Computer Science Education Accessible to All Students

On Global Accessibility Awareness Day, we celebrate the tenth anniversary, with the question, what does it take to remove accessibility barriers to make computer science literacy, education, and careers accessible to ALL?

A group of individuals with different types of disabilities

According to the US Bureau of Labor Statistics, the employment of computer and information research scientists is projected to grow 15 percent from 2019 to 2029. However, individuals with disabilities are less likely to pursue information technology degrees. One of the reasons for this is the lack of accessible learning applications and curriculum. For example, a blind student who uses a screen-reader to navigate a computer. Screen-reader software such as JAWS and Voiceover render text or image output on a computer screen as audio or in braille.

Many Computer Science(CS) learning applications are not accessible to screen-readers, which leads to blind students being deprived of CS education. Let us consider another example of a Deaf student whose first language is American Sign Language (ASL). ASL is the first language of an estimated 500,000 people in the United States, yet there are limited resources offering CS curriculum in ASL. Similarly, individuals with other disabilities face different kinds of challenges. All companies, researchers and educators must work on building a stronger infrastructure towards accessible CS education.

Make the Lowest Level of Technology Stack Accessible

It is not too challenging to make pure text and image-based applications accessible to screen-readers by following the Web Content Accessibility Guidelines (WCAG). But what about applications that have complex graphics and are highly visual? Computer programming learning applications contain a lot of graphics and rely greatly on visual cues. For example, Block-Based Programming applications, which are commonly used to teach K-12 beginner students to learn to code, involve dragging and dropping blocks of code to make a 2D/3D Graphic character do something. Although work has been done to make the input, i.e., the dragging and dropping accessible through Keyboard, much work still remains to be done to make this graphical code output accessible.

Researcher Andreas Stefik, the inventor of the accessible programming language Quorum, recently suggested that, “Accessibility APIs should be built into the core graphics toolkits” and such visual programming environment applications must have “operating system hooks in order to make them connect to accessibility technologies.” This is quite important as not every developer of educational applications has the expertise to make accessibility related changes in core graphical toolkits or at the operating system level. Companies and researchers developing graphical toolkits and/or operating systems must design this lower-level stack with accessibility in mind. It is great to know that the new public draft of the WCAG will contain advice on making operating systems and other platforms accessible.

Develop with Inclusive Design in Mind

Organizations developing learning applications must have in mind inclusive design that takes the experiences of diverse users into account, and optimize a product accessibility for those users, especially those with disabilities.

A man working with a women (who uses a wheelchair) with a tablet in her hands.

This can be done through UX research and detailed evaluations at various intervals of developing the product. Embedding principles of inclusive design and accessibility is not an easy process and requires buy-in from various company stakeholders. Microsoft is an excellent example of a company that has baked accessibility in their design process. One of their most popular developer products, Visual Studio which is an editor users to write code, has great accessibility features such as Keyboard shortcuts and color customizations. They also have an excellent guide on inclusive design practices.

Teach using Multimodal Strategies

Accessible programming environments, as discussed above, can remove a lot of burden from educators who have to find ways to circumvent inaccessibility. However, effectively learning computer programming is not just limited to using accessible learning interfaces. Multimodal learning strategies using graphics and music, which are best suitable for people with disabilities, must be used by educators to develop computational thinking. For example, CS Unplugged activities use physical manipulatives to teach CS concepts to K-12 students. If a particular unplugged activity involves the use of paper, it should be printed using a braille embosser for a blind student to participate. Apple released tactile coding puzzles so that students who are Blind can navigate the puzzles using touch and learn to code. A research lab at Auburn University, led by Dr. Daniela Marghitu, is developing CS videos using ASL, in partnership with the non-profit organization Deaf Kids Code. This work is supported by NSF and a SIGCSE Special Projects Grant. Below is an example of an IF-ELSE concept in ASL developed by Auburn University.

Video of an example of an IF-ELSE concept in ASL developed by Auburn University

Computer science is a growing and important field of the present and future. When the tools to learn programming from an early age are inaccessible to people with disabilities, we are denying them the opportunity to succeed. Encouraging people with disabilities to pursue CS does not make sense if the learning tools and instruction are not accessible. That is why on this Global Accessibility Awareness Day, together we need to pledge to do our part to make CS education accessible; whether as an organization, researcher or an educator, let’s strive to break this barrier and make CS literacy, education, and, ultimately, careers accessible to ALL.

About the Authors: Meenakshi ‘Meena’ Das is an incoming software engineer at Microsoft. She recently graduated with a master’s degree in CS where she worked as a Graduate Research Assistant on accessible CS education under the direction of Dr. Daniela Marghitu. She is also the founder of ‘Working with Disabilities’ a support group for students and working professionals with disabilities.

Dr. Daniela Marghitu is a faculty member in the Computer Science and Software Engineering Department at Auburn University, where she has worked since 1996. She is the Co-PI of NSF CISE “EAGER: An Accessible Coding Curriculum for Engaging Underserved Students with Special Needs in Afterschool Programs”. For more information, see her official site.

The national hub for the Computer Science for All movement, making high-quality computer science education an integral part of K-12 education in the US.