I enjoyed this post a lot because I traveled the opposite path. I started out in computer science with little interest whatsoever in math all through high school.
Then when I got to college they introduced the notion of "program correctness" where you tried to prove, mathematically, that your computer programs were correct. This convinced me that computer science was simply a knock-off approximation of mathematics and I drifted away from it.
From your derivative example above I’d say it is this inexact nature of computer science that you especially like. Different strokes for different folks, I suppose.
It's not "different strokes," it's a change of perspective causing massive confusion all 'round. Computer science isn't a knock-off approximation of mathematics, it's a subfield of mathematics. Programming, which is what the post is talking about, is a third thing. The derivative is the inverse of the indefinite interval (and has the same arity), but the function he refers to computes a definite integral which is not the same thing. Etc.
Confusion about this stuff is a sign that you didn't really understand it the first time. Believe me, I've been (am still) there...
There is even more confusion out there.
Think of abstract algebraic structures.
Who needs groups?
No one. Until one realizes that certain simple equation transformation rules are not based on natural numbers, or real numbers but on groups. Once something like that clicks in your brain, you can suddenly solve weird equations with sets and symmetric differences, or bitstrings and xor's or other pretty akward things which looked really scary earlier.
Who needs rings and semirings?
No one, until one realized that a certain algorithm requires a structure... and this structure is a semiring! Thus, if one can prove that two operations and a set form a semiring, you can apply this algorithm without any effort, because it will just work! :)
Or, even more. Who needs the theory of katamorphisms, Anamorphisms and such? No one. Until one realizes how beautiful recursive datastructures are and how easy it is to program them once you understood the idea behind them (Check http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.41.1... for a nice paper about this)
Who needs integration (besides those numerical people)?
No one, until one realizes that any simulation, most iterations and such are discrete intergrations in very, very akward and convoluted algebraic structures.
Ach, I somehow wish I studied math before studying computer science by now.
Yeah, I tend to say "computer science" when I mean "theoretical computer science." To me there is a clear split between the stuff that's math/logic and the rest of it which I'm happy to lump under the catch-all of engineering (and don't feel comfortable labeling as any sort of science).
I'm not comfortable labeling the concepts behind operating systems, networks, computer architecture and programming languages as either math or engineering.
I think what he's getting at is that the math taught in high school and applied college courses isn't fully formalized, often isn't fully explained, and even (as taught) contains ambiguities. I was a math major (and took graduate level analysis, topology, and set theory as an undergrad,) but the applied math classes I took felt really rushed and confusing. I actually felt kind of lost and dumb in sophomore DiffyQ, and what's worse, I was surrounded by engineering students who were having no problems. I sometimes felt dumb studying Lebesgue integration and transfinite induction, but I never felt lost like I did in DiffyQ. It didn't feel like math at all; I loved math but hated sophomore DiffyQ.
My experience with math in school is that it was taught as if it were modern art: a bunch of meaningless procedures (up through calculus) and meaningless puzzles (beyond calculus).
If it were taught as providing some insight or serving some purpose, it might be a lot easier to learn and retain.
Then when I got to college they introduced the notion of "program correctness" where you tried to prove, mathematically, that your computer programs were correct. This convinced me that computer science was simply a knock-off approximation of mathematics and I drifted away from it.
From your derivative example above I’d say it is this inexact nature of computer science that you especially like. Different strokes for different folks, I suppose.