|
Take into consideration that the persons responsible for developing the cirriculum are the same ones who may have been involved in the initial development of computer systems. When I started in the industry, the Computer Science degree courses didn't exist. In order to approach a computer system, you hade to have a degree in engineering (which explains the need for hard sciences and mathematics).
By comparison, low level training for electricians include courses in logic circuits and logic reduction/substitution.
|
|
|
|
|
My bachelor's degree program (class of 1984, computer engineering, Wright State University, go Raiders!) included 28 credit hours of math out of a 205 hour curriculum. This was 20 hours of calculus, 3 hours of matrix algebra, and a 5 hour course in differential equations. I've used the matrix algebra once, over a three month period, about 28 years ago. The part of my brain that stored that math education has been reformatted and now stores lines from old movies.
The useful part of my math education was the vast amount of practice in learning how to identify, reason about, and solve problems. Everything we do is one of the infamous "word problems" that everyone in math classes despise.
Software Zen: delete this;
|
|
|
|
|
Depending on the field you choose, I'm working in robotics and industrial automation and even mostly of the time maths are not needed, sometimes you can find really hard things to solve...
|
|
|
|
|
There's lots of paths to success out there.
Math may not be necessary to be successful in the CS field but actually neither is formal education in CS (many readers cringing). I have a degree in math and write programs for a living (C# and Fortran) to perform mathematically based functions. It depends on what the focus of your programming is. In some areas it would be vital.
Mostly I liken it to calisthenics for the mind. Give me 2 programmers with equal CS background and I would take the one that has a stronger math aptitude. But, I am clearly biased.
|
|
|
|
|
Mathematics is the language of science and logic. Understanding it can make your understanding of the language of programming much easier.
As for my own studies, since I hold a bachelor's degree in Mathematical Sciences and a master's degree in Statistics, I would say definitely I learned a lot of math in my studies and it was very instrumental in my learning of programming in general. Granted, my first programming gig was primarily because I was a statistician first and programmer second (I worked for a software house that produced mathematical and statistical libraries).
Christopher Reed
"The oxen are slow, but the earth is patient."
|
|
|
|
|
The only math you need to know is that arrays start at 0.
Except when they start at 1.
|
|
|
|
|
Some of it is the process taught in mathematics (or any branch of science, I suppose): how to properly analyze a problem, hypothesize, test, and re-work your hypothesis if the tests don't meet expectations.
So, not so much the actual mathematics, for most developers, but that process is important. It does seem as if the developers I've come across (nearing 30 years now) with a scientific background tend to create stronger solutions than those who came out of the CIS-type side from the business college.
On the other hand, sometimes the scientifically-minded people will create architectural 'masterpieces' where a simple solution would suffice. I suppose there's room for both in the world, depending on the needs of your employer/client.
|
|
|
|
|
They need to teach problem solving. The problem with most ways of teaching problem solving is grading the solution. The solution to that problem is use mathematics, it's easy to grade and it's easy to come up with problems to solve. I've used mathematics when the problem domain requires it, otherwise not so much. Not that I had too but I took, and passed, 2 years of calculus and 1 year of calculus based physics. The most useful courses I took, outside of CS, were the anthropology courses.
|
|
|
|
|
All those math gives the basis to understand the "cool" things.
I think for people that asks "why" more than "how to" cook recipes, those math is a must and very welcome.
|
|
|
|
|
I have studied both mathematics and computing to degree level and beyond, though I am more of a mathematician who programs as a hobby. To be honest you don't have to be a great mathematician to be a good programmer. What 'mathematics' most programmers use is basic logic and numeracy ('basic' as in 'foundational' though not necessarily easy, i.e. taught in the first year of an undergraduate maths degree or even highschool). Mathematics largely consists of other things, however, such as differential equations, many of which are derived and solved intuitively, rather than according to some rigorous logic. The best mathematicians also have good intuition and will not attempt some slow logical chain of arguments to solve a problem which can be solved by instinct (and may be insolvable by application of rigorous logic). For example, Schrodinger's wave equation can not be entirely derived mathematically or logically, it is partially an intuitive 'guess' which works. Computing requires a more rigid logical framework than mathematics. Furthermore, the only areas I have found that really make use of some of my more advanced mathematics are 3D graphics and mathematical applications that solve mathematical problems. Nevertheless, mathematics is useful - it helps with understanding algorithm optimisation, manipulation of 3D vectors and matrices (for graphical apps), binary and basic manipulation of algebraic equations and numeracy. However, there are good mathematicians who are bad at programming and good programmers who are bad at mathematics. It really depends on one's own particular niche.
|
|
|
|
|
Things like logic and discrete math apply directly to CS. But calculus not so much, unless you're doing certain types of programming. I had to take calculus and I've never, ever used it, I've used some trig but no calculus. These days I couldn't integrate something with a gun to my head.
CS is historically a branch of mathematics, so I think that's where the pre-reqs come from. But unlike, say, physics or engineering, you don't really use calculus in CS. I'm not opposed to requiring CS majors to take math, but it should be math that is relevant to CS, specifically logic. Honestly, the symbolic logic classes I took in the philosophy department were more relevant to CS than the math classes.
|
|
|
|
|
I'm glad I had it. It sharpens the mind and although I may have not directly applied the higher level of mathematics. Higher level of mathematics helped me memorize the lower level ones, which I directly used in several projects.
I think it's very important to have it, because mathematics is not as easy to learn on demand, through books and you should be prepared if the need comes by.
To alcohol! The cause of, and solution to, all of life's problems - Homer Simpson
----
Our heads are round so our thoughts can change direction - Francis Picabia
|
|
|
|
|
At the college I went to, we had tons of math involved in CS. So much so, that all I had to take was 2 extra math classes outside of the CS curriculum and I had minor in Math (which is what I did since, hell, it was only 2 extra classes!)
|
|
|
|
|
Kornfeld Eliyahu Peter wrote: I'm aware that, good logical thought is a must-have for CS, and that good mathematics means the same
Presuming of course that if you mean Computer Science for CS then one might suppose that one should have a fairly complete understanding of mathematics since it forms the basis for probably all of science.
Conversely if however is talking about a career in programming then there are far more useful skills. Such as being able to negotiate. Or for that matter just being able to have a semi-lucid conversation with normal business people.
Kornfeld Eliyahu Peter wrote: Did you learned that much mathematics as part of your studies?
Yes.
Kornfeld Eliyahu Peter wrote: Was it really helpful?
Not really. Used it exactly once. It was helpful at the time and to be fair other solutions at the time did not seem likely. But it was many years ago and it would take me a great deal more effort now to do the same trick. And the problem I needed to solve then can't exist now so it wouldn't be needed.
|
|
|
|
|
For calculating screen positions and array indices.
|
|
|
|
|
why do recruiters asking consistent scores in academic during the interview
Born To Learn
|
|
|
|
|
Because their grasp of English is poor?
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
<blockquote class="quote"><div class="op">King Fisher wrote:</div>consistent scores in academic</blockquote>
Consistent in what way ? during your academic time ? or across the different courses (strong in some fields, weak in others)?
Me think it is one way to judge a candidate fresh from university/college without relevant (or extensive) work experience.
I'd rather be phishing!
|
|
|
|
|
My scores were consistently low
My blog[ ^]
public class SanderRossel : Lazy<Person>
{
public void DoWork()
{
throw new NotSupportedException();
}
}
|
|
|
|
|
I have never been asked about my academic scores during an interview. Interesting.
|
|
|
|
|
Me neither!
Life is like a s**t sandwich; the more bread you have, the less s**t you eat.
|
|
|
|
|
I've been phoned by the company even with a average 95/110 and 1 year late bachelor in Computer Engineering. They asked me to solve a 30 problems in 40 minutes, ranging from Math to signal manipulation and Electronics, plus C and VB6 programming (the things I actually do 80% of my time).
But many employers use the grade and I can understand: you can sort people automatically. When you have tohusands of requesters you cannot simply interview each and every one of them and give them a numerical grade (a choice criterion) to decide. You need to peel off first in order to reduce the the order of magnitude of the requesters to the tens.
One who passed with high marks allegedly shows a result-oriented mindset and a certain degree of self discipline, two prized qualities. Of course it is a blind criterion, for example a working student in a tough university may have harder times, less time to study and lower grades despite being better than the "eternal students", the ones who really can study by heart even Engineering exams (trust me, they exist and they are growing. You know them - "how can i do thad give me codes plzzzz").
Geek code v 3.12
GCS d--- s-/++ a- C++++ U+++ P- L- E-- W++ N++ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t++ 5? X R++ tv-- b+ DI+++ D++ G e++>+++ h--- r++>+++ y+++*
Weapons extension: ma- k++ F+2 X
|
|
|
|
|
Because past consistency is an indicator of future consistency; rather the one indicator (among several) which can be quickly checked during the interview process.
|
|
|
|
|
So they can figure out how expensive the drugs are that they will give you in order to keep you a docile slave who does not rock the boat.
«OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme late-binding of all things. » Alan Kay's clarification on what he meant by the term "Object" in "Object-Oriented Programming."
|
|
|
|
|