(Hedy Lamarr was definitely not bad at math.)
Like many, many UX designers, I came from an artistic/graphic design background: I started drawing when I was able to mimic the action of putting pencil to paper.
Though, unlike most programmers/engineers/developers:
I could not grasp math concepts to save my life.
Even though I was happily hacking away at my little patches of web real estate in the late 90s, that little fact of life, that very flaw of my existence plagued me.
Rather than ask for help, I accepted my fate.
As a result, I kept barely passing or even failing math test after math test.
You had to be good at math to work with computers, right?
I had no future as a programmer.
But since I liked working on my sites, drawing, and had some school shirt design requests, I considered graphic design as a profession-- but I believed that I had no right to:
I believed I was not good at drawing or design, either.
Thanks, depression!
I waffled throughout high school and college about what I wanted to do with my life.
I dropped out of a formal college and attended an art school for motion graphic design.
I still believed I wasn't good enough, so I dropped out of that.
I went to beauty school, finished, got my license and worked at a few spas, grew to despise the beauty industry, and ultimately left to run a gym.
Something about working behind a counter peddling gym memberships or eyebrow wax punch cards simply did not sit right with me, though;
Despite everything, I knew I wanted to do more.
Despite battling depression, I believed I could do more.
At the gym, I was surrounded by techies (Berkeley, who knew?). One of the part-time instructors (who is still a full-time devOps engineer) encouraged me to consider UX design as a career.
"But doesn't that involve math?"
"Nope."
"But I suck at designing."
"You re-designed the entirety of this gym's branding."
"...okay so where do I start."
I chose to go through a university program, but with an emphasis in web development.
I could've easily attempted another go at graphic design.
But I was determined to learn how to code.
I went through real programming classes and survived. I learned Vanilla JS at first, then Python, then Angular and jQuery, SQL, and PHP.
This was my final project. (Coded in Angular JS in 2016)
In high school, I graduated with a 2.3 GPA.
I finished college with a 3.9 GPA and was named Salutatorian.
I still had to take math, though. But I did pretty well!
(In fact, I actually got an A! The only A I have ever received in a math class ever!)
...but I still have trouble adding up plates on a barbell.
I even made a stupid comic about it.
I'm working at a big-name company now, using what I know as a developer and as a designer to improve designer-engineer communication.
I'm also practicing and sharpening my skills through the Enki app, and trying out freeCodeCamp, Udemy, and Team Treehouse classes.
If you believe, you can achieve.
Questions:
- Do you need to be an expert at math to be an impactful developer?
- Will knowing advanced math concepts make you a better developer?
Oldest comments (40)
I'm quite bad at math but I would love to be better at it. I believe it is not a must-have skill but it is a nice-to-have skill.
Depends, you don't need it to be an impactful developer in a field like a frontend development but if you want to work in a field like AI and be impactful then you should be pretty good in some fields of mathematics such as statistics. I would say that math is going to actually be more important in the future as big data and AI become more popular.
You don't need maths all the time but if you know maths you will be more flexible. You will be able to understand for example graphic engines, maybe that is not your thing but it is normal to encounter situations at work in which you have to work on something that is not your thing. If you know math there will be a bigger number of things that you can do. You will be more flexible and for a company being flexible is a good quality.
Thanks for answering my questions!
Okay, so I will buckle down and actually try to learn essential programming math concepts. What would you recommend and where should I go to learn such things?
No problem, I would try to search for books like:
But I would not focus on the math first, I would focus on programming first because I enjoy it more and will keep me more engaged. Then I would only try to learn maths when I actually need them for a reason (e.g. I don't understand something). In that case, learning math is not so bad because you actually get why you need it. It is very hard to learn maths when it seems useless.
When it comes to most frontend interviews you need to really know about the data structures in JS. Algorithms aren't too complicated. Read these books and you'll be set. The first two are great if you already know the super complicated stuff in javascript, but the last book really helps you retain all that knowledge. Check them out!
Also the first two books are available online for free!
amazon.com/You-Dont-Know-Js-Book/d...
amazon.com/Eloquent-JavaScript-2nd...
amazon.com/Smarter-JavaScript-tech...
I knew I was missing something. I ran into a wall while on freeCodeCamp, and was very discouraged when I simply did not know where to start when it came to the Basic Algorithm Scripting challenges. I saw the solution and thought, "Goddammit I couldn't even think of that in a million lifetimes."
I need to invest some time into learning them. Thanks for the book recommendations!
For sure, keep up the learning.
Got problems with math... lots of.
Anyway, you're right, but dont't let the If you believe, you can achieve. chose for you.
Sometimes, also being an analytic person, can help.
I mean, believing in myself does take part in being an analytical person. If I believe I am an analytical person, then I can do it. It's just the way I work.
I kinda put the whole, "I suck at math" phrase in the trash during that math course so that I could focus on understanding the concepts.
Mindset. It's all about mindset.
Hedy Lamarr was the ultimate woman. But you don't to have her math skills, just the spirit and determination she had.
As Bruce Lee says, the successful warrior is the average wo/man with laser like focus.
Big Bruce Lee fan over here. Thanks for the quote!
I don't think you need to be a math whiz to be an effective programmer outside of a few advanced areas like AI, some types of engineering and applied sciences or quantitative finance. In general, I think having a well rounded education will serve you better than a highly specialized one in most cases.
The big advantage of knowing advanced math is going to be mostly in the interview process. It's likely you may be asked math algorithm questions even though the position might actually involve designing web sites or generating reports. Silly, but that's the way many companies do interviews.
For interviewing, what should I be learning as a web developer so I can at least have focus on the subject?
When it comes to math, the two most common ones I've encountered are primality tests and Sieve of Eratosthenes. There are several coding sites around where you can get examples of how to do them and other common ones.
I wouldn't use these kinds of questions myself in an interview for a front end web developer though. I'm more interested in having a conversation about your design ideas and the strategies you used and would use in building the front end of a site.
I have never heard of either of those. Yikes.
But I'll look 'em up anyway.
Front-end web is what I'm looking for, anyway. But it wouldn't hurt to have some developer math in my toolbox.
Thank you, again!
The only reason you'd ever use these is for a job interview, so it's no wonder you haven't heard about them.
...Yes? I haven't interviewed as a developer before??
I have the base education in development, but stuck with what I know, and now I'm a UX and UI designer.
I have an interest in development.
No need for condescension, pal.
DamirTomic, this comment was not constructive and we agree that it was condescending. So this is a warning. Feel free to email me ben@dev.to for further clarification of our expectations with regards to the code of conduct.
@Cat Carbonell that's not what I meant.
Let me rephrase: Algorithms that work with prime numbers are primary used in cryptography. And since less than 1% of developers work on cryptography, the chance of encountering such an algorithm during everyday work is highly unlikely.
But you could encounter them in an job interview.
That was a critique of the interviewing procedure which asks totally irrelevant questions and not you.
"Will knowing advanced math concepts make you a better developer?"
Probably a better paid one if you become a consultant and go into special stuff like crypto, graphic or AI.
But I'm rather bad at math too and make good money, so why bother ;)
I'm more like a "hey this looks pretty, look at it bounce!" type of developer.
Simple algebra, I can do.
Data science-- I'm screwed. hahaha
"If it ain't broke, don't fix it!" as they say.
Enki app? I'll have to check that out. I'm rubbish at the maths, and yet I'm attracted to it. It's become sort of a hobby. When I can swap out a bunch of lines of code with a single equation, well as I said I'm rubbish so that's very rare. But when it happens it's very gratifying. When faced with something you can't do, just tell yourself what I tell my daughter: you can't do it yet.
I love that. I will repeat that in my brain chamber. Repeatedly. Forever.
Thanks!!
And yes! It's a great app to refresh the memory about concepts and learn some current industry standards. :)
I would say frontend is probably the area where you need math the least. But as soon as you want to enter the world of algorithms of data structures you will need maths. I think your problem is confidence, since you got an A you probably have what it takes to learn math easily so I encourage you to do it because what you gain out of complexity and randomized algorithms is really important in my opinion. In the worst case it will only open doors
Yeah, I've always had a confidence problem-- even though I have a developer background, coding wasn't actually my strength. I learned the basics, yes, but I feel like it wasn't enough. I am definitely focusing on becoming a (better) developer now.
This post impressed me so much. I'm glad you overcame your weaknesses! Your story is very motivating :D
Thanks, I'm glad you enjoyed the post!
I know what you're talking about, I've been in a similar situation as you.
Thank you for post about this!. Btw, I also like SoloLearn app.
I'm glad you enjoyed the post! I'll check that app out. :)
SoloLearn rocks!
I'll come at it from the other side:
This is going to come off as bragging, but please read to the end: I used to rock at math. All through grade school up to when I finished undergrad in computer science and electrical engineering, math was my strongest subject, bar none. I was seriously one of those for which an A was given, I was shooting for 100%. Calculus and differential equations: it was as natural as adding.
Has it helped? Not a really a damn.
In fact, my math skills have plummeted in the 7 years that I've been paid to be a software engineer. Anything beyond times tables and dinner tip calculation means I'm reaching for my calculator.
But here's the secret: it doesn't matter. Math, at least as most people think of it which is solving equations, is not what programmers do. Reasoning and Logic matter. Often they're the same skill for many people. I'd say that my mathematical intuition fostered good reasoning skills. Even when the math fell away, the reasoning stuck.
The math used in programming is very different from what you had in grade school or in calculus.
Here's the math I use often now:
Yes, there are many places where math is incredibly important but you probably don't need them to do most website, app, server or UI/UX work.
I wish you the best and hope that this has helped!