3 ms·
Math is rarely necessary for software development. However, math is one way great engineers distinguish themselves from okay engineers. I work primarily on aud
by mgraczyk 10y ago
Math is rarely necessary for software development. However, math is one way great engineers distinguish themselves from okay engineers.
I work primarily on audio software. Linear algebra is most important, followed closely by signal processing. Those are sufficient to write good software. Great software requires statistics, calculus (mostly for optimization but also modeling), and discrete math (again mostly for optimization). Other specialties probably require more discrete math and less linear algebra and signal processing.
- TeMPOraL 10y ago> Math is rarely necessary for software development. However, math is one way great engineers distinguish themselves from okay engineers. I recently realized that math is not necessary for programming... if you want to be stuck doing boring stuff like webdev or CRUD apps.
- seanmcdirmid 10y agoAbstract reasoning is necessary for programming. We typically develop those skills doing and applying math, but it is an open question if abstract reasoning is math. Also, there are many kind of maths, the Europeans even get this right over the Americans by making it plural. Math is necessary is like saying things are necessary...which thing? It really depends on what you are doing, and experience with a known field of math might not be useful for some problems (beyond the abstract reasoning you need to write code at all).
- sp527 10y agoApplies also to mobile, DevOps, and data engineering. Take the average ~$150K SV software engineering job and you don't need continuous math (just discrete to get in the door and maybe once every 6-12 months after that, when an interesting problem arises like some kind of divine salvation).
- segmondy 10y agoPeople that don't know math just reinvent it poorly. A lot of people use databases, and their SQL query with joins is performing set operations and they have no idea it's math. If You gave them the same dataset in an array, they wouldn't use a Set collection to solve it, but would loop over the dataset multiple times plucking what they need.
- nekopa 10y agoThis is another reason why I would like to improve my math skills. I sometimes sense that there would be a much more elegant and efficient way to solve a problem if I could apply some math theory to it. 2 examples: 1:When I try to learn a new language I try to work through some of the problems on project Euler. I'm always impressed by some people's one line math solutions to something that took me 50 lines of code. 2: I once try to implement a timetable scheduling Web app (matching available teachers to courses) I could see that a solid understanding of set theory would have allowed me to - a: reason about the problem domain more easily and b: find the best way to set up my SQL queries.