top | item 35765288

Ask HN: Is "At which age did you start coding?” a good data point for hiring?

29 points| akhayam | 2 years ago | reply

Was talking to someone I trust who told me this is a question that gives a solid data point on a candidate developer's hire-ability, with two qualifiers: 1/ Asked from young-ish developers, so the expected answer is always less than 18. 2/ Asked in addition to coding/system-design questions.

Has anyone seen a study or even an anecdote on correlation between success of a developer if they started coding earlier (say 11yr), rather than later (say 15yr or 16yr) in their youth?

84 comments

order
[+] roland35|2 years ago|reply
I am strongly against this question. You're basically looking at who's parents provided an opportunity for them to learn coding early.

I'm sure you would find that most people who started programming at a young age (and are still doing it obviously) are probably better than average and also enthusiastic. However, I think it is still a disservice to anyone who didn't have support as a child.

For the record I was learning basic and programming games on my TI-83 calculator in middle school, so I would probably benefit from this question!

[+] lubujackson|2 years ago|reply
I'm against it because I would say I started programming by copying BASIC games from magazines for the C64..... and would lose more for being old than gain from starting young.
[+] ianbicking|2 years ago|reply
I think it detects a couple things:

1. Are you internally motivated and excited by coding? Lots of false negative potential, but if you did code early and kept with it then that's a good sign. But with all the STEM education and stuff now, I wouldn't necessarily trust that. I.e., this signal quality is falling.

2. Were you able to progress independently? Children tend to be less supported, including less supported by their own discipline, so there's some indication that early success implies some kind of natural talent. But it only really matters if you get some sense of what they mean by "started coding". It would be classic imposter syndrome for some groups of people to set a higher bar for "starting".

3. Did you have access? Help, equipment, someone to guide you in a direction that would be fun and motivating? We'd all like to think this is a false signal, but the challenge of privilege is that it might not be: privilege is often used to nurture actual skill and talent. That is even expected of parents! But it's also a problematic metric of course.

If the question was useless then we wouldn't be having this conversation. That it's useful but problematic puts us in a jam. But it's also easy not to ask, and to put in the work to get the signals you care about with a less problematic question.

[+] dkjaudyeqooe|2 years ago|reply
Probably a bad, or irrelevant, question to ask I agree, but I don't think most people who learn to code early due to parents proving an opportunity. It's more likely you have an interest in it, or that it means something to you. Merely being introduced to coding isn't necessarily going to motivate a young person to pursue it even if they're very bright. I'd actually posit that most people would be turned off by coding because it's so anal and tedious. Today there are other reasons for people wanting to learn to code: basically publicity.

Personally, I learned Basic from a RSTS/E BASIC-PLUS manual at age 9. At the time I was interested in mathematics and would go to the local library to read up on it. When my older brother came home with a printout of a simple program incrementing a variable by one and printing it I was pretty confused, since "A=A+1" doesn't make sense mathematically. When the assignment was explained to me, that you could automate mathematics, it was the most incredible thing I'd ever seen.

[+] dghlsakjg|2 years ago|reply
Exactly.

