Protein Posted November 26, 2009 Share Posted November 26, 2009 So I'm just curious about how much math is needed in a computer science degree/and for programming in general. And how much advanced math do you need to know? I know it varies depending on what kind of programmer you are. So how much math would programmers in the video game industry require? Or people developing software/business applications? So far I've done good in math at school but I haven't really taken any hard courses so I don't really know how I'll fare with that. 1 Link to comment Share on other sites More sharing options...
StringJunky Posted November 26, 2009 Share Posted November 26, 2009 Taken from a Wiki article on Game Programming: Notably, there are many game programmers with no formal education in the subject, having started out as hobbyists and doing a great deal of programming on their own, for fun, and eventually succeeding because of their aptitude and homegrown experience. However, most job solicitations for game programmers specify a bachelor's degree (in mathematics, physics, computer science, "or equivalent experience"). Increasingly, universities are starting to offer courses and degrees in game programming. Any such degrees should offer a well-rounded education that includes all the fundamentals of software engineering. http://en.wikipedia.org/wiki/Game_programmer#Experience_needed You might find the link worth clicking on to see the various types of job specs in that area. Link to comment Share on other sites More sharing options...
Protein Posted November 26, 2009 Author Share Posted November 26, 2009 This is more just telling me about game programming. I don't want to know about that specifically. I wanted to know more about what type of mathematics are required for each sector of computer science/computer programming. Link to comment Share on other sites More sharing options...
ajb Posted December 3, 2009 Share Posted December 3, 2009 The people I know that are involved in computer science are really mathematicians and use a lot of notions from category theory and formal logic. For graphics I know that differential geometry can be very useful. If I recall rightly, the quaternions can be used to implement rotations. I think this was used in the Tomb Raider games (?). I imagine that for programming, it will depend on the nature of the programme as to what mathematics your require and to what level. If you are thinking about enrolling on a computer science course, then ask the course directors what mathematics will be encountered. Link to comment Share on other sites More sharing options...
Dudde Posted December 3, 2009 Share Posted December 3, 2009 I studied to be in that industry for quite some time, and had a pretty solid correspondence with several of the professionals on the inside. Don't be afraid to find some companies and email them, let them know you're interested in certain kinds of positions and what they would recommend for a beginner wanting to start these fields. you probably won't get a response to each and every email you send, but if you send a good 10-20 emails, you should get a pretty good idea of what you want to look for Link to comment Share on other sites More sharing options...
bascule Posted December 3, 2009 Share Posted December 3, 2009 Considering computers are universal and can be used to do anything, any and all aspects of mathematics have potential applications in computer science. You're going to have to be more specific in your question to get a response, sorry. For example, I work with singular value decomposition as a method of collaborative filtering. Most computer programmers have never heard of SVD and will never use it because they don't have a potential application. Link to comment Share on other sites More sharing options...
D H Posted December 3, 2009 Share Posted December 3, 2009 For example, I work with singular value decomposition as a method of collaborative filtering. Most computer programmers have never heard of SVD and will never use it because they don't have a potential application. Most computer programmers wouldn't have the foggiest idea what to do with the SVD even if they had a potential application. From other posts, Bascule has spent a lot of time in the trenches of scientific computing. He can probably tell horror stories of the quality of the code written by scientists, mathematicians, and engineers. I've been there too; it is truly abysmal. The SVD is a prime example. The Numerical Recipes version has a cyclomatic complexity in the high 80s, IIRC correctly. That means that that particular implementation of the algorithm is essentially untestable. So if scientists, mathematicians, and engineers are truly atrocious at programming, why are they allowed to do it? The answer is simple: Bad as they are as a group at programming, computer programmers as a group are even worse when it comes to math and science. I long ago made the mistake of hiring a scientifically illiterate computer programmer to help with the computer science aspects of a scientific computing problem. Big mistake; once bitten twice shy. (Others have repeated this experiment for me. It is always a mistake.) There are exceptions on both sides. Some scientists, etc. do know how to write/design a well-crafted computer program, and some programmers are quite adept in math and science. Those exceptional people who can use both mindsets are golden. Literally golden. They can command a significantly higher salary than their run-of-the-mill cohorts who cannot cross over to the other way of thinking. Link to comment Share on other sites More sharing options...
ajb Posted December 4, 2009 Share Posted December 4, 2009 I won't say where I heard this, but I have been told "it is easier to teach mathematicians and physicist computer programming than teach computer programmers mathematics and physics ". (I paraphrase here slightly) I have virtually no knowledge of scientific computing, though I know it is a massive industry and overlaps with many many things. Computers and software at different levels of sophistication are now fundamental in the practice of science. Link to comment Share on other sites More sharing options...
bascule Posted December 5, 2009 Share Posted December 5, 2009 So if scientists, mathematicians, and engineers are truly atrocious at programming, why are they allowed to do it? The answer is simple: Bad as they are as a group at programming, computer programmers as a group are even worse when it comes to math and science. I long ago made the mistake of hiring a scientifically illiterate computer programmer to help with the computer science aspects of a scientific computing problem. Big mistake; once bitten twice shy. (Others have repeated this experiment for me. It is always a mistake.) There are ways such programmers could be useful to you. Perhaps the one way I was most useful was helping people merge code. In atmospheric science there are thousands upon thousands of different models for various entities in our environment which affect the atmosphere. I helped merge an evapotranspiration model into a regional atmospheric climate model. Another would be in the high level design of the project. Another model I worked on went through a sinusoidal curve of CPU usage, because half the time it was I/O bound. I look at that and go "this system should really be asynchronous so that the CPU-bound work isn't sitting around waiting for I/O to complete". But what atmospheric scientist is going to think that? There are exceptions on both sides. Some scientists, etc. do know how to write/design a well-crafted computer program, and some programmers are quite adept in math and science. Those exceptional people who can use both mindsets are golden. Literally golden. They can command a significantly higher salary than their run-of-the-mill cohorts who cannot cross over to the other way of thinking. People who know how to do high level system in general are invaluable. Most of the people you'll find practicing "computer science" in general don't really have a clue. Link to comment Share on other sites More sharing options...
D H Posted December 5, 2009 Share Posted December 5, 2009 There are ways such programmers could be useful to you. Perhaps the one way I was most useful was helping people merge code. In atmospheric science there are thousands upon thousands of different models for various entities in our environment which affect the atmosphere. I helped merge an evapotranspiration model into a regional atmospheric climate model. I would venture that the reason you were able to help in this effort was because you are one of those select few who can think with both a scientific and computer programming mindset. Assuming the sci-fi version of the multiple worlds interpretation is correct, there almost certainly would exist a parallel universe in which bascule became an atmospheric scientist rather than a computer scientist. People who know how to do high level system in general are invaluable. Most of the people you'll find practicing "computer science" in general don't really have a clue. Most people you'll find practicing any technical endeavor don't really have a clue. It's sad in a way. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now