Today I read part of Mathematical People, a book of interviews with mathematicians. Here’s two that caught my attention.
Persi Diaconis is a magician-turned-mathematician: he ran away from home when he was 14 to “follow the wind”  as a famous magician’s apprentice. He liked magic but after several years found the life of a performer constraining because he was pressured to stick with the tricks that already worked, while his heart lay in finding new ones. 
He picked up a book on probability but realized that he needed to go to college in order to learn to read it, so he dropped his job as a magician to enroll in college. He has a special skill for finding math problems in the real world, especially problems inspired by his career as a magician, such as how many shuffles do you need to make sure a deck of cards is well-shuffled? He is motivated by concrete problems; when he finds one that’s interesting he will “follow the wind” to amass all the math he needs for it. He “browses” math journals in order to index in his mind tools that could be used to solve problems. Looking up things is a non-straightforward skill mathematicians need to develop; there should be a balance between looking things up and rederiving results.
He’s collaborated with many mathematicians: it’s good because often there is an expert in x and an expert in y, both x and y are needed for a problem, and no one is an expert at both. Mathematicians increasingly like to talk to each other, he said.
Math is like magic, he said, because both of them are problem-solving with constraints–and you want to execute the trick/proof as elegantly as possible. If magic were a serious academic discipline, he would be a professor of magic. Being a professor of statistics is the next best thing.
Donald Knuth is a key figure in computer science, the author of The Art of Computer Programming as well as Surreal Numbers, probably the only piece of math research ever to be written as a novel. (His is also the father of LaTeX.) He talked about what the viewpoint of a computer scientist is and why it is important to education.
There is “something to computer science other than the usefulness of computers,” he says: the viewpoint of CS can contribute to a person’s intelligence. About 2% of people are “natural-born” computer scientists, which he characterizes as meaning that they try to understand the world in terms of algorithms and cases, and helps give a “powerful model of reality.” (Of course, there are many other useful perspectives; for example the viewpoint of learning language is completely different, because language is much more chaotic than a field of science. Everything is an exception.) The development of CS gave a “home” to people who thought this way even before computers were invented.
A computer scientist is different from a mathematician because although they deal with abstraction and formulas, computer scientists are more adept at diverse case analysis (and getting the gritty details of how to make something work practically), while mathematicians focus more on a streamlined, uniform, and elegant theory. “You need both views [mathematical and CS], especially when you are learning a subject at first,” he says.
Why is computer programming useful for learning?
After you automate something the important thing is what you learned in the process, not really that the computer can now do a complex job… You really don’t know something unless you have taught it to a computer… You’re not allowed to say, now use some common sense [it’s hand-wavy]… That’s why I believe computer science impinges on education. If students can teach something to a computer, then you know they have got it in their heads.
Thus he recommends integrating the idea of programming into curriculum early: a teacher could say: “Here’s the way to add numbers and we’re going to teach it to this goofy machine[a simplified computer].” But because not everyone is born with a CS perspective, we need “people who are halfway between these modes of thinking [CS and other perspectives]” to help teach it successfully.. (Compare this with Minsky’s views on how we should break down the concept of intelligence to implement metacognition in students. See his essays on education on his webpage.)
How to learn math?
Learn methods, not results; learn how to derive formulas from basic principles rather than memorizing them. When reading math, “don’t turn the page until you have thought a while about what’s probably going to be on the next page, because then you will be able to read faster when you turn the page.” To write his massive series on computer programming, he had to survey the whole field which was very disorganized. Like Diaconis, he had to develop an ability to read a lot of titles and abstracts and “index” them in his head. When he had to learn a field with 60 papers, he would read two of them slowly–trying to figure out the problems before looking at the answers, learning the vocabulary and ideas–and the next 58 would go by much faster because he would know what to do. (See Slowing down to speed up.)
Some other quotes: “You cannot understand a theory unless you know how it was derived.”
“[Math] papers are weighed not counted.”
 cf. In The Wise Man’s Fear, Kvothe’s teachers tell him it’s good to take a year off to “chase the wind.”
 cf. Scott Young writes in his course on learning:
[One reason people hit plateaus is that] practice is not separated from performance. Performance is the concert, practice is the drills to get the chord sequences perfect. In music and athletics the division between performance and practice is well known and understood. But it other domains this important distinction is ignored.
Consider programming as a job. You might write code 8 hours a day, but that doesn’t mean you’re getting 8 hours of practice. Even when you are productive, the time you spend is mostly solving problems you can easily fix. Perhaps only a small percentage of your day is training new abilities from your work.
 This is one thing I’m starting to realize. It’s one of the big takeaways from the class I took on elliptic curves, taught by Andrew Sutherland.