Live data from Hacker News

Why do so few people major in computer science?

danwang.co

151–160 of 627 posts

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

#151

I majored in computer science, and I don't feel like I've learned anything. Every time there was an opportunity to learn something cool (mathematical theory behind cryptography, assembly language, details of a processor, the cache, or a communication protocol) or useful, it was glanced over as 'technical details'. Instead, I was introduced to many, many small topics (programming, graphics, databases, algorithms, user…

I have a master's degree in computer science, and my experience was the complete opposite of yours. Projects were interesting, topics were well-covered, we had the opportunity to go really deep into some subjects (kernel programming, distributed systems, assembly, functional or concurrent programming, ...), and, of course, it was highly creative.

I spent my four of my five school years in France, and one in California. Where did you study ?

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

#152

I majored in computer science, and I don't feel like I've learned anything. Every time there was an opportunity to learn something cool (mathematical theory behind cryptography, assembly language, details of a processor, the cache, or a communication protocol) or useful, it was glanced over as 'technical details'. Instead, I was introduced to many, many small topics (programming, graphics, databases, algorithms, user…

Most developers don't appreciate how big of a difference there can be between different schools with regards to their computing science programs.

I picked a pretty good school and we got in depth with assembly, graphics, databases, functional programming, etc. In my time there, I wrote my own programming language and VM, a working raytracer, a neutral net project, and much more. I appreciate having a good solid base in a wide range of computing science concepts.

One of my co-workers are currently doing a degree in a much less prominent school in town, and the classes are much less involved, pretty easy, and sometimes just weird. She doesn't even bother to go classes most of the time. She really isn't learning much that she doesn't know already.

If I had gone to that school, I wouldn't have learned much that I didn't know already either.

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

#153

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…

All this is true, and yet when I was a young'un, Engineering had a plenty high dropout rate. Higher than CS I think.

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

#154

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…

For me, maths was a much bigger stepping stone than programming. When I came to uni, I was basically already equipped with most of the programming knowledge I needed to enter the workforce. I learned it quickly and easily. But maths - man, that's a different monster. It's one thing to see that you missed a semicolon, another to understand what singular value decomposition and principal component analysis and Stoke's theorem mean.

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

#155

I think the market is just way over saturated. Hiring practices for developers point to just that. I mentioned in a different thread how simole it is for my travel-nurse of a sister to get a new job (her stints around the Bay Area paid ~100k and she only has 2 years of experience). Developers jump through hoop after hoop for employment, this wouldn't happen if they were in demand like a nurse. The market is just resp…

A nurse has a professional body underwriting her or his qualifications. A developer has no such thing. That's why all the hoops.

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

#156
My theory: computer programming is awesome, but getting a good job doing interesting work is really hard. A bachelor's degree in computer science won't even get your foot in the door in a lot of places. However, there is lots of work doing IT for banks or writing Java for insurance companies or creating web pages for doctor's offices. That sort of thing might pay pretty well, but it's not the sort of thing that you would have said when someone asked you what you wanted to be when you grow up.

Maybe a lot of prospective students perceive (correctly or not) that all the best jobs are already filled by talented people and the competition for those is intense. If you didn't get in at the right time when the industry was in a massive growth phase, you're more likely to get stuck in a dead-end job.

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

#157

Earlier quoted context omitted.

> Every time there was an opportunity to learn something cool ... it was glanced over as 'technical details'. That's interesting. The most common complaint in my program from students was that we weren't actually learning how to program. Actually learning how to use a language was considered (for the most part) a "technical detail", and the course was very heavy on algorithm analysis, theory of computation, math, how…

> The most common complaint in my program from students was that we weren't actually learning how to program Exactly this. While working for a Fortune 50 engineering conglomerate, a colleague participated in a Career Day at the local university. He interviewed ~50 or so students, a mix of undergrads and graduates. He claimed that of these he found about two of them who might be able to do Fizz-Buzz. That's crazy!

Well, it depends on what the purpose of the degree was. I would say that with a good foundation of knowledge, it's fairly easy for someone to do directed personal work and learn how to program better. Doing the same thing to learn theory of computation and algorithm analysis would be much, much harder without a mentor available to walk you through the more complex and troublesome bits.

It is entirely possible that my school took this a bit too far (or that might have been the norm at the time). At the same time, some students were complaining that our major wasn't treated the same as others, as our lab time didn't count for the same amount of credits as other majors. For example, I believe a 2-hour of instruction and 3-hours of lab time class for chemistry was 5 credits, but 4 credits for CS, leading to more in-class time required than some other majors. I personally didn't care, and didn't even know about it until my last semester. Depending on how you look at it, it's actually not a detriment, but a bonus of the major.

That said, the electives available to CS did have more practical experience, such as the OO programming one taught using Java (I graduated probably a year or two before they switched from C++ to Java as the main teaching language).

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

#158

Earlier quoted context omitted.

I just wanted to say I agree with the field being "pretty horrible", for all the exact same reason you posted. Civil/Mechanical engs, Doctors, Lawyers, Nurses, Biologists etc, all get out in the field and/or get to work with people all the time... In tech it's the same flourescent lights, same keyboard, same office, same people...every day for 40 years? What kind of quality of life is that? It's literally the definit…

A lot of engineers on /r/engineering complain about either being a 8 hour a day CAD monkey, or "being stuck in this stupid factory" or "constant travel is killing me" etc. On a broader note, I don't believe a generally accessible job (i.e. not requiring some unique career path or tons of sacrifices beforehand) can be both well paid and rewarding. We're paid really well because we generate lots of value and we're rela…

Doing anything for money sucks the pleasure out of it, programming isn't unique in that.

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

#159
post #145

Earlier quoted context omitted.

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

Bootstrap!

Poiknoik quite literally used the "bootstrap" argument in a non-ironic way to describe an actually real systemic problem .

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

#160
post #148

I majored in computer science, and I don't feel like I've learned anything. Every time there was an opportunity to learn something cool (mathematical theory behind cryptography, assembly language, details of a processor, the cache, or a communication protocol) or useful, it was glanced over as 'technical details'. Instead, I was introduced to many, many small topics (programming, graphics, databases, algorithms, user…

I majored in EE, even though I expected to someday take a software job because I really enjoy programming. I figured I could continue teaching myself programming in parallel. As a self-taught programmer, I think you're downplaying how much you can learn in a CS program. I don't pretend to know as much as a CS major. I haven't spent time learning compilers or DB internals, and probably haven't studied CS algorithms en…

I was in a very similar situation as you, graduated in EE but liking programming software much more.

I found a very sweet spot in Embedded Systems programming, which by nature is more or less an intersection of the two disciplines.

Post reply on HN