5 ms·
One very specific thing I remember from discussions I had with a blind programmer was to use of multi-line comments (/* /) in favour of line-comments (//), espe
by nagisa 8y ago
One very specific thing I remember from discussions I had with a blind programmer was to use of multi-line comments (/* /) in favour of line-comments (//), especially for comments that do span multiple lines.
That helps a lot because with a screen reader “slash star <comment text> star slash” is significantly more listenable to when compared to “slash slash <one line> slash slash <another line> slash slash <third line>…”
Surprisingly this is the only thing I cannot seem to find around my IRC logs… Digging through the logs other things that were called out to make comprehension harder for blind people are:
* Unicode identifiers;
* Boilerplate you cannot easily skip past without losing context (common in e.g. Java);
* Typos (esp. if done on purpose, inconsistently);
All this comes from their preferred interface being a screen reader which, I believe, is true for most blind programmers.
- V-2 8y agoWho does inconsistent typos on purpose? And what's the purpose?
- deanmen 8y agoSome people use the archaic spelling "shew" but only the senses "to prove or demonstrate". Or again in mathematics "rng" to mean a ring that does not necessarily have an identity. Or "iff" to mean "if and only if". These would look like inconsistent typos to nonmathematicians. Or "referer" in HTTP because that's what the standard uses. Or "creat" when discussing the UNIX system call or a function with the same purpose on another platform.
- tonyarkles 8y agoI’ve also worked on codebases where the first developer misspelled a function’s name and everyone else just kept using it instead of fixing it. When I see stuff like that, I admit that I judge them probably harsher than they deserve. Sloppy!
- crehn 8y agohttps://blogs.msdn.microsoft.com/oldnewthing/20080519-00/?p=22273 https://blogs.msdn.microsoft.com/oldnewthing/20080519-00/?p=...
- tonyarkles 8y agoAhhh Raymond Chen. For anyone who hasn't read his work before, it's an absolute goldmine of interesting quirks and "why things are the way they are". To the point of the article, I try really hard to make sure that things like this don't happen, ideally before a typo like that gets merged.
- loup-vaillant 8y agoScreen readers should be made more context aware. The IDE knows what's a comment, the screen reader should know that as well: "comment <comment text> end comment" or something. This may be even more important for the rest of the code. Who cares about the parentheses after the `if` keyword? No one, they're just there to delimit the condition. Likewise the curly braces, they just delimit a sub-block. Their absence should not stop the screen reader from spotting the end of the `if` block. They should say "end if" regardless. Same goes for Python. Structural editors have mostly failed, but maybe some specialised version could be more useful to blind people?