On Thu, 28 Feb 2008 11:43:17 +1300, Pete Dashwood wrote:
> There MAY be certain personalities who do NOT make good programmers...
> people who have limited attention spans, lack self discipline, and are
> generally "flighty" , for example. Having trained programmers in various
> companies and had a wide cross section of ethnicities, cultures, and
> "personalities" to work with, I have arrived at the conclusion stated
> above. almost ANYONE of reasonable intelligence and suitably motivated,
> can learn to program a computer, particularly in COBOL. Some will argue
> that knowing the language doesn't make a programmer, and I would agree.
> My response to that would be: given time and practice, programming is a
> skill that can be learned. It has always puzzled me why so many
> (particularly COBOL) people hesitate to make the leap to a different
> language, when "programming ability" is an underlying skill, that really
> shouldn't be language dependent...
There has been quite a lot of research on the question of programming
aptitude, because of the fact that a lot of people just don't ever "get
it". Originally programming courses had high failure rates. Academics
were tearing their hair out. Then they moved the goal posts so that they
pass, but they still can't program. The result is a significant number of
people who have a degree in CS but can't even do a simple programming
challenge.
Aptitude tests, though often sold for a high price, have proven to be
pretty useless. NO better than IQ tests, which are not that useful for
these purposes.
There was one interesting piece of research (I have the link on my other
computer) which showed fairly convincingly that most people do not
actually think in a logical way. They function by simple verbal pattern
matching, memorisation, intuition, and by copying other people. These
individuals, almost independently of how intelligent they are, cannot
program.
A minority of people think in a different way, constructing mental models
of things and people, and then operating on those models. These people can
program. As you pointed out, you don't need a high IQ to program, though
very complex programs are another matter.
One can view Aspergers/Autism as an extreme manifestation of this
"systematising" approach to the world. Whole books have been written
advocating this view. If this is true, it would not be surprising if the
associated personality traits were more common in the programming world.
This is not necessarily a bad thing. The other extreme away from the
autistic person is the "social butterfly" for whom nothing exists but
social relationships, and who cannot deal in any way with things that
require the exercise of logic and reason. These are different ways of
looking at the world with strengths and weaknesses.
Re your comment about people being reluctant to learn new languages, it is
surprisingly common. I see this a lot among Java and VB programmers too.
Look at the trouble Microsoft is having getting people to move to VB.NET.
Tim


|