

Ask HN: Best way to teach programming to a person with Asperger+ADD? - watson

I have a family member who's diagnosed with a mild case of Asperger syndrome combined with Attention deficit disorder (ADD). He is in his late 20ies and have been obsessive about computers his whole life. But for some reason he have never taken on programming.<p>I would love to teach him the programming craft as I think he'll be very good at it and that this in turn will help him secure a steady job (something that isn't easy with the combination of Asperger and ADD).<p>I have a small project (a web-app) in mind that I think we could work towards - hopefully something that might even bring in some cash for him if it becomes popular.<p>I'm a seasoned programmer my self with 15+ years of experience. In the last 8 years I've been programming Ruby and lately Node.js, so I was thinking of teaching him one of these languages. But I'm not sure and was wondering if any of you guys had any suggestions of which language to use and which approach I should use for teaching.<p>In the end I'm simply looking for advise on how to approach this. Looking forward to your thoughts!
======
lince
My girlfriend brother is Asperger too: Bad grades, excellent knowledges about
grammar and strange words, obsessed with League of Legends (a videogame),
reading and sometimes astrology.

I am sorry, watson, because I have no magic pills.

I understand your worry in making him able to live without depending on
someone else resources. We are too trying to achieve the same that you, but we
are doing it slowly because we are sure that if he knows what we are planning
he will never perceive it as interesting.

At the moment, we have been able to make him somewhat interested about the
technical part of computers doing him a demo of "security pentesting": We (I,
with him at my side making jokes and enjoing the process and asking) did some
arp and dns spoofing, also played with sslstrip and he loved to know about the
mechanics.

Advancing from there it's not being easy. Web development seems a good path
for us too because you can easily see the results. The problem is making him
interested enough to do it by himself.

I'm adding this thread to bookmarks. Please, tell about any progress that you
did and ask if you think that there is something we can share with you.

------
TechpinesMary
I used <http://www.codecademy.com/#!/exercises/0> to learn Javascript and I
found it very easy to use and progress. The only thing I was lacking was the
ability to apply what I was learning, but if you have an actual project and
goals for your friend to keep in mind during the lessons, that might be really
helpful.

Maybe just break down very small components of the application your building
that you want this person to "own", and give them the tools of codecademy or
whatever to help them learn how to build on their own.

Either way, it's very admirable for you to try and take this person under your
wing and show them how to manage their symptoms productively. I'm sure they
will have a great time!

------
davidjhall
My 12 year old son is taking a minecraft mod class -- what I see click is
instant-feedback.

He loves minecraft, and the instructor showed how writing 1 line of code could
make breaking dirt produce diamonds; he was thrilled. He proceeded to change
it to produce anything he wanted (eggs, TNT). When the instructor went into
classes and constructs and the scaffolding to create a block, he was lost.
(But to be honest, so was I !)

He loved programming in Scratch -- I know that's simple but it gives you
instant feedback to make stuff. I'm thinking about showing him Python -- it's
easy, quick feedback, a little less OO dependent.

------
bmslieght
Backward Chaining is a classic way to teach people with ASD.
[http://specialchildren.about.com/od/developmentalissues/g/ba...](http://specialchildren.about.com/od/developmentalissues/g/backwardchaining.htm)

------
ams6110
I'd start witn some very simple examples. "Hello, world" stuff. Nothing that
requires any up-front study. That may be enough to spark the fire,

------
mtrimpe
It might be a bit unconventional, but if you're doing it to teach him to
provide for himself why not actually offer him some money?

Chances are he's already quite capable of programming, but has just never seen
any real reason for picking it up.

I'd say find a sum of money that would sort of impress him, then find a nice
task he probably would be able to do (perhaps with your guidance) that would
be worth that much money (to someone in general,) and ask him to do that for
you.

It might not work, but when trying to get someone to a final destination I
usually try to give someone as realistic an taste of the first step along the
way and see if they're interested in taking more afterwards.

~~~
mtrimpe
I'd like to add one more thing, in that if you're really trying to help,
consider expose him to some NLP.

NLP got a bad reputation from the people in the self-help industry that
latched on to it, but at its core it's about modelling thought processes (N)
and language (L) to try to identify a sequence of repeatable steps that will
consistently achieve a desired result (P).

In essence it's a pretty good attempt at creating a functioning, logical,
model of everything an Aspie doesn't intuitively understand.

