36

I have very severe Dyslexia along with Dysnomia and Dysgraphia. I have known about it since I was a child. My reading and writing skills are pretty crippled, but I have learned to deal with it.

However, with today's IDEs, I find it very easy to stay focused and in the zone when I code. But when I write text (like this post) I find it much harder to stay focused.

In general, do dyslexics find it easier to read and write code compared to general reading and writing? What types of tricks and tools do dyslexics use to help them master programming better than normal reading and writing?

unor
  • 1,102
  • 9
  • 19
Tony
  • 1,154
  • 1
  • 8
  • 11
  • I've tutored a number of dyslexic programmers and it has always surprised me that they find it easier to write/type when using an IDE as opposed to say a text doc. Naturally they found refactoring support really handy and maybe the IDE structure helps? I'm no expert in this field at all, but maybe it's also got to do with the fact that it's more or less short sharp discrete entities as opposed to full sentences and paragraphs? How do you find reading/writing code comments? – Martijn Verburg Oct 05 '10 at 15:43
  • I wrote up a short post on what my life has been like growing up Dyslexic. It sort of fits with this post. http://www.geekwithopinions.com/2013/05/15/short-overview-of-living-with-dyslexia/ – Tony Jan 28 '14 at 16:26

6 Answers6

12

I've recently discovered that I'm dyslexic (at age 26) and am starting out in programming, studying a software engineering degree at university (after previously dropping out of a civil engineering degree at the same university in the final year when the course became assignment/report heavy - I now understand why).

I've been reading a lot (at my slow pace) as to what dyslexia is and why/how/where it affects us and I believe I can explain why we can still program well, despite how text heavy it is.

Dyslexic process their thoughts in pictures (well not pictures like on the wall, more like 3d video where you can move the camera and thus it's point of view around, I think of it as an internal world where I have the powers of 'god' (geez that sounds egotistical but I don't mean it that way) ie; I can instantly change everything about it with my thoughts.

Anyway, we can process words just fine, so long as we can firmly anchor/tether those words to an 'image', words like cat, hat, hit, run, jump, vertical, fluffy, hard etc are no problem at all, we can easily 'picture' what that is, the words we trip over are things like 'are' 'to' 'the' 'a' things where if someone asked you to draw that word (not write the word, actually draw a picture of it) you wouldn't know where to start.

In programming there are no such words, they all refer to either a process or an object, once we've learnt what the object or process is and our minds have formed a visualisation of it we're away. This site does a good job of explaining what I'm on about:
http://www.davisdyslexia.com/disorientation.html#tricky

BTW if trying to read the bold text in the middle of the page BEFORE running the mouse over it makes you dizzy or feel weird and you have trouble getting threw it, you might well be dyslexic. I've gotta push forwards threw the sentences to their end before i can make any sense of what's being described, i feel dizzy when reading it too.

One thing I'm struggling with is explaining to my math lecturer that I need real examples and not general solutions to learn, when he talks about a n by n matrix I can't picture a thing, I need to work with a 3x3 or 4x4 and then I can transfer the learnings/processes to all sizes of matrices. He remains adamant that general solutions are the only way for what he calls 'true' learning sigh.

Peter K.
  • 3,828
  • 1
  • 23
  • 34
Michael Jenkins
  • 121
  • 1
  • 2
  • 3
    Would it be considered rude to someone with dyslexia if I edited your post to add paragraphs, capital letters, proper punctuation etc? – ozz Mar 20 '13 at 11:35
  • Irrelevant side-note: the key feature of an nxn matrix isn't the value of n, but the fact the matrix is _square_. Does that help? – Useless Jan 30 '14 at 13:59
  • Just out of curiosity - what was the process you went through to get diagnosed? – m.t.bennett Mar 16 '18 at 04:42
6

"I've tutored a number of dyslexic programmers and it has always surprised me that they find it easier to write/type when using an IDE as opposed to say a text doc."

I'm dyslexic and have been programming since 1972: I was surprised that it was impossible for me to learn python without an IDE. I didn't have difficulty using Visual Studio for .Net etc.

The problems with all print:

dyslexics find it extremely difficult to follow a long line of text all the way to the end and to easily follow the next line in sequence. Their eye movements while reading make it harder to scan the text smoothly (saccade) http://www.optomotorik.de/dyslex/index-e.htm

The errors that result from not being able to scan a page as accurately as most others do have to be noticed, understood, thought about in the context used, and finally corrected. Dyslexics are not aware of mis reading. Programming languages require syntax that is correct.

IDE's provide a visual structure that assists the dyslexic to read and code with fewer errors. A single window with sub windows for different tasks prevents the dyslexic coder from becoming lost on the page. It reduces visual stress, like having rails on a bridge does for drivers.

Similar symbols that appear to be the same to a dyslexic are difficult to find and fix. Automatic syntax highlighting saves a ton of time looking over the error codes.

Code completion is a workaround for typing in the wrong character, looking up functions is a great help.

I don't know how people can code in an environment that allows the eye to wander and does not mark wrong syntax. Having the right IDE allows a dyslexic to program without losing time. A familiar IDE is comfortable to work in, similar to using a tool that feels right in your hand.

