In the small amount of teaching I've been doing over at The Bartlett's MSc Adaptive Architecture and Computation, I've emphasised the need for programmers to be fearless symbol manipulators, fearless text editors - much as students well-schooled in calculus become fearless with algebra and equations, and students well-schooled in drawing become fearless sketchers and draftsmen. Once you're literate in coding constructs (variables, loops, conditionals, data structures, etc.) they become a framework on which you can hang your ideas - the real work if you will.
Neal Stephenson's Isaac Newton is a parametric modeller, a master of bottom up systems. He doesn't care for constructing geometries where he can generate them. Furthermore, his discoveries are powered by his effortless, fearless manipulation of algebra:
"In explaining why those curves were as they were, the Fellows of Cambridge would instictively use Euclid's geometry: the earth is a sphere. Its orbit around the sun is an ellipse - you get an ellipse by constructing a vast imaginary cone in space and then cutting through it with an imaginary plane; the intersection of the cone and the plane is an ellipse. Beginning with these primitive objects (viz. the tiny sphere revolving around the place where the gigantic cone was cut by the imaginary plane), these geometers would add on more spheres, cones, planes, lines, and other elements - so many that if you could look up and see 'em, the heavens would turn nearly black with them - until at last they had found a way to account for the curves that Newton had drawn on the wall. Along the way, every step would be verified by applying one or the other of the rules that Euclid had proved to be true, two thousand years ago, in Alexandria, where everyone had been a genius.Isaac hadn't studied Euclid that much, and hadn't cared enough to study him well. If he wanted to work with a curve he would instinctively write it down, not as an intersection of planes and cones, but as a series of numbers and letters: an algebraic expression. That only worked if there was a language, or at least an alphabet, that had the power of expressing shapes without literally depicting them, a problem that Monsieur Descartes had lately solved by (first) conceiving of curves, lines, et cetera, as being collections of individual points and (then) devising a way to express a point by giving its coordinates - two numbers, or letters representing numbers, or (best of all) algebraic expressions that could in principle be evaluated to generate numbers. This translated all geometry to a new language with its own set of rules: algebra. The construction of equations was an exercise in translation. By following those rules, one could create new statements that were true, without even having to think about what the symbols referred to in any physical universe. It was this seemingly occult power that scared the hell out of some Puritans at the time, and it even seemed to scare Isaac a bit."-- Neal Stephenson, Daniel Aboard Minerva, Quicksilver Book One pages 97-98.
Great stuff. Back to the book...