Hacker News new | ask | show | jobs
by mathattack 4204 days ago
For an article about math, they seem surprisingly weak at differentiating between causation and correlation.

It’s fairly common for incoming Computer Science majors to ask the question, “Why do I have to learn all this math if I just want to learn to program?” The correlation above suggests a possible answer: The ability to understand basic mathematics is likely correlated with the ability to “think algorithmically,” which is well-known to be a foundational skill for expert programmers.

If it's just a weak (as the chart suggests) correlation, it doesn't mean learning one will make you better at the other. And if you do assume causality - it can go either way. Perhaps learning math makes you better at programming. Perhaps learning programming makes you better at math.

My 2 cents... It's more complicated because there are other things involved. Perhaps it's the nerd gene that makes people who like computers also more likely to play D&D and be in band. (I was a card carrying member) Does one of these 5 variables cause the other, or are they all part of the same thing?

4 comments

They may be bad at differentiating causation and correlation, however, if they're just using the results as a way to try and predict which candidates will do better in the classes, this seems like a pretty good application. They're not going around teaching people algebra, based on this hypothesis -- they're recruiting potentially good programmers.

However, it is correct that educators would need to do a little more research if they want to try and apply these results to a classroom.

Precisely what I thought as soon as I read the study, simply because I was terrible at math generally (and algebra specifically) before I studied CS. Afterwords, it turns out I'm fine at math generally (and have a bit of ability for algebra). The problem I had was not the content matter but the teaching paradigm.

A much more interesting experiment would be to add the algebra test back into the end of the program and see if there is improvement and how that correlates (or doesn't) to programming competence.

I was in the exact same boat. I was "shit" at math, but my love for tech pushed me to CS. I barely passed the req maths such as the calcs and descreet math, but I did exceedingly well at the cs classes. I even did okay in the algo classes just because I was driven. The longer I'm in the industry though, the easier math becomes. I've been teaching myself algebra and calc on the side and things come a lot easier. Maybe it's just my wrestle with it attitude I've picked up over time or maybe my brain is rewired. Who knows.
The way I see it, you became good at math the same way a musician gets to Carnegie Hall - practice, practice, practice.

For some reason - possibly due to the disproportionately young age of mathematicians - there's a prevailing idea that math is an innate talent, something which you are either born with, or you aren't. I strongly disagree with that notion - putting in that 10,000 hours can improve one's mathematical abilities.

Should if you are going into a CE or CS course not have learnt to code at school before going to university English lit or classics students are expected to be able to read.

I learnt to program when I was 13 and that was in the middle stream at my upper school

This is highly dependent on your opportunity. As hard as it is to find qualified math and english teachers prior to the college level, think how hard it would be to find programming instruction.

That is to say, when I was in school before university there was no choice for studying programming.

There was but it was offered at a private religious school/camp, not via the public schools.

This was in a comprehensive i.e. a bog standard school and was in the middle i.e. vocational stream - possibly the approach of having specialisation at the middle and upper school works better for feeding children into UNI/Vocational track.
Right, so the bog standard schools you had the opportunity to attend offered something mine (and many others) do not. As someone who is always looking for good developers I certainly don't want to limit the number of people who can learn CS to only those who happened to live somewhere that offered programming at the public school level.
possibly not fetishizing CS over a more useful general introduction to programming might help.

I haven't had to do any of the big O stuff in anger but I have had to make sure a major telcos billing system reconciled.

At my Uni the assumption was that you didn't need to know before you started, but the upkick in 2nd year classes was very difficult, and you'd wind up with a few "15+ hours of non-class work per week" simultaneously. So most of the top students had programmed before, but there were a couple very talented outliers who just had an aptitude for it. (Smart plus no bad habits plus work ethic)
Your quote doesn't prove your point that they're confusing correlation and causation. In fact, it even uses the word "correlation" in it.