"Once you realize that computing is all about constructing, manipulating, and reasoning about abstractions, it becomes clear that an important prerequisite for writing (good) computer programs is an ability to handle abstractions in a precise manner. Now that, as it happens, is something that we humans have been doing successfully for over three thousand years. We call it mathematics.
This suggests that learning and doing mathematics might play an important role in educating future computer professionals.
"
The conclusion is not good. The logical conclusion would be that if we define mathematics as 'handling abstractions in a precise manner' then programming is part of mathematics.
In this case his conclusion becomes:
'learning and doing some classical parts of mathematics might play an important role in educating people who will do this another part of mathematics'
Which might be true to an extent, but this statement is very broad.
It is not a question that some amount of math is helpful. But after a while there are diminishing returns, because you simply learn different skills than what you need.
After having some very basic math knowledge the best strategy is to try to learn a lot of practical 'engineering' from very good books/courses, and only go back to math on-demand.
For example if you want to have some knowledge on machine learning or computer graphics, don't start to learn math for years first and then start learning about machine learning/3d graphics. Start to learn abut the engineering field first (take Andrew Ng's coursera class, or some equivalent in 3D graphics) and only go back to learn some linear algebra or very basic calculus after you see why it will be useful and to what degree you need it (you mostly don't need most of the theorems if you are learning the basics of these engineering fields).
Being an engineer is very different than being a mathematician. If you want to be a good engineer then mostly learn a lot from good engineers (or researchers in the engineering field) and learn some math along the way, but that will be secondary in my opinion.
It's good to learn tons of math, but only if you learn even more engineering besides the math (to be a good engineer).
His words: This suggests that learning and doing mathematics might play an important role in educating future computer professionals.
Your words: some amount of math is helpful.
Do you not see how these are the same idea, abstractly?
Also,
"if we define mathematics as 'handling abstractions in a precise manner'"
That IS the definition of mathematics. The author is not arguing for more calculus. His background is mathematical logic which is a standard course before all "real" math (analysis, topology, abstract algebra). All of these subjects handle abstractions in a rigorously precise manner.
But if programming (computings as he writes) is handling abstractions and math is handling abstractions then programming is math and the argument that we need to do more math is unclear. We could just do programming, he wrote that it basically is math. He needs to be clearer in what kind of math he thinks would be helpful to programmers and why it would help more than "normal" programming/computing courses.
> He needs to be clearer in what kind of math he thinks would be helpful to programmers and why it would help more than "normal" programming/computing courses.
The conclusion is not good. The logical conclusion would be that if we define mathematics as 'handling abstractions in a precise manner' then programming is part of mathematics. In this case his conclusion becomes:
'learning and doing some classical parts of mathematics might play an important role in educating people who will do this another part of mathematics'
Which might be true to an extent, but this statement is very broad.
It is not a question that some amount of math is helpful. But after a while there are diminishing returns, because you simply learn different skills than what you need.
After having some very basic math knowledge the best strategy is to try to learn a lot of practical 'engineering' from very good books/courses, and only go back to math on-demand.
For example if you want to have some knowledge on machine learning or computer graphics, don't start to learn math for years first and then start learning about machine learning/3d graphics. Start to learn abut the engineering field first (take Andrew Ng's coursera class, or some equivalent in 3D graphics) and only go back to learn some linear algebra or very basic calculus after you see why it will be useful and to what degree you need it (you mostly don't need most of the theorems if you are learning the basics of these engineering fields).
Being an engineer is very different than being a mathematician. If you want to be a good engineer then mostly learn a lot from good engineers (or researchers in the engineering field) and learn some math along the way, but that will be secondary in my opinion. It's good to learn tons of math, but only if you learn even more engineering besides the math (to be a good engineer).