Saturday, October 10, 2015

What Traits Indicate Potential in Computer Science?

Last week I was a bit critical of a study about traits that make for good computer science students or programmers (How NOT To Tell If Someone Is Cut Out For Computer Science ) In reply to a tweeted link to that post I had a question from a friend of mine.

It’s a good question. Not an easy one to answer though. Back in the 1970s when I was looking for my first programming job a lot of companies gave applicants “aptitude tests.” None of the companies who gave me tests hired me. The company that did hire me gave me three raises in the first year I worked there. Apparently I had some aptitude after all.
When I think about my students and the professionals I have worked with over the years seem to have some traits I notice.
Curiosity – The students who ask me “how do I ..” or “what happens if …” are the ones who do the best in my classes.
Makers – the people I know who make good programmers want to make things. It might be music, it might be electronics, it might be woodworking (I know a surprising number of software people who like to work with wood), it might be art (photography is very common) but what ever it is people who like to make things seem to do well in computing.
An ability to look at things differently – Science fiction and fantasy seems to be a common interest among many software people. I like to think that is because they like to look at things as they might be compared to how they are. Not is not the only way to look at things differently and I see other indicators of that in software people. Politics, history, art, what ever there are CS people looking at things differently.
None of this is really scientific on my part of course. It is just how things look to me through my own life’s filters. What do other people see as indicators?

1 comment:

Mike Zamansky said...

Of course these traits could be applied to successful composer, authors, engineers of all type, even mathematicians and scientists.

What I find funny, is that people acknowledge these traits existing in different levels (at different times) in people but not other traits.

I was at a meeting a number of years ago. It was before I was frozen out of the AFSE creation process. I was arguing that if you want to make "Google ready" engineers out of high school you needed a screened school - it would be amazingly difficult to take a kid who starts multiple years behind in math and have that kid ready for Google by the end of 12th grade. I said that CS is great and important for all types of kids but schools should be realistic about goals and expectations.

Lots of tech industry people and DOE people where at the meeting.

The DOE people gave a leading question to the tech people - what do you look for in a candidate out of college. The answer was of course, curiosity, hard work, etc. - just what you stated above. The DOE implication was that academic achievement had nothing to do with it.

At first the tech folk were reeled in.

Then I asked -- where do you looking for people with these traits?

The answer -- MIT, Harvard, CMU, Stanford --all places that pre screen for high academic achievers.

They got the point.

Now, this is not to say that I don't believe that CS is a valuables study for kids at all academic levels, just that talking smarts in America is a clear taboo.

There's also more to the story but that's not to share right now.