-
Notifications
You must be signed in to change notification settings - Fork 0
/
assets2023_vscode.qmd
168 lines (125 loc) · 8.03 KB
/
assets2023_vscode.qmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
---
format: acm-pdf
# use keep-tex to cause quarto to generate a .tex file
# which you can eventually use with TAPS
keep-tex: true
bibliography: bibliography.bib
title: "Coding Non-visually in Visual Studio Code: Collaboration Towards Accessible Development Environment for Blind Programmers"
# if short-title is defined, then it's used
short-title: VSCode_A11y
author:
- name: JooYoung Seo
email: jseo1005@illinois.edu
orcid: 0000-0002-4064-6012
affiliation:
name: School of Information Sciences, University of Illinois at Urbana-Champaign
address: 614 E Daniel St
city: Champaign
state: Illinois
country: USA
postal-code: 61820
- name: G.K.M. Tobin
email: webmaster@marysville-ohio.com
affiliation:
name: Institute for Clarity in Documentation
address: P.O. Box 1212
city: Dublin
state: Ohio
country: USA
postal-code: 43017-6221
# acm-specific metadata
acm-metadata:
# comment this out to make submission anonymous
# anonymous: true
# comment this out to build a draft version
# final: true
# comment this out to specify detailed document options
acmart-options: manuscript,review
# acm preamble information
copyright-year: 2018
acm-year: 2018
copyright: acmcopyright
doi: XXXXXXX.XXXXXXX
conference-acronym: "Conference acronym 'XX"
conference-name: |
Make sure to enter the correct
conference title from your rights confirmation emai
conference-date: June 03--05, 2018
conference-location: Woodstock, NY
price: "15.00"
isbn: 978-1-4503-XXXX-X/18/06
# if present, replaces the list of authors in the page header.
shortauthors: Trovato et al.
# The code below is generated by the tool at http://dl.acm.org/ccs.cfm.
# Please copy and paste the code instead of the example below.
ccs: |
\begin{CCSXML}
<ccs2012>
<concept>
<concept_id>10010520.10010553.10010562</concept_id>
<concept_desc>Computer systems organization~Embedded systems</concept_desc>
<concept_significance>500</concept_significance>
</concept>
<concept>
<concept_id>10010520.10010575.10010755</concept_id>
<concept_desc>Computer systems organization~Redundancy</concept_desc>
<concept_significance>300</concept_significance>
</concept>
<concept>
<concept_id>10010520.10010553.10010554</concept_id>
<concept_desc>Computer systems organization~Robotics</concept_desc>
<concept_significance>100</concept_significance>
</concept>
<concept>
<concept_id>10003033.10003083.10003095</concept_id>
<concept_desc>Networks~Network reliability</concept_desc>
<concept_significance>100</concept_significance>
</concept>
</ccs2012>
\end{CCSXML}
\ccsdesc[500]{Computer systems organization~Embedded systems}
\ccsdesc[300]{Computer systems organization~Redundancy}
\ccsdesc{Computer systems organization~Robotics}
\ccsdesc[100]{Networks~Network reliability}
keywords:
- datasets
- neural networks
- gaze detection
- text tagging
# if uncommented, this produces a teaser figure
#
# teaser:
# image: sampleteaser
# caption: figure caption
# description: teaser description
abstract: |
In this paper, we will showcase a few examples of how blind and sighted developers have been working together to make Visual Studio Code more accessible. Through our collaboration, which is evident in the GitHub issues, pull requests, review process, and insiders releases we've created together over the past few months, we hope to help other open source developers use these methods to create more accessible development environments.
---
# Introduction
An integrated development environment (IDE) is an application that conveniently provides essential functions for the entire programming process, including source editing, compiling and interpreting, and debugging. IDEs have become an essential tool for not only software developers, but also STEM engineers and data scientists in many fields to efficiently manage their computing environments. However, blind developers are not able to take advantage of the many features that graphical user interface (GUI)-based IDEs offer. For example, syntax highlighting, code autocompletion and autosuggestion, diagnostics and linting, variable watches and breakpoints are underutilized even among experienced blind programmers, and many blind developers are still working manually with simple text like Notepad, along with runtime and compile terminals. Behind this problem are intertwined issues of accessibility and learnability. Because different IDEs use different architectures and have different levels of accessibility compliance, blind developers face a new learning curve each time they use an IDE. Blind developers also face the additional challenge of learning the non-visual workaround of accessing an IDE with a screen reader. Although there is a community of blind programmers called Program-L that helps each other with their struggles, IDEs remain a daunting barrier for blind people.
These difficulties are a major socio-technical barrier to blind developers reaching their full potential in the computing field and to social and professional participation. From the perspective of the social model, which recognizes that an individual's disability may stem from structures and cultures that sociotechnically limit their access, rather than from physical, sensory, cognitive, or emotional issues, we can see that IDE accessibility issues are no longer a group-specific problem that blind people must endure, but a collective task for the technology community to reduce barriers together. Specifically, to address these issues, blind and sighted developers need to work together to understand the challenges that blind developers face in using IDEs, and then collaboratively find ways to address those challenges.
This paper is the empirical product of blind and sighted developers who have thought deeply about these issues and actively collaborated. We describe how the first author, who is blind, and the second author, who is sighted, have been working together to make the open source IDE Visual Studio Code (VSCode) non-visually accessible, and what specific accessibility features have been implemented as a result of our collaboration.
In the following sections, we start with some background on how our collaboration began, then present our methods and deliverables. Finally, we'll share some insights from our collaboration.
# Background
## Visual Studio Code and Accessibility
* Brief history of VSCode
* How accessibility commitment got started
## Biographies of the Authors
The first author of this paper is blind with only light perception, currently working as an assistant professor in the School of Information Sciences at the University of Illinois at Urbana-Champaign. At the university, he teaches introductory data science courses using R and Python to undergraduate and graduate students. As a lifelong non-visual programmer, he has experience with a variety of IDEs including Visual Studio, Eclipse, and Net Bean, including text editors such as Emacs/Emacspeak, VIM, and NotePad++, on Linux, Mac, and Windows operating systems, using a variety of screen readers (e.g., JAWS, NVDA, Narrator, VoiceOver, and Orca) and refreshable braille displays. He is a certified professional in accessibility core competencies (CPACC) from the International Association of Accessibility Professionals and has contributed code to a number of open source data science projects to improve screen reader accessibility, including RStudio IDE Server and the web-based data science dashboard Shiny, reproducible tehnical publishing systems (e.g., R Markdown, bookdown, and Quarto), and the data table package gt.
* About Megan
## Collaboration Methods
* How we met and collaborated
* gitHub issues/PR, email, test.
# Case Studies
## VSCode Terminal Buffer
## Git Diff and Audio Cues
## Verbosity Settings
## Copilot and Inline Suggestions
# Discussion and Conclusion
# Acknowledgments
::: acks
We thank ...
:::
# References {-}
::: {#refs}
:::