How much math do I need to be an effective coder?

I’m just wondering this because I’m trying to patch together a decent portfolio, but I don’t have a strong math background. I’m looking to improve my math background before I apply for jobs. I was a writer before this, so it’s a bit of a culture shock.

What would you guys suggest?

I think that depends on what you mean by math?

I think a coder needs basic arithmetic. Understanding basic algebra will be helpful with variables and formulas, but still pretty basic stuff. If you want to do intense graphics work then you’ll need some geometry a trig. You’re not going to need any calculus.

Just work with what you have. Brush up on your basic math. Work through all the basic operators in JavaScript. Other than that, just work though coding problems and anytime you run into a math concept you don’t understand, look it up or ask. You can learn.

If you want something more proactive, check out things like code wars or hacker rank to work on algorithms. Or seek out math/logic puzzles.

1 Like

Well, specifically I was wondering if I needed anything past Vector Calculus. My husband is a Data Science major, so he volunteered to teach me everything I need to know while I learn how to code.

I … guess I was overthinking just a bit.

I guess it really depends on the branch of coding. If you’re doing Data Science, then I imagine you’d need some heavy math. And of course there are some areas where you’d need some statistics. I imagine that if you were working with signal processing, you’d need some differential equations and Fourier analysis.

But you are on a site devoted to web development. For most web development work, having gotten to vector calculus is more than enough.

But I would expect that anyone with basic algebra and geometry should have enough for most web development. The only other thing I would think would be a general inquisitive mind, a mind for puzzles and the ability to visualize problems. But this (like everything else) can be developed with work.

1 Like

You should be good at inequalities. Boolean expressions are a pretty big part in programming, and problem solving skills are pretty important. You also need to know how to do discrete math, which is actually not that hard once you understand certain principles.

It depends. It seems easy to say that if you’re only doing front-end web development, then you should be fine with geometry and algebra - but most people are exceptionally weak at algebra (my partner teaches college math and you do not want to get them started on this) and “geometry” includes basic trigonometry. (Real world example, last week I had to dust off these skills to calculate the angle of rotation for an endpoint on a line – creating a custom arrow that is pointing the right way. There are all sorts of resources to help me remember how to do that, but understanding the math became a job description.)

Resource usage is a constant concern in programming, so being able to correctly assess time, space, and computational efficiency is an everyday math-ish concern – and of course being able to plan your algorithms to optimize efficiency.

It’s not so much that programming requires math (although I would argue that it involves a very similar way of thinking and problem solving), but so many of the problems that programming is applied to involve math. So, it depends.

TL;DR - It’s not that you have to know specific areas of mathematics, but the better you are at math overall the more success you’ll probably find as a programmer. (But not directly proportional imho)

1 Like

Go to khan academy, you can learn anything

Some of the khan academy math classes are very good but some of them are very very bad.

Are there any specific ones you can remember that you would recommend avoiding?

My husband works as a math teacher/tutor right now. He’s probably going to teach me the math I need.

I’ve gotten up to Precalc 1, so I should be able to learn Discrete Math in short order.

If what you mean by coding is writing source code, testing, debugging, etc. then you don’t need any math.

On the other hand, if we’re talking about design and analysis of algorithms, theoretical computer science, AI, the theory of computation, or any other advanced topic in CS, then yes - there will be math!

Now, at some point, you’ll need to dive deeper into algorithms and data structures. In which case, you’ll need some working knowledge mainly in differential calculus, basic set theory, basic graph theory, and basic algebraic number theory.

1 Like

I would think, generally, the more the better. Since Math is the foundation of science, and more precisely mathematical logic is very closely related to computer science theory of which algorithms, where coding is merely just the implementation of, is just one part.

For front end web development basic math skill are enough, game development on the other hand does require a lot more math knowledge.

I’m looking to do full-stack. What would you recommend there?

I really think you’re overthinking this. If you’ve gotten to precalc, then you have what you need.

In terms of actual math, other than rudimentary arithmetic, you mainly need to understand functions and maybe some basic set theory. But you’ve had all of that.

Other than that it’s more about being able to visualize the problem and solution, understanding algorithms. Some people have an innate ability for that, but everyone can learn. But it’s something you’ll get from doing it.

As a guitar teacher, I get a lot of people asking me, “How do I strengthen my fingers for guitar?” They see all these crazy gadgets in magazines or think there are some magical exercises. My answer is always simple, “Play lots of guitar.” There is no better way to strengthen those exact muscles in that exact way.

So, how do you build the math skills you need for coding? Just code. You will learn as you go. A lot of it you already know. Some of it you will intuit. Some of it you will learn heuristically. Some of it you will need to research. But just code and learn. There is no book called “Math Leecatjones Will Need to Learn Coding”. Just code and learn. If something confuses you, check google. If that doesn’t work, come ask us. But it is impossible for us to come up with a list of everything you need to know. You’ve got to figure that out for yourself. But when you find a hurdle we’ll be more than happy to help you out.