This morning my daughter told me that she did well on a spelling test, but she got the easiest words wrong. Of course that’s not exactly true. The words that are hardest for her to spell are the ones she in fact did not spell correctly. She probably meant that she missed the words she felt should have been easy. Maybe they were short words. Children can be intimidated by long words, even though long words tend to be more regular and thus easier to spell.
Our perceptions of what is easy are often upside-down. We feel that some things should be easy even though our experience tells us otherwise.
Sometimes the trickiest parts of a subject come first, but we think that because they come first they should be easy. For example, force-body diagrams come at the beginning of an introductory physics class, but they can be hard to get right. Newton didn’t always get them right. More advanced physics, say celestial mechanics, is in some ways easier, or at least less error-prone.
“Elementary” and “easy” are not the same. Sometimes they’re opposites. Getting off the ground, so to speak, may be a lot harder than flying.
I feel like this applies to programming as well. I’m rewriting a Rails project in Node. So, none of the higher-level aspects of re-writing it are difficult—it’s just learning all the idiosyncrasies of Node that takes time.
I am taking a BA in CS and we have had introductory courses in Standard ML and Discrete Mathematical Structures, now we have Object Oriented Programming in Java and Linear Algebra.
Linalg is arithmetic, only more of it, and almost everyone has done imperative programming before.
-John D. Cook
I feel like this applies to programming as well. I’m rewriting a Rails project in Node. So, none of the higher-level aspects of re-writing it are difficult—it’s just learning all the idiosyncrasies of Node that takes time.
See also: Inverse Speed.
Very, very true in mathematics.
I am taking a BA in CS and we have had introductory courses in Standard ML and Discrete Mathematical Structures, now we have Object Oriented Programming in Java and Linear Algebra.
Linalg is arithmetic, only more of it, and almost everyone has done imperative programming before.