The things I'm still missing (and trying to improve) have to do with managing servers and parallelism. This is highly advisable but maybe too daunting in such a list for sharing with a beginner...
What every computer science major should know (2011)
31–40 of 101 posts
Re: What every computer science major should know (2011)
#32Re: What every computer science major should know (2011)
#33I graduated 10 years ago and never used calculus, differential equations, linear algebra, or physics in my job. I'm not saying this to say they aren't useful. But does anyone find them generally useful for their job? If so, what for? I'd like to know what I'm missing here, if anything. I don't want to go through a refresher just to forget it in another couple of years.
Re: What every computer science major should know (2011)
#34Interesting that the list includes "not being a lone wolf" and that goes on to state you should be capable of doing pretty much everything necessary to complete a project on your own. If you're capable of working well in a team you don't need to be able to do all the things in this list. You can hand off things to people who are better at those things. That's a good skill to have. That makes you very employable.
Similar to philosophies on management. A good manager does little hands-on work himself, but he will generally make for a better manager if he could hypothetically fill the shoes of each of his reports. Not that he should ever actually do that, but it means he understands what they are doing.
Re: What every computer science major should know (2011)
#35To succeed, all you really need to know is enough to be able to do meaningful contributions to society in any way whatsoever. This is all there is to it and there are thousands of individual paths that lead to this. In fact, many of the most successful people specialize early, devote themselves to a single project or group of projects and spent the rest of their professional lives on it. Do you think John Carmack knows much about visualization, databases or cryptography? Does Linus Torvalds care about Scala, Haskell or Prolog? People love what those guys have created, so they have succeeded, it is as simple as that - nobody examined them for knowledge of 25 unrelated areas, instead they have built for themselves a useful toolkit of skills for their particular goals. It is not worth it to spend your life chasing some abstract platonic ideal of an uberprogrammer who knows everything about anything - in fact such attitude is detrimental to success.
Re: What every computer science major should know (2011)
#36Re: What every computer science major should know (2011)
#37Re: What every computer science major should know (2011)
#38There is more harm in the notion that there is anything at all that absolutely everyone needs to know to succeed than there is benefit from the contents of such lists themselves (which boil down to "everyone needs to know what I know"). To succeed, all you really need to know is enough to be able to do meaningful contributions to society in any way whatsoever. This is all there is to it and there are thousands of ind…
This guide will put a graduate in a great position and open up a lot of opportunities. Whatever "success" means is only loosely related.
Re: What every computer science major should know (2011)
#39I graduated 10 years ago and never used calculus, differential equations, linear algebra, or physics in my job. I'm not saying this to say they aren't useful. But does anyone find them generally useful for their job? If so, what for? I'd like to know what I'm missing here, if anything. I don't want to go through a refresher just to forget it in another couple of years.
Re: What every computer science major should know (2011)
#40There is more harm in the notion that there is anything at all that absolutely everyone needs to know to succeed than there is benefit from the contents of such lists themselves (which boil down to "everyone needs to know what I know"). To succeed, all you really need to know is enough to be able to do meaningful contributions to society in any way whatsoever. This is all there is to it and there are thousands of ind…
That's great, but who said anything about success? The article is about how to be a well-informed computer scientist. This guide will put a graduate in a great position and open up a lot of opportunities. Whatever "success" means is only loosely related.
I've tried to answer this question as the conjunction of four concerns:
What should every student know to get a good job?
What should every student know to maintain lifelong employment?
What should every student know to enter graduate school?
What should every student know to benefit society?
For all the four points listed the attitude of focusing on some checklist covering everything is not really the optimal strategy. For graduate school you may need to pass some broad exam, but afterwards in turning towards research you also want to be much more picky about what you choose to learn and stick to learning mainly (but not necessarily exclusively) things that are likely to help your particular goals.
You should think of learning as of investing and learn things that you are likely to have some use for in the future or ones that you simply like learning. Things that you learn but that you have no long term use for or passion for you will promptly almost completely forget and the time and effort you spent learning them will simply be lost.