Live data from Hacker News

Why do so few people major in computer science?

danwang.co

511–520 of 627 posts

Re: Why do so few people major in computer science?

#511
post #221

Earlier quoted context omitted.

I don't think it's even the programming that's the problem. There's a ton of Stupid Computer Shit we all know, mostly from messing around on our own time, that makes programming or doing anything else with computers much easier. A set of skills for navigating and troubleshooting issues, and a hard-earned intuition for where and how to look for answers. My CS program was really easy and I still don't know how people w…

When I went to senior secondary school (class 11 and 12; this is before engineering college for 4 years starts here in India) I opted for CS as my 5th subject (4 courses are compulsory and you can opt for 1, or 2 more - you'll be scored on best 5). The teacher was doing it in C++. I still remember my first program was a for loop in C++ and before that I didn't know the C of Computers. I sturggled from the day 1. I ha…

Thanks for sharing your experience. I've often thought one must be part sadist to continue in this field, or to be successful :)

Re: Why do so few people major in computer science?

#512
post #118

Earlier quoted context omitted.

Depends what you mean by hard. I went into computer science and I got the highest grades in statistics at a university which is in the top 10 worldwide for statistics. In fact, I got perfect on the final where the average was a fail. I did "OK" in comp sci (deans list, but no special placement other than that.) Stats/calc/algorithms weren't hard, I needed practice. I did every question in every textbook and followed…

What you see with statistics/calculus is extremely superficial compared to the realm of higher mathematics. Exceling in that is a poor indicator of ability to succeed in any proof-based mathematics coursework. As someone who had significant exposure to the world of mathematics for a working professional (4 years in an excellent PhD program) and who codes for a living, I find that what I did in grad school was multipl…

>What you see with statistics/calculus is extremely superficial compared to the realm of higher mathematics. Exceling in that is a poor indicator of ability to succeed in any proof-based mathematics coursework.

What about if you have to derive and prove the correctness of the formulas used instead of just memorizing formulas without background?

Re: Why do so few people major in computer science?

#513
post #229
post #173

Earlier quoted context omitted.

> The grief factor of learning to code is on a different scale to every other major. One missing semicolon will take your whole tower down, and you realise this in the first day of practical exercises. I would say that this basically screams "badly taught programming". Missing semicolon does not take down work, it just needs to be put back in and ide should help you. "Even if you are of the opinion that CS is math, a…

I took a short course (1 credit hour) in Java when it was new enough that there where no IDE's. IMO, limiting courses to established languages is kind of a waste.

I also did Java as my first serious programming language with no IDE...though this was in the early 00's in AP CS in HS. But it was good to get to know the basics through the most basic form of it. Javac/Java on the CLI, and a pure basic text editor.

Re: Why do so few people major in computer science?

#514
post #358

Earlier quoted context omitted.

Re: the choice of 2005 as origin, if you rebase on 2009, then CS degree growth looks on par with other STEM fields. Thus I think is's misleading to say CS majoring is "flat". At a certain end-to-end view it is, but that obscures that it crashed, and is now rapidly growing, not that it's been stagnant and unchanging. In the early 2000s it was widely perceived as the economically smart thing to go into a technical fiel…

>mass outsourcing winrar! Came here to say that. ctrl-f says you're the only other person to remember it. https://trends.google.com/trends/explore?date=all&q=outsourc...

Yes, I know it seems silly now, but this was a very real scare that CS would be a worthless degree in the future. I was dissuaded from majoring in CS during the height of this, but ultimately changed my major back to CS when I realized that I was actually really good at it.

Re: Why do so few people major in computer science?

#515
post #497
post #221

Earlier quoted context omitted.

I don't think it's even the programming that's the problem. There's a ton of Stupid Computer Shit we all know, mostly from messing around on our own time, that makes programming or doing anything else with computers much easier. A set of skills for navigating and troubleshooting issues, and a hard-earned intuition for where and how to look for answers. My CS program was really easy and I still don't know how people w…

> There's a ton of Stupid Computer Shit we all know, mostly from messing around on our own time, that makes programming or doing anything else with computers much easier. Thanks for clearly articulating this in 6 words: "Stupid Computer Shit we all know". This is something many people aren't willing to acknowledge (aka tribal knowledge gained from lots of trial and error). It perfectly summarizes what pg tried to com…

> Thanks for clearly articulating this in 6 words: "Stupid Computer Shit we all know". This is something many people aren't willing to acknowledge.

I think a lot of us have forgotten how strange and frightening a blank command line was the first time we encountered it. And how long it took to actually get comfortable with it. Even a windowing system is weird if you're not used to it, and lots of people use those for years and years without ever actually feeling like they're in control of them.

Knowing where the boundaries lie, how to protect oneself from unrecoverable situations and how to get oneself out of bad-but-recoverable ones puts one at ease in front of the keyboard. The absolute n00b (which we all were, once) gets lost navigating directories. The experienced user loses their boot sector, curses, sighs, then fixes the problem. They aren't put off by finding the solution to their problem is to apply a patch to their kernel and compile, and so on. It takes time to reach that kind of ultra-power-user level of competence and confidence, it's hard to teach, but it's enormously useful for letting you put the concerns of basic (ha!) computing in the background and focus on the task at hand (programming, for example).

Re: Why do so few people major in computer science?

#516

Earlier quoted context omitted.

> I have to disagree; I routinely need to educate co-workers on how things like B-Trees works, what a sum type is and why it is useful, what the SRP means (and why it is useful), why testing matters, why abstraction matters, or even things like how to secure production servers. Given this, why would someone want to get a CS degree, usually at a significant cost, when their coworkers will happily cover the same conten…

That's an interesting — and mildly dystopian, to me — thought. I would argue that the cost of having not understood these things is taking quite a toll in the form of tech debt, however. While it is certainly true that I, and others passionate about the field, can potentially educate (though it's debatable how good I am at that), I find I'm usually doing that after-the-fact: I can't know that someone lacks knowledge…

