## DEV Community is a community of 862,249 amazing developers

We're a place where coders share, stay up-to-date and grow their careers.

Tiffany Rossi

Posted on

# I suck at math and learning Python rubbed it in my face

I've never been good at the exact sciences. I would have the highest grades in Portuguese and English, good grades in History, Geography, and Biology, and the worst grades in Physics, Chemistry, and Math.

But my school divided Math in a lot of different disciplines, and I'll do my best to translate each one of them (I have to do justice to my high grades in English, after all). I had classes of:

• Pure Math
• Statistics
• Financial Math
• Mathematical Logic
• Geometry
• Geometric Drawing

Statistics, Financial, Logic? Straight A's. Geometric Drawing was one of my favorite disciplines, I would love anything that allowed me to draw in class without getting in trouble. I began to understand Geometry once I realized how to "see" the formulas through the shapes, and the Geometric Drawing classes helped me through it.

But Pure Math... It never got into my head. I can make basic math operations quickly in my head, I learned how to use the rule of three and memorized Bhaskara, but that's all.

In Brazil, we like to say we are "exact sciences people" or "human sciences people". It sounds a lot better in Portuguese, I promise. The thing with the self-proclaimed "human sciences people" is that their brains can't do a simple operation without a calculator, like splitting a restaurant bill. So I have always referred to myself as a "human sciences person with a touch of exact sciences".

If you are bad at math and wanna be a programmer, I'm sure you have googled "do I need to be good at math to be a programmer" at least once. The results will tell you "Nah, you just have to be good in logic". Yay, check. Let's do it, let's learn how to code.

If you are poor like me, you then go and find a nice free online course. You hit that play button, the teacher starts talking and you're there, listening carefully and taking notes. I'm getting it! Yay again!

Exercise #1: write a program that adds two numbers. Okay, that's easy. x + y = n. Done.

Exercise #2: write a program that checks if a number is positive or negative. Well, negative numbers are smaller than 0, right? Okay, got it.

Exercise #3: write a program that calculates the body mass index. Is it your weight in kilos divided by your height times your height, right? Let's check Google to make sure of the formula. Okay, it works. Yay, coding is fun!

Exercise #4: write a program that receives n and prints n! (factorial). Wait, what?

You know when you're in school, the teacher speaks what sounds like gibberish to your ears, the whiteboard is full of numbers and symbols, and you can't help but think "to hell with Math, I'm never going to use that in real life"?

Well, when you're 28 and all your dreams have been shattered for a while now, you'll decide you wanna learn something new. And BAM! That's the moment when you will regret all the Math classes you lost because you were too busy drawing in your notebook.

So far, my experience is that you don't have to know math in order to code. But your learning path will probably be a lot smoother if you don't have to stop everything to research what the hell is this factorial thing and how the hell you apply that so you can finally go back to what you were learning in the first place.

I would love to have a fix for that, but this is a place for self-laughing at my own misery, bad quality GIFs and sharing my experiences while I learn how to code. I don't believe in karma, but maybe it will help me if I give a call to all of my Math teachers and let them know I'm sorry?

## Discussion (9)

Max Ong Zong Bao • Edited on

You don't really need to be good at math to learn Python. I'm not good at it as well.

You might need it when your doing data science work but that depending on which type of way you learn.

I'm more of the kind who is a visual learner who works with my hands. So I tend to ignore theory or math unless it links with real life implications of what I'm doing or what I'm gonna do which I need it to get things done.

Tiffany Rossi

Thanks for sharing! I learn the same way as you do, and I'm doing a decent job at it when it comes to actually coding. But the course I'm using has lots of exercises using math and I get stuck every single time. I still believe you don't need to be good at math to learn Python, but even though I wish I had paid a little more attention to my math classes :D

Buom dia!

In Brazil, we like to say we are "exact sciences people" or "human sciences people". It sounds a lot better in Portuguese, I promise.

How do you say it in portuguese? :P

I began to understand Geometry once I realized how to "see" the formulas through the shapes, and the Geometric Drawing classes helped me through it.
But Pure Math... It never got into my head.

Would that help if you learn pure maths with more visual supports?

There is a great channel on Youtube:

3blue1brown, by Grant Sanderson, is some combination of math and entertainment, depending on your disposition. The goal is for explanations to be driven by animations and for difficult problems to be made simple with changes in perspective.

Personally I have been stuneed by how well 3blue1brown explain neural networks

Tiffany Rossi

First: Thank you so much for the channel recommendation! Yes, visual supports are awesome for my understanding! I can't believe I'm now excited to watch some Algebra videos lol

In PT-BR slang you could say you're "de exatas" or "de humanas". It's an ongoing meme, and "de humanas" people always make fun of themselves and their innabilities with numbers. I don't know about the "de exatas" people because everyone I know happens to be on the human sciences side of life :P

I had a similar situation. A year ago I had more problems with algebra and I really wanted to understand how to use all those formulas correctly and where in life and at work I might need them. I will not say that I use what I have taught constantly, but this knowledge will definitely not be superfluous for me. I constantly turned to plainmath.net/secondary/algebra/al... for answers and explanations, because there are a lot of ready-made examples. You can also turn to an expert there, if no one has answered a question yet. This resource helped me a lot to learn algebra better.
Thank you very much for sharing your story with us!

Pavel Morava • Edited on

Nice article.
I strongly recommend going through checkio.org. Real world, framework based, applications may mislead you into thinking that mathematics is not necessary. This is a grave mistake, mainly in today world where machine learning and cryptography gains more and more attention.

I've written several articles advocating mathematics for programmers, the recent one is here.

One of the best programmer I've known personally, author of famous 100 days of algorithms, has studied mathematics extensively.

Do not trust anyone who tells you that math is not necessary.

Tiffany Rossi

Thanks! It's good to read different points of view when you're diving into a new world. I'll definitely check your articles and learn more from you. Also, thanks for recommending Checkio! I'll give it a try. I tend to prefer more sober methods to learn (my mind is already messy enough π), but maybe gamification will help me develop some skills I'm missing.

Kalaiarasan Pushpanathan

Usage of Math depends on your field of work. I have not used anything other than basic Math for my job. But if you are in data science, then I guess you better start getting serious :D

Tiffany Rossi

I'm into AI, I found several opinions but I'll probably have to go back to the basics. It's been 11 years since I graduated from high school, my brain HD has self-deleted all of my school folders lol. Thanks for commenting!