Live data from Hacker News

Ask HN: How should a programming language accommodate disabled programmers?

news.ycombinator.com

11–20 of 122 posts

Re: Ask HN: How should a programming language accommodate disabled programmers?

#11
Moore indicated one of the motivating factors in choosing colour was to accommodate his failing eyesight[1]

I have previously attempted to program blind and reported some of my experiences[2].

[1]: https://en.wikipedia.org/wiki/ColorForth

[2]: https://news.ycombinator.com/item?id=9284567

Re: Ask HN: How should a programming language accommodate disabled programmers?

#12
>Making whitespace-sensitive syntax, like in Python & Haskell, optional syntactic sugar for explicit brackets & separators.

That shouldn't matter with an IDE or plugin. If static analysis can identify the blocks -- and it has to! -- the screen reader can just read it as if it had your preferred block notation rather than noting the whitespace.

Re: Ask HN: How should a programming language accommodate disabled programmers?

#13
Just want to note that in Haskell, whitespace syntax _is_ syntactic sugar for brackets etc. I don't recall that being the case for python. Interesting tidbit, some of the big names in the Haskell community have very idiosyncratic coding styles that use the bracket look.

Re: Ask HN: How should a programming language accommodate disabled programmers?

#14
Slightly off-topic: how do blind programmers read code? Does the screen reader recite it aloud and just say "int main left-paren void right-paren open-brace int i equals zero...", or does it use some other kind of auditory vocabulary to make it more meaningful to the listener?

I've been thinking about this alot lately because I've been wondering how I could get better at programming while driving on my daily commute.

Re: Ask HN: How should a programming language accommodate disabled programmers?

#15

Have you looked into projectional-editing? The basic idea is that your code is stored not as text, but as data. The data is then projected into a textual format for editing. That seems like the best way to support disabled programmers, as it gives them the flexibility to make whatever syntax works for them, as long as your core AST is simple enough.

I can attest to this: Paredit is as easy to use with eyes as it is without.

Re: Ask HN: How should a programming language accommodate disabled programmers?

#16
> I’d really appreciate [...] links to the work of similar initiatives

Take a look at Quorum, a "programming language which is designed to be accessible to individuals with disabilities and is widely used in schools for the blind".

[0] - https://quorumlanguage.com/

[1] - https://www.youtube.com/watch?v=X29BuzGHlBs

Re: Ask HN: How should a programming language accommodate disabled programmers?

#18

Slightly off-topic: how do blind programmers read code? Does the screen reader recite it aloud and just say "int main left-paren void right-paren open-brace int i equals zero...", or does it use some other kind of auditory vocabulary to make it more meaningful to the listener? I've been thinking about this alot lately because I've been wondering how I could get better at programming while driving on my daily commute.

> I've been wondering how I could get better at programming while driving on my daily commute.

Please don't do this. The last thing the world needs is another distracted driver.

Re: Ask HN: How should a programming language accommodate disabled programmers?

#19
It is interesting that you're getting a lot of suggestions from people that don't claim to have disabilities. Perhaps few of them read hacker news?

It seems that their needs would vary. One thing you could do is try to an interface to test it yourself.

I tried to write and edit a document once using just voice commands. (Let's say someone has carpal tunnel and needs to use voice commands). It was eye opening. I realized how much more frustrating it is to go back and try to delete or fix something than anything else. And if the software didn't recognize an unusual word, it was really hard.

Dragon dictate -- the software I used -- had already learned a lot of this over the years, and there were many commands for changing that, or deleting up to a point. The hard part was moving the cursor to exactly one spot and then talking in a new word.

Anyway, if you tried something like that you would learn a lot.

Imagine if you are blind folded, and have to hear the program and then have to keep it all in memory. Well, that is a lot to keep in your working memory. I would want some kind of canonical "view" to always get to in order to find my way around.

I am glad you are working on this.

Re: Ask HN: How should a programming language accommodate disabled programmers?

#20
Lisp:

- Avoids the use of gratuituous special characters: (a b c)

- use-dashes-in-symbol-names-instead-of-underline-so-its-easier-to-type (you can still use underlines or most any special character, but we like to keep it simple and easy).

- has a simple prefix syntax, that makes it easier to read and understand complex expressions: (loop (print (read (eval))) So no risk of confusing special characters or syntax: the meaning is clearly labelled by the first symbol of each expression!

- is not whitespace-sensitive, how can you see the size of whitespaces when you're blind?

- includes a reader and a pretty printer, so the code can be processed and formated automatically easily for either sighted or blind programmers.

- time-sharing was invented for the lisp REPL by the authors of lisp!

- as a good integration with emacs, which itself has a good integration with various tools such as screen readers, vocal commands, etc, and it's fully customizable.

http://cliki.net/ http://common-lisp.net/ https://en.wikipedia.org/wiki/Common_Lisp

Post reply on HN