Accessible Notebooks Hackathon
Notebooks for All: Jenn Kotler, Patrick Smyth, Isabela Presedo-Floyd, Tony Fast, Erik Tollerud
Welcome
Accessibility:
a Quick Overview
Accessibility
Designing experiences for people with the broadest set of capabilities, including people with disabilities.
“curb cut effect”
Topics to explore more: universal design
STEM careers have significant accessibility barriers
Inaccessible notebooks one of these major barriers
Notebooks
for All
Project Background
Notebooks for All Project
A research collaboration between Space Telescope Science Institute, �Iota School, Quansight Labs, and the broader Jupyter community.
You can find resources on the project’s GitHub repository
Goal: We aim to learn and publicly document:
Problem solving: Iterative Process
Our workflow is cyclical!
Authoring Tips
Notebook formats & accessibility
This is inaccessible and has many obstacles to navigating the UI or to edit cells.
Uneditable notebooks exported to HTML
This is somewhat accessible because HTML is built for web accessibility. �While there are issues, people tend to succeed in accessing a majority of �exported notebooks.
The content of notebooks
This can be totally accessible, if the authors are mindful of some of the following. This is where you can act now!
Consider these tips when creating �a Jupyter notebook you plan to �share publicly
This list is distilled from feedback we received from blind and visually impaired developers
Organization
Give context at the beginning.
Be sure to include:
Use your Markdown
Skipping heading levels creates an unclear navigation experience for people reading the notebook.
Images
Image descriptions
Describe what is in the image as it is relevant to the rest of the notebook. Add alt text if supported:
If there’s text inside an image, include it in the description.
Alt Text - A definition
HTML element that allows a screen reader to describe what an image is.
Text inside generated graphs cannot be read by a screen reader and may be too small to read with low-vision. The same information needs to be in alt text or captions.
When writing alt text for a plot, include:
Including only this image is not enough because the titles and axis are not accessible
Visualization - Labels
Label your visualization.
Visualization - Colors
Because the lines on this graph have been given a low opacity, some of the colors do not meet contrast standards
Visualization - Conveying the data
Text
Use descriptive link names
Do not put links on:
Do put links on words describing where the link leads:
“More resources in the Notebooks for All Github repository.”
Use ‘plain’ language
Code
Lead into code cells
Code
Before a code cell, describing the end goal, relevant functions, and variables can help. Source: NumPy Tutorials
Other Content Types
Notebooks are full of creative ideas
This includes videos, sonifications, interactive widgets, and more. In general:
When in doubt, write it out.
Important Take-aways
Summary
Questions?
Prepping to Hack :)
Hack Activity - 1 Hour
Evaluating a notebook for Accessibility
Let’s apply the authoring tips to real-life Jupyter Notebooks
1. Pick your notebook, and export it to HTML�
Our use one of these Space Telescope exported notebooks:
2. Evaluate your notebook using the accessibility checklist�
3. As a group, use the final 10 minutes to discuss��
Break-out Rooms
After 1 hour, we will reconvene and discuss
Questions?
Let’s Hack :)
But first… a 5 Minute Break
Post-Hack
Discussion
Discussion Questions
Thanks for attending!
Notebooks for All: Jenn Kotler, Patrick Smyth, Isabela Presedo-Floyd, Tony Fast, Erik Tollerud