Live data from Hacker News

Why do so few people major in computer science?

danwang.co

491–500 of 627 posts

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

#491
post #411
post #238

Earlier quoted context omitted.

One of my professors actually made the opposite point: that in CS, the compiler will give you an error. You can fix it and move on to the next. While in math (he was a math prof), the paper doesn't object to your writing nonsense. If you have an error early on in your work, all the rest might be nonsense, and you only find out much later after a human grades it. tl;dr at least in CS you get immediate negative feedbac…

Getting the syntax right is the most trivial part of writing a useful program.

Running a program also gives feedback quicker than waiting for a professor to evaluate it.

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

#492

Earlier quoted context omitted.

I'm just saying a person thought to be "very smart" should be able to do CS101, easily; and I don't think the examples you mentioned are indication of extraordinary cognitive faculties. I taught myself near photo-realistic drawing, it's a mechanical skill--craftsmanship; had I continued to invest more time in perfecting the technique I would have got to what’s considered photo-realistic. My Spanish was decent after f…

something tells me your Spanish was never that great, and you never got that good at drawing. You reek of someone with a fragile ego. You also suck at writing clearly and concisely in English.

I think the GP's point is that in order to learn any skill you just have to be willing to study it and teach yourself; you don't have to be a genius.

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

#493

Earlier quoted context omitted.

You start saying 'software engineer' and end with programmer. Clarify your terms. There is a huge difference between willing to take on liability for your faults versus slinging code.

> You start saying 'software engineer' and end with programmer. Clarify your terms. Eh, it snuck in there. I specifically changed programmer to software engineer in multiple spots to disambiguate it because I was talking about "programming" as an act distinct from applied CS. I missed doing so at the end. > There is a huge difference between willing to take on liability for your faults versus slinging code. Based on…

"Engineer" means someone who is licensed and is professionally and legally liable for the work they produce. Those who are licensed engineers often feel that the term "software engineer" cheapens the term because software folks are not licensed and not held liable for their work (and in some places, it is illegal to have "engineer" in your title without a license). On the flip side, software developers need a way to differentiate titles between the folks who copy-paste code from Stack Overflow with little understanding and those who build well thought-out, robust solutions. Folks sometimes put this on a spectrum from script kiddy, programmer, developer, to software engineer. Perhaps a new term is needed...

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

#494

> I think that people who go to college decide on what to major in significantly based on two factors: earning potential and whether a field is seen as high-status. Also laziness, virtue signaling, dilettance, and genuine interest.

Surprised I had to scroll this far down to find this. You're absolutely right. Plenty of people just choose a major based on whimsical interest their freshman year, then stick with it because it's too late/expensive/difficult to change to something else. A lot of my friends at school ended up in this situation.

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

#496

Earlier quoted context omitted.

Agreed. I learned this in our new student orientation. "If you can't recompile a linux kernel by the time you graduate, you have learned nothing. Oh, yeah, also, we wont teach you that - it's just something you will run into. " -- Professor Norman S. Matloff

Anyone who talks about compiling the Linux kernel as a measure of difficulty or knowledge obviously knows nothing. I could teach my 9-year-old nephew how to do that.

I read that as his point. Your CS instructors won't explicitly teach you how to run "make" and select a couple configuration options, but if you reach the end of your studies without having picked that up, you probably won't make for a very good programmer.

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

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

> 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 communicate in a 2013 interview [0] where he said founders who have been "hacking for the past 10 years" have an enormous competitive advantage over founders who haven't i.e. female founders when it comes to starting technology companies.

Unfortunately, the tech press [1][2][3] went out of its way to grossly misinterpret what pg was trying to say [4].

[0] https://www.theinformation.com/YC-s-Paul-Graham-The-Complete...

[1] http://valleywag.gawker.com/paul-graham-says-women-havent-be...

[2] https://www.theatlantic.com/technology/archive/2013/12/paul-...

[3] https://www.quora.com/Is-it-possible-that-Paul-Grahams-comme...

[4] http://www.paulgraham.com/ff.html

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

#498

Earlier quoted context omitted.

> 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... Agreed, and when it comes to CS, programming is the easiest part. People who fail to see this are probably the ones who only know programming and no CS.

If you've applied for a CS degree and not done any programming though why (outside of financial incentive) would a Uni want you, surely it shows you've no interest in the field - that has to correlate strongly with failure. From nothing to doing bubble-sorts with something like python shouldn't be more than a couple of weekends for someone of the caliber to study CS at Uni. Say you apply to study marine biology but h…

Maybe because in the USA, you don't "apply for a degree" at the undergraduate level? You apply to be at the university full stop, or at most an honors program.

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

#499

Earlier quoted context omitted.

There's no reason you can't receive partial credit in CS. If assignments are being graded solely on whether or not the output is correct, I'd say it's a flaw in the curriculum. FWIW, I do not remember this being the case when I studied CS in the mid-90s.

Just as counter example, all the assignments for my OS class at top-20 CS university were graded using a set of a few hundred tests that were hidden from us. For example, the first assignment was to implement a thread scheduler and over the years the course had developed a few hundred tests on which our grade was based. We were allowed to submit our solution three times, and we would be told how many tests we passed,…

Ok, but you ARE receiving partial credit. It wasn't all-or-nothing, as was implied above.

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

#500
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 agree. The hardest part of getting my CS degree was the Math and some of the fundamental CS classes. The actual programming classes I enjoyed quite a lot. I came into college with a lot of personal experience with computers, and programming, like you mention.

I figured most other classmates were the same. However, the amount of skill variation I witnesses as a lab assistant where intro course students would plead with me to basically complete their assignments after I helped them once was mind-opening. Horrifically formatted code. Unable to use copy-and-paste keyboard shortcuts--or any keyboard shortcuts, really. Unable to run and debug code. Unable to find where in the file system the compiler or their commands were running. Unable to understand file system permissions, etc.

There was a huge valley between those with no experience that just wanted the CS degree for a well-paying job, and those that already had CS experience and wanted CS for a well-paying job that they would enjoy*

*theoretically

Post reply on HN