I wrote my first hello world program before high school (I don't know exactly what age), and I know plenty of people that started in adulthood that would be better coders than me. I'm not bad, I just recognize that plenty of people learned later and are "better" at coding.

[+] slim|2 years ago|reply
you are saying that those who benefited from early exposition to computers are better programmers but a company should somehow ignore it because it's unfair
[+] xupybd|2 years ago|reply
Yeah I had non technical parents and a school that considered excell to be computer science.

I tried to learn at home but didn't get past simple scripts. I'm sure a more gifted person would have done better in my position but I think I could have done better if I'd had help.

[+] james-revisoai|2 years ago|reply
This pretty heavily assumes that you can't learn programming by paper or on a shared school computer (quite widely available in the UK/US for a couple of decades now), which itself reveals a bias in your mindset here, tbh.
[+] throwawayadvsec|2 years ago|reply
that's true for old people, but almost anyone have access to the internet/computers today, so for younger generations the questions isn't did you have access/support, but did you prefer playing minecraft/fortnite/watching youtube or learning to code?
[+] clnq|2 years ago|reply
I guess I can offer a data point here. I started programming in C at around age 12. For a long period after that, I didn't know much about software engineering, I was writing really poor quality code, but I was tinkering with programming for years. Then I started learning it seriously in my late 20s and got to a senior role in a large tech company within about 3 years. It was easy for me to learn a lot quickly as I would intuitively "get" a lot of concepts.

That is the main advantage in my case over many others who didn't start so early. Programming concepts are easier to understand, I can learn codebases quicker, and similar. But I can attest to being a very, very bad programmer for about 15 years before I started learning coding seriously. You shouldn't have hired me over a fresh grad when I was 22. Now, maybe I bring more to the table than some other engineers with formal education only. But then again, the advantage is so small that things like personality have a bigger influence on coding ability, I think.

The question about when a candidate started coding can be a nice conversation starter. But starting early doesn't guarantee competency. In fact, a kid will almost definitely not follow great SWE practices for many years. So those years of experience aren't worth a lot, in my opinion.

As others have said, the age at which someone starts programming might be a better predictor for their wealth and similar. I was the only kid in my neighbourhood in the 90s with a personal computer to code on. But what good does that do in describing me today as a professional, a software engineer, or a person?

[+] shrimp_emoji|2 years ago|reply
>So those years of experience aren't worth a lot, in my opinion.

That makes me feel better. :p

I didn't start until SUPER late. When I began learning it, I feel like I took to all the concepts like a fish to water and found a passion for it which endures to this day.

I have a hard time imagining what code my younger self would've written without cringing, but I always wondered whether I'd be godlike at it now or just as good plus cringeworthy memories if I started early.

[+] lapcat|2 years ago|reply
Would you ask a doctor at what age they started surgery?

It's irrelevant.

You might as well ask about the wealth of the candidate's parents, which is significant factor in whether a child has access to a desktop computer on which they can do serious coding.

[+] quechimba|2 years ago|reply
Most kids had computers at home when I was a kid in the 90s/00s but they had more powerful computers than I did so they would just play games. I couldn't even play Counter Strike on mine so I learned to program instead.
[+] ozim|2 years ago|reply
Simply asking about starting age is trying to infer "genuine interest" based on a single data point. Which I agree is irrelevant.
[+] __123__|2 years ago|reply
This is a horrible question that if not illegal, is extremely close to being illegal since it requires the candidate to give information about their age.

The signal this question provides is a signal about the person giving the interview (and the company as a whole) and nothing about the candidate.

That is, if someone asked me this question in an interview, I would immediately know that I want nothing to do with the company. I would probably politely end the interview on the spot, and would definitely not answer the question.

What the question is asking is whether the candidate was able to have access to a computer as well as resources on how to develop on that computer when you were growing up.

This is extremely biased because many people may not have been able to have a computer to program on, could not get access to such a computer, or, if they could, did not have access to information on how to program the computer.

The point is, all of those details are irrelevant.

That is, if two candidates have the same number of years of professional experience, it doesn't matter when they first started getting interested in the field they are interviewing for.

[+] __123__|2 years ago|reply
For me, the biggest question, is what company does the person asking this interview question work for, so I can know to never interview with them ever.
[+] throwaway60607|2 years ago|reply
I started programming when I was 6. How old am I?

My father started when he was 11, how old is he?

[+] eesmith|2 years ago|reply
I've seen solid evidence that this helps support gender bias. In "the West", disproportionately more boys than girls start to learn to program in the age range you mentioned. [1] A selection method which gives preferences for a younger start year will therefore also be biased in favor of males.

If two candidates are equally competent at the coding/system-design questions, then I don't see what difference it makes if one candidate started at 11 and the other at 16. You'll also want to know how much time they spent programming - 1 hour per month? 1 hour per day? did they stop for a few years? Also, what was the actual programming? Because entering BASIC games from a book, as I did in the 1980s, vs. hacking Spice Lisp at CMU (as jwz did at age 16) are both "programming", but I know who you should have hired as an employee, and it wasn't me.

[1] I'll quote https://dl.acm.org/doi/pdf/10.1145/3196839.3196867 as the first paper I found which discusses the underlying issue, and with supporting evidence:

> Computing education has experienced a falling popularity over the last decades, in particular among girls [15, 18, 29]. The situation does not seem to be improving, either in Norway or in other Western countries. We even see a drop in the number of women in computing studies in the humanities that used to attract more women [30].

> In contrast to the Western picture, certain Asian and Eastern European countries have not followed this trend and can boast a higher proportion of women in computer science [8, 50]. This leads us to conclude that there is no obvious, natural or biological reason for women being a minority in computing or for computing being associated with masculinity.

> Such associations are rather results of social structures and specific cultural constructions that have made it less likely for women to choose computing across most of the Western world [8, 52].

> Cultural images and stereotypes have been documented as being vital in creating barriers for girls’ and women's engagement in IT [5, 10], also in Norway [18].

[+] dghlsakjg|2 years ago|reply
What do you think it will indicate?

Quite honestly, I think this is an incredibly bad measure to try to correlate with job performance. I know plenty of people who coded from a young age and aren't good at coding, or they are great at coding, but wouldn't make good employees.

[+] soganess|2 years ago|reply
I started coding at 10 in the mid-90s and I'm as garden variety as you can be developer-wise. I'm competent but not exceptional. While I love CS deeply and can't imagine my life without it, I write software for money. Once you clear the "sure I can do that without ruining the next person's life" threshold... Shrug.

Learning to code early did not make me a better anything. I'm sure an adult could learn my entire childhood's worth of tinkering in 6 months to a year. And that is me being quite flattering to my younger self.

Long-term professional experience on large (50k-100k loc and up) projects is where you cut your teeth. That knowledge is hard to learn, hard to teach, and hard to transform into constraints when architecting something. No ten-year-old has those skills, and learning to code young doesn't somehow predispose you to better acquiring them. I'm fairly sure I don't have them yet.

[+] magicalhippo|2 years ago|reply
There's roughly four main parts to programming: "getting it", creativity, experience and working hard.

Some people are better at some of these aspects than others, and vice versa. Only experience requires having programmed a lot. However perhaps those who start young are more likely to "get it", making it fun for them, though I think it's a poor proxy since you can't control for who had exposure at an early age.

I started programming at age 12, quite by chance. I stumbled over some code one day, and my buddy could tell me it looked like Basic and I could try QBasic on my machine. I was quite fascinated, and really wanted to learn more. However I didn't know anyone who could program, and we didn't have internet nor BBS access. So until I was 16 and we got our first modem, I spent a lot of time bumbling around alone.

On the bright side I think it made me good at reading documentation. On the other hand, I could probably have done a lot more actual programming if hadn't had to spend a full week trying to find the one keyword I was looking for... Of course it didn't help that QBasic's built-in help was in English, and I had only started learning English that same year.

[+] cwbrandsma|2 years ago|reply
At 12? Well, that is a little older than we usually expect, but I’d probably still interview you.

I started at 10 with my subscription to Home Computing Magazine and my uncle was teaching me to make juke boxes.

[+] sgu999|2 years ago|reply
> I started programming at age 12, quite by chance

Most of your luck came from being born in a family that could afford a computer and let you spend time on it...

[+] dorfwald|2 years ago|reply
I don't like the idea that you have to start early to be competent. I've met people in the industry who only got into software development in their late twenties, and were very good at their jobs.
[+] Rebelgecko|2 years ago|reply
If an interviewer asked me this question as it's worded it would be a ginormous red flag.
[+] pfannkuchen|2 years ago|reply
This feels similar to asking “do sons of blacksmiths make better blacksmiths?” and a few steps later you end up with a guild system.
[+] zerohp|2 years ago|reply
One of the smartest engineers I know learned to program in college at 20 years old. He has never done much coding outside of coursework or the workplace and now works on the Windows kernel at Microsoft.

This is a bad question.

[+] tailspin2019|2 years ago|reply
> One of the smartest engineers I know learned to program in college at 20 years old.

To add more anecdotal evidence, I know someone like this too.

[+] 1827163|2 years ago|reply
I started at the age of 7, on a Sinclair ZX81, a Z80 based system. Getting it to print things to the screen. Then eventually progressed to an Acorn Archimedes at the age of 9, where I started to figure out how ARM assembly language worked, which is built in to BBC BASIC. At the age of 11 I was already fluent in assembler. Then programming C at the age of ~14 or so, and running Red Hat Linux 5.1 at the age of 16.

But then I was set back at the age of 18, where I developed severe PTSD from a family abuse related incident, sadly. That was way back in 2001.

[+] pjbeam|2 years ago|reply
I wouldn't ask anything age related at all in an interview.
[+] dllthomas|2 years ago|reply
In fact, that the answer could theoretically be over 40 and that that would count against the candidate means it's probably illegal in the US without clear evidence that it directly relates to job performance.
[+] Bostonian|2 years ago|reply
It's my guess that in the U.S. and much of the Western world that this question would tend to select for males. For my sample size of three children (2 boys 1 girl), only one, a boy, started coding very young.
[+] adelie|2 years ago|reply
genuinely, the fact that you're even considering this question as a signal for hirability is depressing. even if it's a useful signal, it sends a bad message.

my first exposure to programming was college and it was incredibly discouraging for me to discover that many of my peers had been programming for years; i felt like it was hard to 'compete' with my peers simply because my parents didn't encourage me to work with computers when i was a child. ironically, i ended up doing well on exams and getting a minor teaching position because i didn't have self-taught bad habits and could explain the coursework better than those who already 'got' the concepts from prior experience.

[+] danmaz74|2 years ago|reply
This a meta comment. Many other comments here talk about a correlation between wealth and programming early in life, which really surprised me. I started programming on a commodore 64 in the early eighties, and I don't understand mentions of needing a desktop computer or powerful/expensive hardware; on the contrary, you could learn programming on any old computer with a keyboard.

Anybody cares to explain their reasoning here about the correlation with wealth? Besides any correlation between having started early and being a good prospective hire.

[+] xupybd|2 years ago|reply
I was raised by a single mother. We couldn't afford to fix broken windows. I didn't have a bed for a year. My shoes were worn out and didn't fit. We couldn't afford a C64 in the 90s.

I eventually got a home PC but I was 16. I had a paper run and a cleaning job.

[+] morelisp|2 years ago|reply
A C64 in 1983 cost the equivalent of ~$900 today.
[+] amir734jj|2 years ago|reply
30M. Started in middle school with BASIC. Being an introvert really helps too. I had no close friend, computer was more or less my childhood friend growing up.
[+] reassembled|2 years ago|reply
I first programmed a computer in high school Computer Programming 1 class, in Turbo Pascal, running on a 486. But then I stopped programming for many years until I was around 35. I took up the pursuit in earnest and landed a QA engineering job at a hardware company which turned into a software engineering position. I’m doing a majority of Programming in C and C++ currently, as well as Python for writing test scripts.
[+] KenArrari|2 years ago|reply
A lot of people will say something really early, but then that age means copying and pasting from a tutorial and then not revisiting until they're adults.

If starting early actually did help them become better programmers, then it will be apparent from their current skill level and the accomplishments on their resume. Just focus on looking at that.