Of what real concern is technical debt to someone who is debating studying CS though? Especially when you say that they don't know what they don't know, thus not even realizing what debt is potentially created. Worst case is that they create too much and leave for greener pastures when the weight becomes too burdensome, which is really not that big of a deal to the individual.

But you seem to be looking at this from the owner/employer point of view, which I am not sure represents the type of person who would be studying CS in the typical case anyway. At least once you get past the early startup phase, if the business even started in software, these people tend to disengage from the day-to-day development to focus on the business. In that respect, if technical debt is a real concern to them, they would provide more formalized coverage of these topics to all employees to ensure that everyone understands B-trees, or what have you, at the level the business deems necessary. Since that is not common, it may not really be the operating concern you make it out to be either.

Re: Why do so few people major in computer science?

#517
post #390

Earlier quoted context omitted.

Given the gender skew amongst high-school programmers, this is almost equivalent to saying "women should not be starting a CS degree". It also further entrenches the advantages of people who come from affluent backgrounds. Given the success of some short coding bootcamps, it isn't inconceivable that novices could be brought up to speed within the first semester. We don't expect law students to have been amateur lawye…

>Given the gender skew amongst high-school programmers, this is almost equivalent to saying "women should not be starting a CS degree" What makes you bring up gender over race or class ? There are more middle-class Asian and White women in the field than lower-income African-American and Hispanic men.

The following sentence was about household income. I'm not entirely sure that race is a meaningful factor after correcting for socioeconomic status. Gender is demonstrably the biggest skew in CS majors.

Re: Why do so few people major in computer science?

#518

The grief factor of learning to code is on a different scale to every other major. One missing semicolon will take your whole tower down, and you realise this in the first day of practical exercises. Even if you are of the opinion that CS is math, and coding doesn't come into it, you will hit a coding wall early on. In fact, every exercise in CS has this problem. You add a new thing (eg inheritance), and it breaks. B…

There is another problem. Computer Science just doesn't sound that interesting. Say you could learn to build aircraft engines, understand how the economy works (which has a huge influence on people's lives) or learn how to make a computer print "hello world" on a terminal screen and how to efficiently store data. Most people wouldn't choose the latter. It's actually quite hard to describe what computer science is and…

It's interesting you say that too, because a lot of those "flashy" jobs end up being very similar to a computer science job anyways. There are typically thousands of people designing a jet engine, and individual teams and people are assigned minute tasks of the process (especially engineers). The work goes from "designing a jet engine" to "sourcing proper bolts for a small part of the jet engine".

Re: Why do so few people major in computer science?

#519

Earlier quoted context omitted.

Re: the choice of 2005 as origin, if you rebase on 2009, then CS degree growth looks on par with other STEM fields. Thus I think is's misleading to say CS majoring is "flat". At a certain end-to-end view it is, but that obscures that it crashed, and is now rapidly growing, not that it's been stagnant and unchanging. In the early 2000s it was widely perceived as the economically smart thing to go into a technical fiel…

In that time (early 2000's), even if you had a strong interest in computers, you'd be pushed toward Computer Engineering instead of CS. Business school was a popular alternative with MBA enrollments peaking in the early 2000s.

Where I went to college, UMBC, Computer Engineering covered enough of Electric Engineering and Computer Science that it set you up for either a career or further education in either. In my opinion, it was the best value.

Re: Why do so few people major in computer science?

#520

I think the problem is how the subject is taught. I remember my first CS class, and there was quite a bit of diversity that quickly disappeared after the first test when people started dropping the class. (I'm pretty sure something like half the class disappeared, and I don't think this is at all unusual). So why did all those people initially find interest, and then disappear? I remember the way they taught it was V…

I remember this too. For me it was the other way around. I learned QBasic - which I still think is awesome, even it was for DOS only - first. Then I learned C# in my first year at uni and it was a breeze. There were basically the people who could program, and the people who could not. You could see the double bell curve in the grade statistics.

To forestall the usual HN discussion: the double bell curve result has not, contrary to popular summary, been found invalid.

Dehnadi & Bornat (2006) was the seminal two-hump paper, which was widely circulated but never peer reviewed. In 2014, Bornat (who was Dehnadi's advisor) retracted it.

However, the situation is an odd one. None of the data was ever called into question. The basic methodology has seen criticisms raised, but has not been clearly invalidated. Several subsequent experiments (Dehnadi, 2009; Dehnadi et al., 2009; Bornat et al., 2012) confirmed, at least, that the aptitude test consistently produces two humps.

Rather, Bornat issued his retraction in the face of his commentary on the studies. He described having a bad reaction to SSRIs in 2006, and subsequently making a large number of wild and grandiose claims about the work. These included calling the aptitude test "100% accurate", flatly stating that some students couldn't learn to program, and publicizing third-party claims about gender in the data set.

This is all very weird. The study stands uncorrected. Dehnadi seems to have gotten caught in the crossfire, since his paper was retracted for extra-textual reasons. No one has really settled the question of how predictive the aptitude test is. The only major follow-up I've seen, out of Toronto, is simply wretched. (They used CS course grades after curving to argue about distributions!)

So: double bell curve. Not proven, not retracted, still widely supported by anecdote.

http://wiki.t-o-f.info/uploads/EDM4600/The%20camel%20has%20t...

http://retractionwatch.com/2014/07/18/the-camel-doesnt-have-...

http://www.eis.mdx.ac.uk/staffpages/r_bornat/papers/camel_hu...

http://www.cs.toronto.edu/~sme/papers/2016/icer_2016_bimodal...

Post reply on HN