Live data from Hacker News

What every computer science major should know (2011)

matt.might.net

51–60 of 187 posts

Re: What every computer science major should know (2011)

#51
post #13

Differential equations and electromagnetism? Maybe 30 years ago, but these days electrical engineers know how to code

There seems to be a tendency to exaggerate the breadth of things that people should study. When you ask for specific instances where something would be useful, you usually get a hand wavy answer that since X field is connected to what you want to study, it is therefore worthwhile to study X field ("Of course computer scientists should study advanced chemistry, we wouldn't even have computers without chemistry! And wh…

So pair calculus with a programming project that involves physics simulation.

Re: What every computer science major should know (2011)

#52
post #13

Differential equations and electromagnetism? Maybe 30 years ago, but these days electrical engineers know how to code

Isn't modern ML based on differential equations?

I imagine the DE part of ML is, practically speaking, imported from a library somewhere by practitioners.

Re: What every computer science major should know (2011)

#53

In my experience no one cares about the portfolio. They want your CV, some references and to pass some coding tests. Now to be fair I am not going for the highest paid jobs or jobs required deep computer science knowledge, but for the ordinary job I have found that recruiters and employers alike look at CV. They might look at github if you are lucky.

If you aren’t using your network (you have a network right?). You’ve already failed. No one in tech knows how to hire so its all network based. This isn’t a good thing but it’s where we are.

I don't do networking, and I don't make a lot of friends outside of work, so I really only know people I have worked with before, and those people are mostly working at the same company I left, or they are working at companies I don't want to work at.

So I've failed by the bar set in your comment, but for some reason I don't feel that way, because there are plenty of jobs out there on job boards. I got 1 job through my network (an ex boss) and it wasn't any worse or better than the others. I've got a really good job now.

I can see where networking shines, and it's where you went to a top university, made lots of friends - especially in the same course and kept tabs with them since and a lot of them have gone to work for Google (etc.) or cool startups and now you can find an easier way in, which is fair enough.

Note: I'm not in the USA

Re: What every computer science major should know (2011)

#54

To me, this sounds more like what a good CS Ph.D who spent his free time filling in every general CS knowledge gap he could come up with would know. I don’t know why he says learn real analysis and linear algebra to talk to engineers when I doubt 90% of engineers took one analysis course unless they’re Ph.Ds.

Judging by the Wikipedia article, "Real analysis" is freshman-level math for most branches of engineering. Pretty shocking how little math most CS programs require in comparison.

In the US universities I’ve attended, it’s a senior level mathematics major course. Second semester freshman calculus will teach you similar material in a much more glossed over fashion and apply it to very simple examples.

Re: What every computer science major should know (2011)

#55

In my experience no one cares about the portfolio. They want your CV, some references and to pass some coding tests. Now to be fair I am not going for the highest paid jobs or jobs required deep computer science knowledge, but for the ordinary job I have found that recruiters and employers alike look at CV. They might look at github if you are lucky.

If you aren’t using your network (you have a network right?). You’ve already failed. No one in tech knows how to hire so its all network based. This isn’t a good thing but it’s where we are.

I didn't use my network to get a job. I moved to a new country with no network. I have a well paying job and am quite happy. I have not failed.

I can see the benefit of having a network, and even leveraging it. But it is not everything.

Re: What every computer science major should know (2011)

#56

Earlier quoted context omitted.

Judging by the Wikipedia article, "Real analysis" is freshman-level math for most branches of engineering. Pretty shocking how little math most CS programs require in comparison.

In the US universities I’ve attended, it’s a senior level mathematics major course. Second semester freshman calculus will teach you similar material in a much more glossed over fashion and apply it to very simple examples.

Yeah, I would be surprised to see an actual Real Analysis course in an undergrad engineering curriculum. All of the Calculus courses, ODEs, and LA for sure. And these will lightly touch on all the topics listed on the real analysis Wikipedia page.

But a course actually bearing the name "Real Analysis" is typically a 300 or 400 level course, rigorously proof-based, and not needed by an undergrad engineer.

Re: What every computer science major should know (2011)

#57

Earlier quoted context omitted.

If you aren’t using your network (you have a network right?). You’ve already failed. No one in tech knows how to hire so its all network based. This isn’t a good thing but it’s where we are.

I don't do networking, and I don't make a lot of friends outside of work, so I really only know people I have worked with before, and those people are mostly working at the same company I left, or they are working at companies I don't want to work at. So I've failed by the bar set in your comment, but for some reason I don't feel that way, because there are plenty of jobs out there on job boards. I got 1 job through…

You do networking everyday of your professional career. It’s a real consideration if the job you are going to take will allow you to work with people you want to work with at the job after this one. Don’t discount that value.

Right now is not a good time to judge your career pathing plan. It’s literally the easiest time to get a job in computing in modern history, which includes the first web boom. It’s like judging your investment strategy right now. That said if your plan is working, great! I wouldn’t spend much time on indeed if it were me but good for you.

Note: all of my jobs ever have come from networks and I went to the wrong state school and have never worked for Google.

Re: What every computer science major should know (2011)

#58
post #55

Earlier quoted context omitted.

If you aren’t using your network (you have a network right?). You’ve already failed. No one in tech knows how to hire so its all network based. This isn’t a good thing but it’s where we are.

I didn't use my network to get a job. I moved to a new country with no network. I have a well paying job and am quite happy. I have not failed. I can see the benefit of having a network, and even leveraging it. But it is not everything.

How did you get your job?

Re: What every computer science major should know (2011)

#59
My day job is engineering at one of the big tech companies whose search services most of the people I know use almost every day.

In the 100+ interviews I’ve done for engineers, I’ve never cared for their portfolio. It’s hard for me to know if it really is their portfolio or if they actually wrote the code, etc.

I’m going to ask you design and coding questions.

Re: What every computer science major should know (2011)

#60

> must practice persuasively and clearly communicating their ideas to non-programmers If you’re a CS major, panicking over this sort of “technical skills aren’t enough, you have to be a persuasive public speaker and effectively do management’s job for them”, people have been saying this since at least I started coding 30 years ago, and I don’t see any evidence that it’s actually true any more than it was back then -…

I have noticed a distinct improvement in my day to day life, not even just interviews, from really focusing on soft skills.

When I was a kid I'd start every sentence with "actually" and use jargon without considering whether the other person was following what I was saying. I got told to shut the fuck up a lot as a result.

Now I've had at least a half-dozen people earnestly tell me I should be a teacher. When I think back to my childhood, that blows my mind.

The biggest benefits to my life and mental health came from learning:

* How to better squeeze requirements out of non-technical users, and explaining why the edge cases shouldn't be left to the last minute.

* How to talk to the boss(es) about prioritization, hard requirements vs nice-to-haves, and estimated timeframes. Understanding why you're being asked to do a task and varying your approach on that information will instantly improve your relationship with your boss.

* How to respectfully delegate and offer assistance.

* How to productively critique and receive criticism.

And the best thing? I don't feel at all like these came at the expense of technical skills. I need to be a different mindset to learn either of them, so I structure my efforts around that.

Post reply on HN