3 ms·
Disagree on "tough math". Strongly disagree. Be analytical, practical and tenacious. Know how to abstract, design, program. Know tools, know platforms. Know ho
by kabdib 15y ago
Disagree on "tough math". Strongly disagree.
Be analytical, practical and tenacious. Know how to abstract, design, program. Know tools, know platforms. Know how to triage and actually ship stuff. Be good to work with. Keep learning, constantly. Read tons of code.
But "tough math"? Honestly, haven't needed anything more than simple statistics for most problems.
"Tough math" seems more like an ego thing. I'd watch out for that.
- geebee 15y agoI agree. Even as a math major myself, I have only needed formal math when math was part of the domain knowledge. Math is a great major, but I think you can be an absolutely top programmer with a degree in a different subject or no degree at all. I mentioned this because if you want to be the kind of programmer with a CS or related degree, you'll need to be very good at math.
- tptacek 15y agoYou do not need to be very good at math to get a CS degree. The last role I had was in a company heavily loaded up with UMich CS grad students, none of whom could (for instance) deploy a discrete cosine transform. There's a level of "street math" that good programmers tend to have (statistics, maybe some trig, maybe basic matrix arithmetic), but you'd be surprised how many excellent programmers don't even use algebra. A friend of mine interviewed at a very famous quant hedge fund (a decade or so ago) and shocked his interviewer by answering one of the questions with a system of equations in two variables.
- geebee 15y agoI'd expect UMich CS to be very strong. I haven't looked at the undergrad curriculum, but I'd be surprised if it doesn't require calculus through differential equations, along with some more advanced electives. I should have defined "tough math," because a lot of people on HN have gone far enough with math that what I described above wouldn't be considered "tough". But it actually does serve as a gatekeeper for most engineering and hard science curricula, including CS.
- rdouble 15y agoOne can get through the required classes without being any good at them. Wannabe doctors take 2 years of chemistry as premeds and promptly forget it all when finals are over. That said, I've never seen a CS degree that required any more math than a year of calc and maybe a semester of linear algebra. That doesn't seem so hard, one just has to keep up with the homework. Maybe you are thinking of computer engineering?
- serge2k 15y agoSemester of statistics required for mine. Of course they have since dropped the stats requirement. And the calc 2 requirement. So now it's a semester of calculus and a semester of linear algebra. I guess too many people failed calculus 2 and stats.
- tptacek 15y agoPeople fail stat and pass linear algebra?!
- geebee 15y agoThere's basic "stat" for the social sciences (nothing but arithmetic for means, medians, standard deviation, and so forth). Then there's calculus-based probability, which can be very rigorous. The CS curriculum at rigorous programs tends to require the harder, calculus-based probability. I was a math major, but there were a lot of CS and engineering students in my stats class. BTW, even with the calculus prereq, I'd agree that linear algebra would typically be a harder class, so I definitely understand why you're surprised someone would pass Linear Algebra and fail Stats.
- deleted 15y ago[deleted]
- deleted 15y ago[deleted]
- shoota 15y agoYou're correct for general problem solving in computer science. However, in order to get a degree from most universities you have to have taken 3 courses in calculus, a course in linear algebra and a course in differential equations. To most people those courses are "tough math".
- nuromancer 15y agoIf you are seeking a masters in CS most universities are only looking for programming languages, computer architecture, data structures and one algorithms course. These are the prerequisites for most courses.
- shoota 15y agoThat's true I'm just speaking from experience of looking at many undergraduate computer science programs in the United States. They all generally require some "tough math", and I think they should because that sort of analytic thinking in solving complex mathematical problems applies directly to computer science.
- hga 15y agoAn ABET accredited CS major requires learning the calculus and probably somewhat beyond the AP BC level plus a course in discrete math. And maybe a bit more, you can check out their web site at http://www.abet.org/ http://www.abet.org/