DEV Community


Discussion on: What Are the Most Important CS Principles to Learn as a New Dev from a Non-Traditional Background?

srleyva profile image
Stephen Leyva (He/Him)

I’d disagree a bit. Time complexity doesn’t necessitate an understanding of advanced mathematics for you to use it practically. While it helps to understand quadratic and exponential complexities, it isn’t necessary. Additionally, understanding a data structure and algorithmic efficiency in certain circumstances doesn’t necessitate advanced mathematics. If you’re building a physics engines or building neural networks, sure. I’ve worked with software engineers who understand data structures and algorithms on a deep level who weren’t so good at advanced mathematics. It comes down to right tool for right problem and being able to discern what that tool is. While admittedly those with mathematics background have an advantage, I wouldn’t say it’s required.