Live data from Hacker News

Why do so few people major in computer science?

danwang.co

251–260 of 627 posts

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

#251
post #130

Whoa, that chart seems really misleading. There are 3x more CS majors than math majors and 2x more than physics. The chart is showing derivatives, not absolutes. That basically undermines the title of the article. Looking at the graph, it's also super important to see the context before 2005 -- that start date adds significantly to the misleading impression this graph is giving. Math had more majors in 1970 than it d…

I missed my edit window, but here's the absolute plot: https://www.dropbox.com/s/8uhphbrpgygcpgy/majors.png?dl=0

Contrary to the worry that not enough people are majoring in CS, what this shows is that CS is growing out of the relatively small math/physics group and into the larger mass appeal groups.

And maybe what this shows best of all is that Biomed is through the roof.

On the whole, CS has grown slightly more than 3x since 1980 and biomed has grown slightly less than 3x since 1980, but those are the top two sciences.

EDIT:

If I divide 2014 numbers by 1970 numbers, here's the "overall" growth chart for all majors in the data that Dan Wang linked to. Sliced this way, CS is the fastest growing major in the sciences by a long, long way. That is somewhat unfair since CS is the newest, the number is big because the field was tiny in 1970. But, this is a more fair a way to look at this than the article, IMO.

    30.67139364	Homeland security, law enforcement, and firefighting
    30.23195558	Parks, recreation, leisure, and fitness studies
    24.9501675	Computer and information sciences 
    10.74267782	Communications technologies
    8.78051143	Communication, journalism, and related programs
    8.572651945	Health professions and related programs
    8.110091743	Legal professions and studies
    7.519924099	Multi/interdisciplinary studies
    6.286681303	Public administration and social services
    5.83438043	Liberal arts and sciences, general studies, and humanities
    3.348484848	Engineering technologies
    3.152990722	Visual and performing arts
    3.152613609	Business
    3.078456019	Psychology
    3.077888251	Biological and biomedical sciences
    3.017448623	Area, ethnic, cultural, gender, and group studies
    2.862768308	Agriculture and natural resources 
    2.609677419	Theology and religious vocations.
    2.201486523	Family and consumer sciences/human sciences 
    2.172980415	Engineering
    1.631956912	Architecture and related services
    1.402989257	Physical sciences and science technologies
    1.358694318	Philosophy and religious studies..
    1.074811362	Social sciences and history
    0.92876882	Foreign languages, literatures, and linguistics
    0.881133825	Mathematics and statistics
    0.773109244	Military technologies and applied sciences
    0.717323278	English language and literature/letters
    0.519678742	Education
    0.097729516	Library science
The total number of majors grew by 2.26x between 1970 and 2014, so majors over that are actually growing, and under that are shrinking relative to other majors. Everything above Theology is improving, everything in Family and consumer sciences is shrinking.

Oh, wait, this is actually the biggest revelation to me so far: Engineering has actually shrunk a little, and Math & Physics have shrunk a lot. CS is growing, not shrinking.

Here's a plot of the sciences as a percentage of total majors, this is more indicative of the growth of each field relative to other fields than either the absolute numbers or the delta plots in the article: https://www.dropbox.com/s/xuxithrti6nyljm/majorsSciencesPerc...

And compared to more majors: https://www.dropbox.com/s/wkronio6arxsrjs/majorsPercent.png?...

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

#252
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…

novice programmers should not be starting a CS degree

What makes you say that?

Where would you have them start instead?

Bumble through learning to program without the theory behind any of it?

That seems like a cart-before-the-horse scenario.

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

#253
post #221

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…

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…

I believe that being in the "engineering mindset" is at odds with what many people are used to. I think it's the culture that some see and get scared away from, even if that perception isn't 100% accurate. People interested in fixing CS "inclusivity" should address this first.

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

#254
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…

novice programmers should not be starting a CS degree

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 lawyers in high school; it's a bonus if they have been in the debate society or have taken a personal interest in the subject, but it's not necessary. I don't see why CS should be a special case, aside from a misplaced attitude of exclusionary elitism.

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

#255
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…

novice programmers should not be starting a CS degree

God forbid someone goes to college to learn something.

Of course, in my experience coming in to a CS degree as a techie didn't actually teach me how to make a living writing code. Most of the useful stuff I had to learn on my own time. The connections I made at school helped, but the value of the actual classes was low.

So perhaps a CS degree isn't intended to teach anything to anyone.

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

#256
post #7

I still suspect it's this reason from the post: > You don’t need a CS degree to be a developer With another catch. Basically, a lot of people don't intend to go into the tech industry right away. No, they end up in it because it's one of the faster growing industries with decent financial prospects. So they learn something else, work in a different field for a bit (or a low paid retail job) then end up going into tec…

> You don’t need a CS degree to be a developer And I think at least some of us observe this and think "I'll study a related tech field and then take a job that also uses CS - that will let me grow a wider skill set than if I just studied CS." Because it isn't too difficult to get exposed to CS basics while pursuing EE or math, etc, and a wider skill set can be a valuable thing to have - you generally have more freedo…

> It would be interesting to build a matrix showing how degrees in each STEM field are tied to jobs in each STEM field. Because I suspect CS funnels much less into the other STEM fields than vice versa, providing a view where a CS degree is tied to a narrower line of work, and hence more at risk to future market changes.

To be fair, the job prospects in many other STEM fields aren't great. You most likely won't get a job with a BS in physics doing physics related work, considering how many physics PhDs there are that didn't remain in academia for one reason or another.

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

#257
post #204

Earlier quoted context omitted.

Feel free to write me a check for the millions of seed money I'll need.

Do you actually need millions for a software consultancy? You're hiring people who wouldn't be employed elsewhere. You could pay them less and cut prices to your clients and everyone would come out better. I mean you've spotted what you claim is a clear inefficiency. Your guys could be taking the jobs that Infosys and gang are taking.

>Do you actually need millions for a software consultancy?

Yeah, I'd need millions to be convinced to do something I absolutely don't want to be doing.

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

#258
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…

novice programmers should not be starting a CS degree

To the degree that colleges have their curricula setup that you need to have experience programming to enroll in the CS degree, that's on them. It's not true of essentially any other STEM major--or indeed for most degrees. (There are a few exceptions. Lack of fluency+ in English would make it had to make it through many top humanities degrees. And many music, etc. degrees would be tough/impossible without prior exposure.)

However, in general, the idea that you need to already be a programmer per-college to major in CS is somewhere between wrong-headed and toxic.

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

#259

Slight note about Dan Wang picking 2005: That was the peak of CS degrees awarded because it's 4/5 years after the height of the dot-com bubble. So the upward bump in the mid-2000's is somewhat explainable as an anomaly. I think his point 1 is underrated. CS degrees are flat because aptitude is flat. You can compare CS degrees to other degrees over time at nsf.gov: https://www.nsf.gov/statistics/2016/nsb20161/#/report…

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.
Post reply on HN