Tapping on the Box: A Few Words about Autism

by kiteason2. April 2014 13:30

Today is World Autism Awareness Day. I don’t want to trivialize this sometimes very serious condition – but I do have some thoughts on my own recent experiences. And, yes, somehow I will be tying this back to F#!

This mind-thread started a few months ago when I spoke at a software conference. Also on the bill was a fellow F# developer. Although we didn’t previously know one another, we got on famously, mainly bonding over our mutual amusement at the quirks of, er, some other languages. At one point he happened to mention that his wife sometimes teases him by saying that he is ‘on the spectrum’. My wife does the same to me, and I did wonder whether this might be one of those times when true words are spoken in jest.

So when I came across a simple survey which purports to find out whether people are indeed ‘on the spectrum’, I gave it a go. The lower bound for being on the spectrum is 26 – I scored 27. It turned out that one wife, at least, was bang on. My friend took the test too, and guess what: he scored 27. No wonder we got on so well!

So far, this is all about mild amusement at our personal foibles. After all, it was just some test on the internet, right? Then last night I happened to watch a BBC Horizon programme which covers the work of Professor Uta Frith. With various colleagues, she invented or refined a number of brilliant tests which are designed to distinguish between people who have some form of autism/Asperger’s, and the rest of the population. The most compelling is a series of little videos which show animated shapes and lines appearing to interact. Although the animations are fairly abstract, almost everybody interprets them as depicting some kind of social transaction. This includes people with autism, except perhaps of a severe kind. So, to be clear, most autistic people also get that a social interaction is being depicted. The point is, autistic people interpret that social interaction differently! As I watched with my family I couldn’t help exclaiming: “Oh my god, I’m getting all of these wrong.” One of the scenarios, according to the ‘normal’ interpretation, involves a big triangle trying to encourage a small triangle to go out for a trip. I interpreted it as some kind of home-invasion!

As the programme progressed, it turned out that I was interpreting every single animation exactly as an autistic person would. My daughter found another similar test on Youtube: same result.

Now, I’m guessing you probably don’t care how very-mildly-autistic I think I am. But this is what really got me thinking: there is another test, commonly administered to quite small children. The psychologist has a box and she says to the child: “I have a toy boat in this box, would you like to see it?” Obviously the child totally wants to see the toy boat. So the investigator taps twice on the box, gets the boat out and shows it to the child. Then she says “Now, would you like to show me the toy?” She passes the box to the child.

Here’s the kicker: ‘normal’ children tap the box twice and open it to show the toy. Children who might be on the spectrum simply open the box. I am absolutely certain that if someone had performed this test on me as a child (or now!), I would have fallen into the direct-opening camp.

I think this sheds light on the relationship between the ‘F# converts community’ and the ‘C#’ community. Here’s how the story often seems to go in an organisation: one or two people start to use F#, get all excited, and try to encourage all the other developers to go the same way. At least some of the C# developers simply do not see the attraction, and pretty soon there are two opposing camps. Members of each camp think that other camp is completely barmy. Leaving aside the rational arguments about the pros and cons of each language, this is what I think is going on: the kind of people who are rapid adopters of F# are, like me, a little bit on the spectrum. They ‘just want to get on’ with things, and the social realities – the fact that the C#/OO community has its own, partly-social conventions (certain TDD practices, design patterns and so forth) simply don’t occur to them as an impediment. (Adhering to these conventions is the equivalent of ‘tapping on the box’.) The C#/OO folks, in contrast, are somewhat more social, and care much more about what the rest of their established community thinks. Hence – guaranteed conflict.

You could easily refute this theory by doing some spectrum-testing on a good sample of F# and C#-only developers, to see if their scores differ significantly. I leave this thought as a gift to someone who is looking for a PhD thesis.

I seem to be saying that the C# hold-outs are doing so for solely psychological reasons, not practical ones. This could easily be interpreted as insulting to that community. Sorry! But you have to make some allowances for me – I’m a tiny bit autistic, remember?


Add comment

  Country flag

  • Comment
  • Preview

About the author

F# bore

Month List

Page List