Live data from Hacker News

The programming talent myth

lwn.net

81–90 of 354 posts

Re: The programming talent myth

#84

That programming is a talent is not a myth, and while my life is currently devoted to developing a platform to encourage more people to learn the basics of computer science, I will certainly never say "anyone can learn how to code" any more than I'd say "anyone can become a concert pianist" or "anyone can become a master painter." Good programming is an art, and requires talent on the part of the programmer. There's…

> I will certainly never say "anyone can learn how to code" any more than I'd say "anyone can become a concert pianist" I would certainly say "anyone can learn how to code" in the same way that I would say "anyone can learn how to write", or "anyone can learn to run", or "anyone can learn to play piano". I wouldn't say "anyone can learn to become a concert pianist", in the same way that I wouldn't say "anyone can lea…

I'd say it's all a question of bandwidth. Geniuses just have enough capacity to converge quickly. "Incapable" people are below the threshold, so everything ends up as a cache miss, lock contention, pipeline flush; progress is so slow that they're directed onto other things. Wise people can attempt to craft their learning to converge smoothly too, they have patience to focus energy and wait for data to emerge, because they went through the slow discovery before, like a longer timeout.

With time you may grow very impressively, realize that stuff eluded your senses and mind, eureka, but time is an expensive resource.

Re: The programming talent myth

#85
IMO it's not a talent. It's a result of thousands of hours of work. I learned programming at 12 years. I programmed a lot. I didn't have a computer and I was programming in sheets of paper (computer was in school and I didn't always had access to it). I wrote by own object-oriented GUI library in sheets of paper and that library was never written in computer but it was in my head and I learned a lot while thinking about it and its design. There was time when I was spending 10-12 hours programming or reading programming books.

I wouldn't call myself talented programmer. I spent a lot of time to learn how to write good enough code and be productive.

What I had is a passion to program. I never programmed because I had to force myself. I enjoyed it. It's a beautiful art. That beauty forced by to program. And I still find that beauty in programs.

Unfortunately I don't know how to learn others to enjoy programming. I saw a lot of programmers and most of them didn't really like their job, they just did it because they went to CS faculty after school and programming is paid well enough.

Re: The programming talent myth

#86
post #47

That programming is a talent is not a myth, and while my life is currently devoted to developing a platform to encourage more people to learn the basics of computer science, I will certainly never say "anyone can learn how to code" any more than I'd say "anyone can become a concert pianist" or "anyone can become a master painter." Good programming is an art, and requires talent on the part of the programmer. There's…

That's not the point of the article--it's not that there aren't some people with insane intrinsic talent, it's just that the majority of people fall on the below-average - average - above average distribution, and that you can create plenty of great stuff right in the middle. The other point is that the "concert pianist" and "master painter" are damaging stereotypes for the development industry--almost no one is Moza…

This is a critical subtlety to this discussion that is never mentioned as evidenced by the comments in this thread. Just like "piano player" is a continuum, so is programmer. I will never be able to work at Google because I lack the requisite skill set in the same way I'll never play Carnegie Hall because I'm not good enough. But that doesn't mean I can't provide quite a lot of value to businesses who don't require the kind of talent Google does.

I like to think of ecosystems in discussions like this. Yes, the Google/Carnegie Hall ecosystem requires the talents of rockstars. But the places I work are a totally different ecosystem and require a different type of individual.

Re: The programming talent myth

#87
Very nice article. It reminds me to this quote from "Hackers and Painters" by Paul Graham.

"In general, people outside some very demanding field don't realize the extent to which success depends on constant (though often unconscious) effort. For example, most people seem to consider the ability to draw as some kind of innate quality, like being tall. In fact, most people who "can draw" like drawing, and have spent many hours doing it; that's why they're good at it."

Re: The programming talent myth

#88
The illusion of a U-shaped talent curve is just that - an illusion. Specifically, it's an illusion brought on by selection bias. We see more of the people beyond a particular point in the curve. Maybe we even see them because they're exponentially more productive than people further back, but at most that means the work product distribution is bimodal. The skill or talent distributions surely have a bump or two here and there, but remain basically normal.

Re: The programming talent myth

#89

I couldn't agree more. When I first started out studying CS I was constantly afraid that I wouldn't be able to cut it because I didn't always immediately see how to solve algorithmic problems or write code that would work. I got bogged down in thinking about programming as a problem of learning syntax, and missed 'obvious' things. I couldn't reverse a string or write FizzBuzz and in fact part of the reason for that w…

The difficulties that beset you initially are not the same as those that make programming effectively a difficult task. For anything but toy problems, 'soft' skills like being able to organize your thoughts and having good judgement become important, and not all quick-starters make the transition easily.

Re: The programming talent myth

#90
post #70

Earlier quoted context omitted.

Yes, I will be hiring bimodal and it's worked very well for me. Whenever I relax my process and hire someone I'm not sure is a great developer I always regret it later when they can't perform and their work brings down others. The more experience I have, the more I stick to working with the best people I can. There are just too many ways to fail and having a team of experts is the best mitigation you can have against…

Apologies on possible tone misunderstanding. I did not mean that point one was bad or at all incorrect. Just stating my follow on point that there is open research as to how something like that came to be. More, I think something like this can not really be attacked at the point where we are looking at people being hired for a job. The causes for a bimodal distribution in ability will likely stem much farther back th…

I agree that any talent shortage is likely to be an upstream problem from hiring.

I don't agree that eliminating a bimodal model is desirable though. We don't really need more people in the middle of the talent trough because they don't actually add much value and can often detract value (in my experience). Successful programming is the grappling with immense complexity. You really only want the best and brightest doing it. As long as the people with the desire and capability are being given the opportunity to enter the field, I think we've succeeded. Trying to lower the bar or get people who wouldn't excel into development would be a mistake though.

Post reply on HN