Live data from Hacker News

What every computer science major should know (2011)

matt.might.net

71–80 of 187 posts

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

#71

Earlier quoted context omitted.

No, it was advertised on LinkedIn. Coworkers only required for references.

So you only used a site dedicated to your online network for the first contact and your in person network for the final conversion. Seems like networks had nothing to do with your job to me...

>So you only used ...

Nope I used more than one job search method.

It was Advertised. They paid for an advert. To be advertised to strangers.

It might as well have been a Facebook ad or a Google search ad, for all that networks had to do with it.

> Your in person network for the final conversion

Yes references. That's a bit different though.

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

#72
> Racket, as a full-featured dialect of Lisp, has an aggressively simple syntax. For a small fraction of students, this syntax is an impediment. To be blunt, if these students have a fundamental mental barrier to accepting an alien syntactic regime even temporarily, they lack the mental dexterity to survive a career in computer science. Racket's powerful macro system and facilities for higher-order programming thoroughly erase the line between data and code. If taught correctly, Lisp liberates.

What a rude paragraph. I think this viewpoint is very unfortunate. I love functional programming, and I think everyone benefits from learning it, but this garbage attitude is toxic to students. The author cannot imagine a successful computer scientist who doesn't love the same PL paradigms as him. I would prefer to keep them away from my learners.

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

#73

I don't think it's that valuable to improve IDE-less software development skills. Just because some Unix nerds find it cool to play with text files, avoid modern software development tools or program in date languages like C it shouldn't be desirable for a computer science major. Computer science should focus on long-live principles, the Unix philosophy may have a lot of good worth to keep principles, but kinda nothi…

Working with an IDE is important experience. However, speaking as someone who tutors CS students, there's a lot that people can miss about what they're doing when they have only ever worked in Eclipse.

There's something enlightening and empowering about tangibly having a specific file that you wrote, applying a compiler to it to produce an executable, and then invoking it yourself. It gives a better sense of ownership of the process that people don't always feel when they load a project into and IDE and fill in lines of code until the play button stops telling them what they did is wrong.

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

#74
post #72

> Racket, as a full-featured dialect of Lisp, has an aggressively simple syntax. For a small fraction of students, this syntax is an impediment. To be blunt, if these students have a fundamental mental barrier to accepting an alien syntactic regime even temporarily, they lack the mental dexterity to survive a career in computer science. Racket's powerful macro system and facilities for higher-order programming thorou…

> who doesn't love the same PL paradigms as him.

I don't see that at all. It's not about enjoying it, it's about having the ability to adjust to the Lisp syntax, full stop. Given that Lisp is just about as close to programming directly in an AST as you can get, I'm not sure that claim of his is too far from the truth. Remember, we're talking about computer science, not programmers generally.

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

#75
post #72

> Racket, as a full-featured dialect of Lisp, has an aggressively simple syntax. For a small fraction of students, this syntax is an impediment. To be blunt, if these students have a fundamental mental barrier to accepting an alien syntactic regime even temporarily, they lack the mental dexterity to survive a career in computer science. Racket's powerful macro system and facilities for higher-order programming thorou…

I didn't see anything in that quote about loving it -- just about being able to handle it temporarily.

I deal daily with technology that I have don't enjoy, but have to accept temporarily. I wouldn't be fit for a career in computer science if I couldn't adapt to that.

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

#76

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.

Here's how I review resumes. I'll scan the document for evidence of some kind of selectivity in terms of education and/or past employers. I ignore action phrases, GitHub accounts etc. If I see one that interests me I'll setup a phone call. It's a common misconception that we look for reasons to hire someone when in fact the opposite is true: we are looking for reasons to say 'no'.

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

#77
post #27

Is there anyone who ever knew all of this when they graduated? I think maybe the top student through my five years at university might have known all of this. I sure as hell did not check all the boxes when I graduated two years ago. If you're nervous after reading this, just know that the "should" probably means "in an ideal world".

I've been working in industry for 19 years and I don't think I know all of this stuff right now. What I do know is that in these topics there are a myriad of things I don't _really_ know.

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

#78

Earlier quoted context omitted.

The real pain is that most of us think we ARE good at it. We think about our intentions, and not what comes across. Intent rather than impact. But it's the impact that matters.

This is very true. But once you start learning this I think people start to realize others intent and that changes impact. At the end of the day we all kinda suck at communicating with one another and I believe that you should try to see intent too(I've found that this makes my life substantially less stressful as things that used to impact me negatively don't do so as much anymore). I'm not trying to give people an…

i think this is called empathy

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

#79

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

they're equally important and require time and practice

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

#80

Earlier quoted context omitted.

This is very true. But once you start learning this I think people start to realize others intent and that changes impact. At the end of the day we all kinda suck at communicating with one another and I believe that you should try to see intent too(I've found that this makes my life substantially less stressful as things that used to impact me negatively don't do so as much anymore). I'm not trying to give people an…

i think this is called empathy

Haha yes. But some times it needs to be restated.
Post reply on HN