![]() |
I suck at math, how do I get good at programming?
Any advice?
|
Don't work with graphics ? Don't do math ?
Or ... Don't program ? :) I suck at math, and I get by. |
Umm, learn some math?
Seriously, mathematics is not a requirement for software development but it can really help. Even in programming fields that are not math intensive (there are some where mathematical knowledge is absolutely necessary) you must still abstract problems and solutions, which is all that math really is... |
I've never once needed math in the entire span of my programming career (8 years or so) aside from when I wanted to dabble in 3D graphics.. like rotating cubes and stuff.
|
Math is required for many advanced Computer Science topics. Many claim that the only reason you'd need it would be for 3d graphics... I disagree.
You need it for all of the following, and probably much more that I won't list: Optimization - if you want to optimize something - ANYTHING - then you will, 99% of the time, need the math and CS theory to do so most effectively. For example, if you want to create a priority queue, if you don't use math you will most likely only get an insert of O(n), whereas with basic CS theory you can get an insert of O(log(n)). Data structures (even unoptimized ones) frequently have a strong mathematical basis for their implementations. Compilers... I don't think I need to explain this one, but I will if anyone wants me to. Logic in general requires a mathematical basis, especially for boolean algebra, finite automita, push-down automita, context free languages, turing machines, proofs of any kind, counting sets... you name it. Statistics, a branch of mathematics, is also used widely in programming and analysis of programs. I don't see how someone could survive the programming workforce and get snatched by a well-paying company without a good basis in mathematics. You need to be able to work well with all the things I listed. As for not being good at math - for many, many people, I find that they aren't "good" at math simply because they don't like math. Math takes a good deal of concentration and training to do really well in... it doesn't come "naturally" to many people, even if they claim that it does. I would like to see someone who is "naturally" good at math solve some calc equations without the 10 years of school training beforehand with basic math, algebra, geometry, trig, etc. My advice to you is that if you want to be a serious programmer then you should most certaintly learn the mathematics behind computer science theory. Edit: I'd also like to mention that if you want to do any computer engineering - specifically things to do with the hardware behind computers, you will most certaintly need a very good backgorund in mathematics, physics (needs calc), and circuits (needs calc). And even if you don't want to make a career out of comptuer hardware, it is a very good idea to understand it if you want to do comptuer programming. |
Quote:
Of all the programmers I've ever known and worked with, only ONE had a degree and really any math experience past Calc... and I've known a lot. I'm 23, but I've been working as a programmer since 16/17. I know a lot of people say you need math, but honestly, you don't. Again, depends on what you do, but I've made quite a large amount of solutions using all kinds of different languages.. Java, C++, C#, ASP, PHP, XML/XSL etc.. and I've yet to see a need or requirement for formal training in mathematics. For example, you could write an SMTP/POP3 server, IRC client, query data from a DB, implement a DB structure in general, reporting on data, user/data interaction, etc... (and believe me, the list can go on and on and on) those don't require math to do efficiently. |
Certain projects may not *require* a math background to do efficiently, but there are many, many that will; try implementing a dynamic programming reccurance (ie, create an optimized BST or solve the assembly line problem) without a mathematical background. Any compression or encryption algorithm will require a mathematic background -- for example, RSA encryption/key generation or Base64 encoding.
In fact, almost any advanced algorithm (ie, not selection sort) will have a strong mathematical basis. |
dont make programs that deal with banking/finance, piloting vehicles. launch codes ect. stick to other things.
|
I've been programming for years, and I suck at math. It's weird because I'm great at thinking in terms of structured logic (crucial for programming), but when it comes to arbitrary numbers I'm lost. :)
Fortunately, it is rare to need to know anything beyond arithmetic and some basic algebra. I did one project involving mapping that involved some trig, but I was able to find all the formulas I needed thanks to Google. |
Quote:
|
Well, those that advocate the skills of math are likely programming at a far lower level than many of us. I am not able to build my own compilers or question if the makers of my tools made them memory efficient enough. But I don't feel I have to to make quality systems.
I have worked with programming for about 15 years and though I liked math I graduated at 19 years old, so that level is low. When building administrative systems the math just doesn't get hard, except in rare cases of statistics and such. So your math skills will not affect the quality of the work you are able to do, you just have to stay away from some rare tasks. I have built a number of insurance systems for insurance companies and fund managers and such. No problems with math there. And I build great systems! Usually the actuaries at the insurance companies uses Excel for their statistical analyses and they will supply their formulas, if needed, for the systems. If you want to get into programing and fear the math, go for it anyway. There are many fields where it is not needed and you learn along the way. Stay with high level tools and applications and your fine with basic understanding of math. But Rangsk is right, if you work for the company that developes the database engine I use in my systems, then I hope you get your math right! |
Well, I'd strongly recommend you to get more math. Simply because if you have strong background in mathematics, you'll have a better chance of being hired by companies compared to those programmers that don't have a better background in mathematics.
When it comes to data structuring, almost, and ALMOST all companies stress on efficient and less time consuming algothrims. There is a notion called The Big "O" Notation. The whole big "O" concept relates to the efficiency of algothrims. When you're designing alogthrims, the Big "O" helps you to find the efficiency of it. In my opinion, it deals priminarly with logs, linear equatations, pretty much anything you learn in grade 10 math class. In my experience, I have no problem designing efficient algorthms (Although, there's been couple of cases where I suck) simply because I had calculus, statistics, linear mathematics and matrix systems. In one simple sentence, if you want something to help you in the long run, go for math. Leaving it behind will only make some things harder for you. |
Well I'm a web developer. What kind of math should focus on?
|
"Well I'm a web developer. What kind of math should focus on?"
This kind... Results 1 - 10 of about 74,100,000 for porn [definition]. (0.17 seconds) Thats a lot of numbers... now I'm no math whiz, but thats web programming that I understand.... |
All times are GMT -8. The time now is 12:45 AM. |
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Optimization by vBSEO 3.6.0 PL2
© 2002-2012 Tilted Forum Project