Live data from Hacker News

The programming talent myth

lwn.net

241–250 of 354 posts

Re: The programming talent myth

#241
Based on what I've seen, anyone can write code, just as anyone can learn math or write a story. Further, anyone who devotes time and effort to writing code (or doing math or writing a story), who immerses themselves in it, who learns and practices, can write code well. Thing is, most people aren't motivated to do everything well. People find enjoyment in different ways; some through working with their hands, some through solving puzzles, some through talking to people. I wouldn't say this is purely natural (I didn't discover programming until later in life thus I'm nowhere near how skilled I'd be if I started at 10, although once I knew what it was I knew I would enjoy it), but I wouldn't say it's purely up to environment either. Anecdote: I introduced a friend of mine to programming recently. He can do it, and he's not bad at all, but he'd much rather be face-to-face with someone than staring at a screen for hours.

So, anyone can become a good programmer, but most won't want to be.

Re: The programming talent myth

#242

Earlier quoted context omitted.

Don't underestimate by how much the speed at which you learn increases as you get older. There's lots of amazing musicians around who only started playing as adults, for example, because aside from a couple of kid geniuses, learning an instrument when you're young is just really, really hard.

Not sure I agree it's easier as you get older. Our brains seem to be wired to pick up new languages & skills most rapidly when in youth.

Folks say that, but I think its mainly immersion. We are reluctant to spend the time/energy to immerse ourselves in a new thing when we're older.

Re: The programming talent myth

#243

If you started programming when you were 12 and you've been programming for fun more than 4 hours a day every day since then, you are going to be drastically better than someone who starts programming in their first year of college and only does it to graduate. It feels like a bimodal distribution because you then get both kinds of programmers interviewing for jobs at the same age when they graduate from college and…

This seems like a form of elitism very specific to programming.

I graduated with a degree in Electrical Engineering, and barely did programming until I began my first job out of college. In many people in the programming space, I see contempt that coding was something I didn't start until later in life. When I interviewed for Electrical Engineering positions, no one ever scoffed at me, "you haven't been computing the impulse response of a filter for 4 hours a day since you were 12? There's a massive difference between engineers who have done that and those that haven't."

Re: The programming talent myth

#244

Earlier quoted context omitted.

According to SICP data and code are the same! Interesting concept anyway. http://stackoverflow.com/questions/355406/concepts-that-surp... http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-14.html...

That's like saying all Turing-equivalent languages are the same. It may be true in theory, but is hardly a useful point in most programming language discussions. As an example of code vs. data, and this is a general statement (so YMMV) I try to structure my code such that, if there is a choice between making the code more complex, vs making the data more complex, I generally choose to make the data more complex. The…

Unless I misunderstand your point, how do you create complex data without complex code? I agree with the sentiment, but priority queues don't organise themselves. It seems more like its about the abstractions you use.

Re: The programming talent myth

#245

If you started programming when you were 12 and you've been programming for fun more than 4 hours a day every day since then, you are going to be drastically better than someone who starts programming in their first year of college and only does it to graduate. It feels like a bimodal distribution because you then get both kinds of programmers interviewing for jobs at the same age when they graduate from college and…

You created a bimodal distribution because you only talked about two types of people. Some people start later in life, but have an incredible talent for programming. Some people start early because they really like programming, but never achieve the highest levels of proficiency because they lack some natural talent. Like most things, programming is a mix of natural talent and practice. Some people have incredible na…

Then, there are those profoundly incapable of programming. My high school classmate who seemed to be getting it, but on the 1st assignment came to me and asked for help. It became clear he had no concept of the ordering of statement. He wrote them like math formulas, and didn't understand that they got executed in order.

Fast-forward 3 years; both of us in college. He had to take a programming class again. I met him in the 'computer center' (they used to have special buildings for using computers). He asked for help again; he still didn't understand about statement ordering. I smiled and suggested a tutor. There was just nothing I could say that would get through to him.

So no, not everybody will learn to write computer code. Some people are tone-deaf too, and will never sing nor play an instrument.