Dyslexic programmers tend to think visually in design blocks of code function rather than in lines of characters. Each functional block has to be translated into code. The benefit of thinking in functional blocks rather than code is that one does not become confused by large systems because a visual of the system can be used to map the code.

user87105
  • 349
  • 2
  • 5
  • Great response. Just out of curiousity, how did you find this post? I ask because I have got like 50-60 rep out of the blue for it in the past week. – Tony Jan 30 '14 at 16:28
  • 1
    I came across this while searching for advice that would help me learn open source mapping. Everyone else seemed fine with large blocks of text in code and data that make me want to run away.After a couple of years learning about what normal people find easy to do when coding and why I find it hard, I was happy to find a place to share what I've learned. – user87105 Feb 05 '14 at 06:16
6

I have a severely dyslexic friend who reads quite well when she's reading through a sheet of yellow plastic. Or when she highlights the hell out of each page. For some reason, coloring the text somehow helps her brain grok the glyphs it's seeing.

So maybe syntax-highlighting and code coloring helps?

Dan Ray
  • 9,106
  • 3
  • 37
  • 49
  • That may be a case of Irlen syndrome, and the colour of the overlay or the tinted glasses you use is very individual. See [Irlen UK: Myths & Facts](http://www.irlenuk.com/irlen-syndrome-myths-facts.htm). – Tsundoku Dec 08 '16 at 14:51
1

I feel that coding provides a wider context than general reading/writing so it doesn't rely so heavily on text parsing alone. [Speaking mainly mechanics here, not the intellectual merits.] Another point is that it's possible to be dyslexic in one language and not in another. Significantly different languages are processed in different areas of the brain and dyslexia in Chinese is quite different physiologically. May sound silly but maybe some other people are "dyslexic" in programming.

My own dyslexia is rather mild but I still avoid variable names like "bdp". I also prefer fairly short chunks of code, even if the constructs are more complex or less "readable". Of course, I try to keep the code maintainable but I lean towards terse end of the spectrum.

Having an IDE for color-coding, auto-indent and other visual cues is of course wonderful (I use emacs). Best I having for writing normal text is spell-checking and the occasional use of outline mode.

igelkott
  • 273
  • 1
  • 6
  • I am under the same assumption that it has something to do with how/where the brain processes code vs normal text. – Tony Oct 05 '10 at 17:49
  • I'm glad to hear you avoid variable names like "bdp" :) – Frank Shearar Oct 05 '10 at 18:22
  • @Frank: I used to favor very short names for faster reading/typing but have thankfully learned to use more descriptive names ... except for maybe an "i" or "n" here or there. – igelkott Oct 05 '10 at 18:49
  • Oddly, I'm happier with single-character names - S for String, N for an Integer, I for a counter, L for a list - than with cryptic three-letter names. (But I say that without knowing the context of 'bdp' - maybe that's a well-understood acronym, for instance.) – Frank Shearar Oct 06 '10 at 07:10
  • @Frank "bdp" is my abbreviation for "benzodiazapine" (though "bzd" is more common). So, nothing special, just the target of the medicinal chemistry project I was working on. – igelkott Oct 06 '10 at 18:52
1

When I was younger I had dyslexia (or at least that is what they said - I essentially couldn't spell worth anything and typically wrote letters or words backwards, although I was able to read and everything else just fine - or so I thought). I have always enjoyed working with computers. We had a Commodore Vic20 when I was in grade school and I programmed on it all the time. My mom once commented that she would have thought that my dyslexia would make it more difficult for me to work on the computer, but the opposite seemed to be the case. I could spell and read much pretty much without incident when working with the computer.

I don't recall it being a matter of interest (i.e. that I was able to work with the computer because it was interesting.) I worked really hard to be able to do well with spelling and writing at other times too, but I just never really had any trouble working with the computer.

Of course at the time I did not work with an IDE or anything on the Commodore

Jim McKeeth
  • 2,126
  • 15
  • 30
  • A lot has to do with font and colours with many people. A cool note to make is that dyslexia doesn't every go away, it's a difference in how the brain works so if you had dyslexia then you still do! Like you I also worked very hard to find ways to read, write, and spell better but I've recently discovered my approach is vastly different to those without dyslexia. I think interest helps but I've always naturally found reading on a screen easier than reading on paper as well. I don't really fully understand why though. – Elliot Blackburn Oct 11 '16 at 12:34
0

I can see many benefits to programming for dyslexia over other careers.

The rules of programming have fewer exceptions than spelling. You can rely on repeated patterns; prose is just all over the place.

Intellisense has to be a huge benefit. Nice to know a variable you just declared has not been used when you 'think' you just did. Other than spell & some grammar check, writing applications can provide the checks a compiler will.

Short-term memory is an issuer for me. Doing almost everything on a computer comes pretty frickin' handy.

Motivation is a factor as well. It's easier for me to read about subjects I enjoy; that doesn't make me lazy which many students get labeled as if a learning problem has not been identified.

JeffO
  • 36,816
  • 2
  • 57
  • 124