Live data from Hacker News

Ask HN: I'm an incoming freshman to college for a CS major, what should I know?

news.ycombinator.com

81–90 of 278 posts

Re: Ask HN: I'm an incoming freshman to college for a CS major, what should I know?

#81

1. Sweat the fundamentals. CS isn't a coding school. Algorithms, complexity theory, databases, operating systems, graph theory, compilers, math, etc. will get you further than any coding. 2. Go for depth, not breadth. I know most US colleges make students do all sort of breadth stuff, which I don't get (I come from European undergrad, all our classes were CS/EE - coming to US for grad school, I was more prepared than…

I don't exactly disagree, but the tension between points 1 and 5 is notable.

I'd say the "get you further" remark is true in the narrow sense of a career: you'll be more likely to beat the interview if you can write a recursive solution to a problem than if you can talk fluidly about python generators.

But being a productive engineer really requires both, they aren't separable skills, yet paradoxically they're actually poorly correlated! The world is filled with productive hackers who can get the wrong solution to "work" quickly, and insightful theoreticians who just can't produce working code.

Re: Ask HN: I'm an incoming freshman to college for a CS major, what should I know?

#82
1. Is your college a CS focused degree or a software engineering focused degree? 2. With the possible exception of Physics, I've found that CS programs are the most time consuming. Programming just takes a lot of time even if you know exactly what you're doing. 3. If you work on coding side projects, one complete side project is more impressive than a dozen half completed ones. Don't worry if the code is terrible if it works and you can demo it. People will have low expectations and just be impressed with its functionality. 4. Your degree is a checkbox. Your GPA is a threshold to get past a filter. A 4.0 is a flag, not always a good one. Enjoy life, experience other things and domains, don't focus solely on school.

Re: Ask HN: I'm an incoming freshman to college for a CS major, what should I know?

#83

Let me start by sharing what I think is the most important advice. I would focus and really ensure you "learn" things. Don't worry about optimizing for exam scores. In my opinion, it's better to get a 75% on an exam and understand that 75% well as opposed to getting 95% on an exam but only because you "remembered" things without really understanding them. When you study, spend time deeply thinking about the concepts.…

Dug around until I could find a suggestion that I would recommend highly. As suggested above, taking a compilers course and an operating systems course will give you a view into how computers work (not the electrical parts, but the general software parts).

In addition, I'd recommend taking any programming language course offered: C, C++, Java, Python, Lisp, Prolog, (Ada, Cobol, Fortran, Basic, and on and on). Learning the other languages gives one a view into programming in general, not just in your favorite language.

My 2c.

Re: Ask HN: I'm an incoming freshman to college for a CS major, what should I know?

#84
post #2

Learn your first (class's) language now, so when you are learning you can focus on concepts not syntax. Learn bash and master the terminal, bash programming guide, advanced bash PG, https://github.com/hofstadter-io/jumpfiles Consider Vim Be involved in the CS groups, this is where the smartest people are Talk to your faculty all the time Get into research Build things that aren't for class Hit me if you like, email i…

Underrated comment. Since everyone has the conceptual stuff down:

Learn about Wireguard. Nobody seems to be teaching it yet, curriculum always 3-5 years behind, and it's worth adopting into ed much sooner than that.

Re: Ask HN: I'm an incoming freshman to college for a CS major, what should I know?

#85

1. Don't assume your CS classes will always be easy. Having programmed a lot is a big advantage, but you're going to be learning a wide variety of things as a CS major that you may not have had to think about previously, and there is going to be a lot of it which isn't intuitive. Be prepared to study more than you have in the past and don't get cocky; sometimes it isn't until your junior or senior year that you get b…

double majoring is a hilarious waste of time and money. don't do it.

It depends on what your goals are. Perhaps from a purely practical standpoint, there are diminishing returns, but we should also consider the plummeting job market people graduating in the next couple years will be coming into. Having something to help you stick out might be useful, even from the practical standpoint.

Of course, there are points of view outside this too, and it is ridiculous to dismiss these perspectives as objectively wrong. Some people actually enjoy the liberal arts, the fine arts, entrepreneurship, etc.

Re: Ask HN: I'm an incoming freshman to college for a CS major, what should I know?

#87

1. Sweat the fundamentals. CS isn't a coding school. Algorithms, complexity theory, databases, operating systems, graph theory, compilers, math, etc. will get you further than any coding. 2. Go for depth, not breadth. I know most US colleges make students do all sort of breadth stuff, which I don't get (I come from European undergrad, all our classes were CS/EE - coming to US for grad school, I was more prepared than…

#5 big time. A lot of CS grads struggle their first year or so working.

Try to code something everyday. Learn to use tools. Doesn't matter what you code or what tools you use really.

The idea is to get comfortable with not knowing all the answers and then get fast at figuring things out.

Most importantly, get enough sleep, exercise, and sun. Your mind needs to be sharp and that starts with maintaining your body. Good luck!

Re: Ask HN: I'm an incoming freshman to college for a CS major, what should I know?

#88

Earlier quoted context omitted.

double majoring is a hilarious waste of time and money. don't do it.

Definitely not a waste of time. Learning to think in a non-CS way can be incredibly valuable. Will it make you a better programmer? Maybe not. Will it make you a more effective employee, founder, or person? Yes.

Why do you need to pay tens of thousands of dollars to for a second degree when you can just go to the source material yourself?

Project Gutenberg exists, as does Youtube, Khan Academy, and many other free resources.

Re: Ask HN: I'm an incoming freshman to college for a CS major, what should I know?

#89
post #66
post #28

> I've been coding since I was young Same here, but that doesn't mean you won't struggle. If you have been coding since very young, you could very well be quite skilled at software engineering, the practical aspect of producing software, but not at computer science. I was fortunate enough that a middle school teacher found out I was interested in coding and decided to teach me real computer science instead. That's wh…

> Go find your own subfield that you are interested in and go deep in it. Conversely, do know that this may not yield much appreciation from professors. BSc and MSc degree programs don't generally reward you for doing work that is so deep to be publishable. Even though you are at college to learn, you can't get carried away learning by yourself, if it is in the way of passing exams.

I find the opposite. My professors really did appreciate my deep work and involvement in PhD-level research. What doesn't appreciate my work is really the degree: regardless of whether you do so your degree just says BSc. It's more for learning for your own good.

Re: Ask HN: I'm an incoming freshman to college for a CS major, what should I know?

#90

Earlier quoted context omitted.

double majoring is a hilarious waste of time and money. don't do it.

False. I was a physics/philosophy double and I haven't regretted it for a second. Physics was profound (although somewhat disappointing!) but philosophy is the home of ethics, and lots of writing, and the study of both of those will serve you in good stead.

You don't need to double major in philosophy to be exposed to it. For a fraction of the money you paid, you could've tapped into free online resources and paid for a philosophy tutor to walk you through the classics.
Post reply on HN