Dyslexia, cognitive styles and “beyond not invented here”
Very crudely, people with dyslexia will rely on a top down, context driven and holistic approach to understanding new information especially text format. Non-dyslexics have an incremental, build part by part approach that requires far less reliance on the whole and context as understanding is built on smaller previous understandings.
When it comes to programming approaches, it is possible to use top down, bottom up and blended approaches. Working from the outside in, or building up function by function. There is no specific correct way, though individual programming problems may require one approach more than another.
However, what about programming psychology? What are the benefits of being more relational, context aware in your processing? What are the benefits of building up piece by piece?
How about drawbacks?
The psychology behind the relational cognitive strategy lends itself to great leaps of contextual understanding but because there is no buildup of incremental concepts, makes it much harder to adapt or adopt new approaches and techniques. This means “not invented here” becomes something more; it becomes a handicap and leads to reinventing the wheel as opposed to reusing perfectly good wheels. The reasoning behind the reinvention is a good one, for the relational thinker. It DOES cost more mentally to understand a whole new framework/technology than it does to reimage it using currently well understood techniques. The downside such reinvention is unlikely to be as deeply developed and tested as solutions publicly available.
The incremental approach has the benefit of being far less likely to suffer “not invented here”, however, it is a more cautious approach, it is possible to be uncertain of where you are in your level of understanding and may take far fewer risks – such as implementing your own wheels. Taking on board new technology and ideas however is much easier, as these can be built upon gradually and related to previous notions. The weakness may be that breakthrough ideas are slower in coming.
Can the two approaches benefit each other and can one person adopt their non native style? The former, I’d claim not only yes but I believe it essential. As to the latter, it remains to be proven.
For me, I’m a slow, incremental standard learner who does want to thoroughly understand something before doing a lot with it. I like to know what I’m building up to and have to consciously think about the contextual, holistic structure rather than starting from it. This latter assertion is open to later re-examination as what happens when I’m really solving a problem isn’t always the same!.