1 / 16

Composing Accessible Code Kevin Brock University of South Carolina kevin@brockoleur

Composing Accessible Code Kevin Brock University of South Carolina kevin@brockoleur.com @brockoleur http://brockoleur.com/writing/cw2014. The Basics: Where We Are. Three intertwining contexts / conversations over time: Composition/writing studies → multimodality

eliza
Download Presentation

Composing Accessible Code Kevin Brock University of South Carolina kevin@brockoleur

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Composing Accessible Code Kevin Brock University of South Carolina kevin@brockoleur.com @brockoleur http://brockoleur.com/writing/cw2014

  2. The Basics: Where We Are • Three intertwining contexts / conversations over time: • Composition/writing studies → multimodality • Accessibility → universal design • Software development → broader coder population

  3. The Problem: Where To Go? • How can we improve accessibility for programming to improve digital accessibility more broadly? • (For that matter, why should we?)

  4. Accessibility and Design • Universal design: providing all audiences/users/people with the means of engaging (“consuming”) a particular experience • Individual design: providing all users/people with the means of creating individually oriented artifacts and environments • Yergeau et al. (2013): “many multimodal texts are not designed with flexible means for manipulating the information at the level of the user”

  5. Extending Programming Practices • Efforts generally entail adding a new interface/medium to the development process, e.g. renovated GUI environments • This means that existing code languages are generally left untouched/unchanged—restricting the possibilities for improving accessibility

  6. Extending Programming Practices • TempleOS (Davis)

  7. Syntactical/Lexical Substitution • Usually, this occurs as renaming, often seemingly superficial as easy informative recall for author(s): • var totalCount = 0; • var incrementer = 1; • [...] • function myTotallySweetCounter() { • totalCount += incrementer; • } • [...] • myTotallySweetCounter();

  8. Syntactical/Lexical Substitution • An excerpt of Dogescript side-by-side with Javascript: much very woof as 1 next woof smaller 3 next woof more 1 plz console.loge with {such: 'doge'} wow shh doge style very science is 4 much very so as 1 next so smaller 10 next so more 1 rly so bigger 2 plz console.loge with {such: so} wow wow for (var woof=1; woof<3; woof+=1) { console.log({ such: 'doge' }); } // doge style var science=4; for (var so=1; so<10; so+=1) { if (so>2) { console.log({ such: so }); } }

  9. Syntactical/Lexical Substitution • Part of “Hello World” in Shakespeare Programming Language: • Romeo, a young man with a remarkable patience.Hamlet, the flatterer of Andersen Insulting A/S. • Act I: Hamlet's insults and flattery. • Scene I: The insulting of Romeo. • [Enter Hamlet and Romeo] • Hamlet: • You lying stupid fatherless big smelly half-witted coward! You are as stupid as the difference between a handsome rich brave hero and thyself! Speak your mind! • You are as brave as the sum of your fat little stuffed misused dusty old rotten codpiece and a beautiful fair warm peaceful sunny summer's day. You are as healthy as the difference between the sum of the sweetest reddest rose and my father and yourself! Speak your mind!

  10. Visual Programming • Scratch and its derivatives (SNAP!, Blockly) • Shapes and colors indicate particular purposes & functionalities of specific elements • IDE of executed program directly next to development space/window

  11. Visual Programming

  12. Visual Programming

  13. Visual Programming

  14. Voice Dictation • A very rare occurrence—its rarity reflects the current visual alphabetic (not phonemic) paradigm • When possible, watch & listen to Tavis Rudd's “Using Python to Code by Voice” • https://www.youtube.com/watch?v=8SkdfdXWYaI • A mixture of emacs, Dragon Naturally Speaking, and speech utterances

  15. So, For Real: Where To Go? • Sorry: no real answer or solid vision for the future, yet • Writing scholars have the chance to involve themselves in significant work influencing paths for software development • Questions to grapple with: • How do we make the act of programming as accessible as familiar day-to-day programs? • How do we do so in a manner that addresses universal and individual design concerns?

  16. Works Cited • Bruggeman, Z. (2013). Dogescript. Available from https://github.com/remixz/dogescript • Davis, T. (2013). The Temple Operating System. Available from https://www.templeos.org • Fraser, N., et al. (2014). Blockly: A visual programming editor. Available from https://code.google.com/p/blockly/ • Lifelong Kindergarten Group. (2013). Scratch – Imagine, program, share. Available from http://scratch.mit.edu/ • Mönig, J., Harvey, B., et al. (2011). SNAP! (Build your own blocks). Available from http://snap.berkeley.edu/ • New London Group. (1996). A pedagogy of multiliteracies: Designing social futures. Harvard Educational Review, 66(1), 60-92. • Rudd, T. (2013). Using Python to code by voice. Youtube. Available from https://www.youtube.com/watch?v=8SkdfdXWYaI • Wiberg, K., & Åslund, J. (2001). The Shakespeare Programming Language. Available from http://shakespearelang.sourceforge.net/ • Yergeau, M., et al. (2013). Multimodality in motion: Disability & kairotic spaces. Kairos, 18(1). Available from http://kairos.technorhetoric.net/18.1/coverweb/yergeau-et-al/index.htmlTemporarily available from http://pwr.gmu.edu/kairos/18.1/coverweb/yergeau-et-al/index.html

More Related