Archive for July 1, 2010
Group Therapy For Online Anosognosics
Jul 1st
Anosognosia is a fascinating neurological condition. Maybe not so fascinating if you suffer from it, but nevertheless I think it’s interesting. An anosognosic patient is one with a disability but no awareness of said disability. For example, someone may have had a stroke that paralysed the left side of their body, but if they’re asked to pick up an object using their left hand they’ll make an excuse of some sort, like they’re very tired and they can’t do it at the moment. In essence, anosognosia is being unaware that you’re failing to do something correctly.
I first heard the term reading the brilliant Opinionator blog on the NY Times website. David Dunning, of “Unskilled and Unaware of it ” fame, took the neurology term and applied it to social science, looking at how people are unaware of being unaware of things, and how that makes us fail all too often.
The article made me think. How does this apply to my own work? What is there in the project that I’m working on at the moment that’s wrong, but I’m unaware of it being wrong? How can I find out what the issues are? The problem is relatively simple. My own preconceptions make me believe that the work I do is right. I can only work within the framework of my own experience. Sometimes I’ll be aware that things are wrong – I can write unit tests to check if things return what I would expect them to return. I can do mocking to see if web pages are doing what they’re supposed to. I can do integration testing, and black box testing, and grey box testing, and so on and so on. But all those tests rely on my knowledge of what to test being correct. I can know if my tests are right because they’re based on what I know, but I can’t know if there are things that I should be testing that I’m not. There might well be things wrong that I don’t know that I don’t know about. If that makes sense.
So where does that leave me? To be honest, it means that I can’t develop a website alone. Not just me either, no one can develop a site and be sure that it’s correct and working on their own. You can be sure that code does what it’s supposed to, but you can’t know if you’ve missed something out because you don’t know that it should be there. If you did know then you’d have included it in the first place. The problem applies to everything else for that matter, regardless of what it might be. In any creative pursuit you need to have the input of more than one person. The more people the better.
To that end I would advocate something that’s something of an anathema for many developers: networking. Forge relationships with other developers. Get yourself along to some of the many events that are running near you and meet other developers. They’re the competition, sure, but a reciprocal arrangement for some QA testing will be very good for your software quality. You’ll both be better off.
If you’re on the other side of the coin, and you’re commissioning a website from an individual freelance web developer or a company, make sure that there are many eyes checking what you’re paying for before your customers hit it. The recent trend for a ‘soft launch’, or ‘beta version’, or possibly the worst jargon term ever invented, a ‘live test’, is all very well but if your commission doesn’t work the first time few people will come back to try again regardless of what excuse you’ve used to put an unchecked site on to a production server. Can you afford to lose the people who were interested enough to check your site out as soon as it was online?
If you’re in the north east of England, check out Mal Campbell’s fantastic NE Tech Events website. It’s a canonical list of everything that’s happening for developers around Newcastle and beyond.

