Do You Need To Know A Lot Of Math To Be A Good Programmer?

Do you need to know a lot of math to be a good programmer? I mean a lot of math and physic level that is at least grade 12 high school university or over. I have not tried game programming yet because I am still in high school. I am wondering should I take grade 12 high school university math and physic level because it might be too hard for me. My strength is being game artist but I am willing to learn computer science stuff for game programming too.

Do as much math as you can handle. You might not use it all, but a solid foundation in mathematics and the associated logic will be a huge boost for programming.

I know many programmers who are horrible at math. And they definitely do just fine.

But math definitely doesn’t hurt, and can do a lot of good.

Computers are built on the very logic of mathematics, and being able to understand it can help you in understanding whats going on underneath. Primarily with discrete mathematics.

And if you want to get into games programming, math can also be very helpful. There is quite a bit of geometry and trigonometry in my day to day life of writing code. As well as a good understanding of linear algebra as well.

But at the end of the day, you could learn the specific parts of these maths that you’ll need when you get to them. So I can’t say it’s required. Just that IMO it’s heavily suggested.

2 Likes

I wish I did more math/applied myself more at what i did

I am in high school and so far i have had no problems with programming / designing my games

2 Likes

It’s not actually that hard. There are 12 year old devs on the forums.

I agree with everyone who’s said strong high-level math skills are good to have but not mandatory. But to be a good programmer you have to always be willing to learn more math. You never know when you’ll need more physics for a space sim, or more statistics or linear algebra for an AI system. So that means nothing’s holding you back from making games right now, as long as you’re willing to keep learning whatever you need to get the job done.

Knowing how to write is just as important as knowing math. Half of programming is communicating with other people – or even communicating with yourself months after you’ve written the original code.

5 Likes

Advanced math is more if you want to do computer science stuff, like making fancy algorithms and stuff like that. A good understanding of geometry is very valuable, though.

1 Like

Some math is helpful, but I am a programming major and don’t use much math beyond pre-calculus level things.

Geometry is very useful in Unity; you don’t need to know all the formulas they teach you since you can look it up, but an understanding of geometry can make many problems not happen early on.

Understanding matrices is a must when it comes to arrays and such, and understanding the logic makes things easier, but you will probably never do any matrix math that you might learn in pre-calc.

Basically, understanding the concepts makes things easier, but actually being good with numbers isn’t important.

You have all the skills you need to start right now, and I definitely recommend trying out some of Unity’s tutorials and expanding on them. (The Unity Ball tutorial is particularly good because it’s really easy to expand on, but teaches you some of the basics!)

When I was in University I wasn’t studying Computer Science but hung around a few Comp Sci people and noticed that they weren’t really much into math classes as an auxilliary to their main study (which was a surprise to me). I took a few formal logic classes back then and, looking back, it seems a lot more analogous to the thought process I employ today when programming than any math class I ever took. All of those Comp Sci people took atleast one formal logic course if I recall correctly, but its not necessary at all to understand programming.

With that said, all programming involves some basic math. So if you have a grade 10 math level I would say that is more than suitable for most tasks. If you are doing something directly related to applied mathematics (statistics, systems, theoretical sciences) then yeah you probably should have a stronger grasp on the underlying math.

As far as Unity is concerned, most of the tricky math is already bound up in the physics engine so, lucky for you, you mostly just need to know how to tap into it rather than model physical behaviour from scratch.

See also, this discussion from not long ago.

1 Like

@eisenpony , I was about to link to that thread, you beat me to it!

Short answer: No
Long answer: it’s complicated and already gave my opinion on the linked thread…

Joke aside, you need a minimum of mathematics skills and knowledge to succeed as a programmer.
(which most people have)

You’ll be fine understanding add, subtract, multiply, divide.

You’ll be better understanding algebra, arithmetic and geometry.

imo

understanding logic trumps understanding math
google fills in gaps with math
failing that, forums really help with math

1 Like

As I said in that other thread, I was led to believe that computer programmers need to know calculus so I took it. Now 15 years into my career and I’ve never used anything past basic pre-algebra for programming. And I’ve long since forgotten the other 4 years of math. Waste of time really. I could have been studying a foreign language or something useful.

This depends on what you’re going to do. My general advice about maths is that no matter if you’re going to “use” it or not, you’re going to get smarter by studying it. Like, general smarter, not just maths smarter. You’re spending all of your time learning about logic and solving hard problems. That’s brain excercise right there.

Don’t study maths because you will “need it” for something. Study maths because it makes you a smarter person.

Also, thinking about algebra is pretty much exactly the same as thinking about programming. Linear algebra is helps you with using vectors. Calculus teaches you about how mathematical functions work, which is nice to know if you need them. Statistics helps you not make giant blunders when you look at user data. And so on.

1 Like

So, you only need extreme math, calculus and vectors and physic, when you are only making some kind of extreme science like electrical and computer engineering. Like making robots and electronic items.

But I do not really need those yet, because making games can be much more simpler.

It’s not so much about learning math, it’s about learning logic and how to think. Math teaches logic and problem solving skills.

On the same note, I use skills from Calculus and Differential Equations daily, to do things the right way. (I usually work on tools for fellow developers, but if someone isn’t doing this for you, you will have to do it. So it’s still relevant.) Math is extremely valuable, but the ability to to think logically, which is taught using math, is so much more important.

But don’t think that you can’t do things because you haven’t taken these maths, you can learn the math while programming, on an on-need basis. Programming will actually help you in math classes.

Oh man, I really want to do extreme maths now.

Another way of looking at it is in terms if the tasks you need to accomplish.

  • Do you know what a Vector is?
  • Can you figure out the distance between a character and an enemy?
  • Can you figure out if an enemy is facing the player?
  • Can you figure out a route between the player and the enemy?
  • Can you figure out the force to add to a projectile to take a desired trajectory?

When you can do all of the common tasks you’ll find in game development you probably have sufficient math.

1 Like