There is no commentSelect some text and then click Comment, or simply add a comment to this page from below to start a discussion.
accessible jupyter notebooks (for all)
this talk is about accessible computational notebooks, specifically jupyter notebooks. it will outline our efforts to understand and improve on the qualities of jupyter notebooks. we'll highlight:
the scope of notebooks in science and software
modern web accessibility standards, conventions, and colloquialisms
notebooks for all is an interdisciplinary accessibility collaboration fusing design research, user testing, and software development to make literate computing notebooks accessible. through this cooperative effort we were able to inspire accessible solutions to a long withstanding vulnerabilities. this effort builds off of years of vigilant community organizing in Project Jupyter.
notebooks are collections of cells that combine code and narrative. cells can be combined in different ways to drive computational narratives in nearly all disciplines.
the notebook defines cells as coupled code input and output.
arepopular provided by different vendors Jupyter, Google, Microsoft, AWS
notebooks are catalyst for documentation, testing, books, classrooms, and blog posts.
the ipynb format is a standard binding millions of notebooks and users.
for me, there are a cognitive accessibility tool and assistive technology for story telling.
the notebooks for all task: what makes an accessible computational document/notebook/essay?
inclusive design in open source
this inclusive design project melded design and open source development. in less than a year, multiple abled and disabled people cooperated to design an accessible substrate for computational notebooks.
user testing helped understand what an accessible document house needs. we learned a lot about how to throw a part, even though sally could't get down the stairs to the basement to play shuffleboard.
users search for and rely on familiarity to manage their experience
"annoying but normal" is the best case scenario
what if cells were input forms? cell inputs are interactive elements, at a minimum they are copy pastable.
get the utilities connected (have a big zoom celebration shout out iota school)
we know community is important - thanks to everyone at the previous hackathon
accessibility work is a community project.
getting the house up to code
two axes:
remediating html versions of notebooks.
applying POUR-CAF principles to the semantic structure of the notebook
the semantic html5 specification
the notebook is a document with metadata. it can be percieved using html a <table> wherein the rows how structured data about each cell in the notebook.
rather than a slew of nested meaningless <div> elements we have semantically markup for notebook documents. each cell represents a complex html <form>
nbconvert --to html5 features
semantic html tags, roles, and aria for the notebook and its cells
efficient tab navigation including:
skips links
heading links with large hit areas
cell source as readonly forms that take tab focus
any other rich interactive content in the output
uses Atkinson Hyperlegible which is:
specifically to increase legibility for readers with low vision, and to improve comprehension.
screen reader landmarks, headings (markdown & outputs), forms (cell inputs), and table navigation
operable when zoomed in
table of contents for code and narrative navigation
lets party
our notebooks for all documentation and github repository transparently share our mutual efforts including meetings minutes, code, and other team resources. all in under a yearโฆ not bad.