I don't think that's true. And I'll say something controversial. Programming is taught more effectively than math and its because you don't spend a lot of time mind-numbingly repeating the basics.
Half the people on HN recommend teaching with Python for just this reason.
And think about it, when you teach programming do you make your student walk through what every instruction does? When I learned recursion, I walked through fib(n) by hand -- once. That's the sum total of how many times I've done a full hand expansion of a recursion in my life. How many times have I run a full program on paper with the substitution model? Never. How many times have I iterated even a small loop by hand? Never. These are concepts that I understand as well as anything that I know, yet I've never "mind-numingly" worked through them by hand.
A lot of traditional math teachers want us to sit down with an instruction pointer, stacks, heaps, physical/virtual pages, laid out and have us repeatedly simulate program. That's really the mathematical equivalent of doing this rote computation. I say teach them the concepts and give them interesting and challenging problems that make use of the concepts. The concepts will stick better, they'll learn faster, and they'll be more engaged.