Is math required for being a good programmer?
-
If so, what math classes are recommended? I'm currently enrolled in a community college and I figured out that if I want to major in computer sciences that I am going to need to take a lot of math classes such as calculus and other advanced maths. I'm curious what the other "advanced maths" would be, and if I really do need them to be a decent programmer. Or would it just be better to take some online classes about just programming instead? I hope to work for a company like Google someday, but I'll take any other silicon valley tech firm. Any suggestions/recommendations? Slightly related question:
-
Answer:
Depends on what you're programming. It many cases, you may not use much math. If you are looking to do things in AI, search, or vision, then high level math is very necessary. Many AI problems like decision making rely on the statistics and probability of an event occurring. In the AI class I recently finished, probability and statistics were part/integrated into the problems we were looking at for almost two thirds of the course. Graphics requires a good background in linear algebra. In order to do linear algebra, you need a good background in calculus. As you delve into more complex algorithms, you will need to analyze how long the algorithm will take to run. Discrete/abstract math is a big part of the foundations of computer science. While I think you could possibly get by in many programming jobs without a lot of math, if you are looking to get into companies like Google, Apple, Facebook, a good understanding of advanced math concepts will definitely help.
Andy Fox at Quora Visit the source
Other answers
I will speak from requirements of the industry point-of-view, rather than that of how difficult your college experience may be. My opinion stems from my experience of having recently gone through ~50 programming job interviews after completing a masters in software engineering. Your math skills will play a huge role in defining how easy/difficult it is for you to understand key programming concepts. To be an 'excellent' or 'rockstar' programmer, you MUST be an excellent math student. To be an above average programmer, a lack of math skills can be compensated by spending more time and energy in understanding the concepts that greatly depend on maths. The biggest hurdle is the temptation is to skip the math related material because of the seemingly low benefit of spending so much time understanding that. Is there a high correlation between math aptitude and programming aptitude? Yes. Is math aptitude essential to becoming a good programmer? No (hard work makes up for it). While studying programming, every time you come across a math related topic that you do not understand, go and look up that topic through textbooks. Do not proceed unless you understand everything you've read.
Shailesh Tainwala
No, but it is essential for being a competant software engineer. Which math ultimately depends on what kind of software you are designing. 3D graphics requries Linear Algebra.
Jeff Kesselman
No, math isn't essential for computer programming. You're going to need linear algebra, and if you want to get to TopCoder red, you're going to find calculus and probability useful. Anything beyond that is merely a result of your interest. One of the best programmers I know is horrible at math; I'm unsure of his mastery over multiplication. He still churns out excellent code, and his algorithms have an interesting clarity that is rare even in academia. ...of course, I'm assuming you want to build websites or databases; tough luck if you're trying to forecast weather or simulate a stock market.
Shannon Sequeira
Here is an interesting blog article that talks about math for programmers. it is very interesting http://steve-yegge.blogspot.com/2006/03/math-for-programmers.html
Anthony Orestino Pezzotti
I worked as an intern at Apple and I'm pretty sure most software engineers there use very little math on a daily basis. That said, probably the most interesting project someone on my team was working on was very math heavy. So I think math isn't strictly required for most programming, but if you want to do the more interesting things you will need a strong math background.
Anonymous
Related Q & A:
- How to become a good programmer in C language?Best solution by Quora
- What education is required to become a computer programmer?Best solution by Yahoo! Answers
- How good do you have to be at math in order to be good at Computer Science?Best solution by Yahoo! Answers
- Is being a programmer a good career?Best solution by Yahoo! Answers
- Where can I find a good freelance programmer?
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.