Re: The programming talent myth

#246
post #58

My own experience just does not agree with this at all. First, I think we have to distinguish between two ideas here: * The first is the question of whether anyone can learn to program. I think that for the most part everybody can, just like for the most part everybody can learn high school calculus. * The second is the question of whether programming ability is bimodal. This is not related to the first question, and…

From personal experience, speed has very little to do with productivity. Productivity is a function of knowledge and experience. The most productive programmers I've met almost always had enough experience in what not to use. They have a clear focus on the simplicity of their code and their ability to reason about it. They understand the problem and the hardware as well as the language in a very detailed manner. They…

> Productive programmers don't really type faster or think faster. They just make far less mistakes to begin with

This reminds me of studies of chess players. It turns out that grand masters and average club players think as far ahead and as fast. The master just think of better moves.

Re: The programming talent myth

#247
post #243

If you started programming when you were 12 and you've been programming for fun more than 4 hours a day every day since then, you are going to be drastically better than someone who starts programming in their first year of college and only does it to graduate. It feels like a bimodal distribution because you then get both kinds of programmers interviewing for jobs at the same age when they graduate from college and…

This seems like a form of elitism very specific to programming. I graduated with a degree in Electrical Engineering, and barely did programming until I began my first job out of college. In many people in the programming space, I see contempt that coding was something I didn't start until later in life. When I interviewed for Electrical Engineering positions, no one ever scoffed at me, "you haven't been computing the…

I don't think it's elitism, it's just that programming offers a unique opportunity to do this stuff from a very early age from home and the end results is some people end up being very good at it "early" in their career.

Unfortunately you couldn't start "computing the impulse response of a filter" when you were 12 but if you could, and you continued to practice it daily, you would be very capable compared to people who just started in university.

Re: The programming talent myth

#248

Earlier quoted context omitted.

You created a bimodal distribution because you only talked about two types of people. Some people start later in life, but have an incredible talent for programming. Some people start early because they really like programming, but never achieve the highest levels of proficiency because they lack some natural talent. Like most things, programming is a mix of natural talent and practice. Some people have incredible na…

Then, there are those profoundly incapable of programming. My high school classmate who seemed to be getting it, but on the 1st assignment came to me and asked for help. It became clear he had no concept of the ordering of statement. He wrote them like math formulas, and didn't understand that they got executed in order. Fast-forward 3 years; both of us in college. He had to take a programming class again. I met him…

"He wrote them like math formulas, and didn't understand that they got executed in order."

So he had a talent for functional programming, then?

Re: The programming talent myth

#249
post #243

If you started programming when you were 12 and you've been programming for fun more than 4 hours a day every day since then, you are going to be drastically better than someone who starts programming in their first year of college and only does it to graduate. It feels like a bimodal distribution because you then get both kinds of programmers interviewing for jobs at the same age when they graduate from college and…

This seems like a form of elitism very specific to programming. I graduated with a degree in Electrical Engineering, and barely did programming until I began my first job out of college. In many people in the programming space, I see contempt that coding was something I didn't start until later in life. When I interviewed for Electrical Engineering positions, no one ever scoffed at me, "you haven't been computing the…

I think it really comes down to how much enjoyment one gets out of programming. If you thoroughly enjoy the process, you are more likely to put in the time and effort (in fact it will feel effortless), and you will be thinking about it all the time. Then there are those who don't mind programming, or maybe even see it as a chore, but choose to do it anyway.

Re: The programming talent myth

#250

Earlier quoted context omitted.

Then, there are those profoundly incapable of programming. My high school classmate who seemed to be getting it, but on the 1st assignment came to me and asked for help. It became clear he had no concept of the ordering of statement. He wrote them like math formulas, and didn't understand that they got executed in order. Fast-forward 3 years; both of us in college. He had to take a programming class again. I met him…

"He wrote them like math formulas, and didn't understand that they got executed in order." So he had a talent for functional programming, then?

Cute, but not quite. Those are still executed in some order. Not like algebra which is a set of expressions that are all true over all time.
Post reply on HN