Interview with John D. Cook

John D. Cook

So I interviewed John D. Cook for the March issue of Singularity magazine. The most interesting answer came from the last question I asked: “Last comments?” And John said,

My graduate adviser told me that he thought there would be a lot of opportunity for someone who could combine theoretical math and computation. I believe he was right. Most of my career has been in that overlap and I’ve had the opportunity to do some interesting things.

The whole interview is in the March issue. Click on the link above to get the magazine.


Some time between my final exams and getting my first job, I’ve been afraid. “What can I do?” came up a lot. I had a double major in Applied Mathematics and Computational Science. I’m not really that good in mathematics, nor am I “qualified” to do programming. The research facilities want PhD’s and MSc’s (in maths). The software companies want graduates with a computer science degree, not a computational science degree. They don’t understand the difference, so it takes more convincing.

Ok, just to clear things up a little. You probably know what computer science is. So what’s computational science? This is the definition I recall from a professor:

We write programs to solve scientific problems

Or something like that. I wrote a program that analysed wave motions (I think). I wrote a MATLAB program to do image texture matching with Fourier Transforms. I wrote a C program to simulate computer virus behaviour.

It’s why I never learned about databases and SQL. My scientific problems and experiments hadn’t required large amounts of data. I understand that my peers in the computer science courses learnt to simulate airline ticket purchasing, and to connect to databases, and to design web interfaces.

I just typed “cc vince.c -o vince” on my Unix command line. Then “vince” to run the program. If segmentation faults didn’t assault me, then I had the output somewhere in a text file.

Luckily, I got hired a few months after graduation. A telecommunications company director interviewed me. Apparently my maths degree was an edge, because all his hires were computer science graduates. One of the departments that the director was in charge of, was the billing support department. Hey numbers! My forte! Supposedly. (No, I mean, yes, definitely my forte! [I needed to eat…]) I found out about that supposed maths edge I had some time after I was hired, when he talked with me (I think).

So John’s answer struck something deep within me. I wished I heard that when I was in university. Then I don’t have to be so afraid that I won’t be of use anywhere.

When I did my honours thesis project (I was working on computer virus behaviour simulation), my adviser suggested I become an epidemiologist. It means I help in the study of epidemics, such as virus outbreaks and stuff. I was more interested in writing code, so I declined his offer to make recommendations to the Singapore CDC (or some health organisation. It was a long time ago. I forget…). I wonder what would’ve happened had I accepted his offer…

So to the (future) mathematicians out there, learn to write code. Programming is actually quite compatible with how you think in maths.

To the (future) programmers out there, learn to broaden your knowledge and skills. (You thought I was going to say maths, didn’t you?) Software is getting more complex and simpler at the same time. That’s because the range of needs from users is getting wider. There’s software that does facial recognition, fingerprint recognition, speech recognition, image matching, and textual analysis. There’s software that does billing, accounting, profit sharing, and banking. There’s also software that just blips 140 characters to some server. There’s software that does all kinds of things that people want or need.

Your skill to write code isn’t in question. Your skill to understand the myriad scenarios and conditions for your software to work, is.

Singularity Magazine March 2011

Singularity Magazine March 2011

So in a fortnight’s time, it will be Pi Day! Are you excited? Yeah? Yes? no? Oh, you don’t care… Well, you get to eat pies… oh you love pies? Great! So look out on the Internet on March 14. Why March 14? Because the first three digits of PI (3.14159) is 3, 1 and 4. You know, 3/14 as a date?

Anyway, the March 2011 issue of Singularity magazine is available! I’d chomp right through a bushel of cookies if I had it right now. Because I’m that happy. Speaking of cookies, there’s a special report on CookieBank, a sweet way of microlending. Check it out in the magazine.

Since we have Pi Day, we can’t escape from mathematics, right? I bring you an interview with mathematician, John D. Cook. He says contrary to popular understanding, Taylor series approximations are not used to calculate trigonometric functions in computer chips. What, you didn’t know? Neither did I!

Download the March issue right now (about 3MB)

Behind the scenes

So the fairies I hired last month are really good. They helped me track down nice pictures to use in the magazine, small bits of info here and there, do some design stuff. All they ask for is that I feed them, which is ok, since they eat very little. And that I let them take rides on my cat (assistant). My cat graciously obliged (after I begged her imperial Majesty for a few days. I really needed the fairies to help).

There was one small tiny bit of a commotion. An incident really. The fairies were exploring the house, and they settled near my cat’s food bowls. They picked a couple of pieces of dry cat food out.


My cat pounced onto the fairies. Luckily, no fairy was hurt (they fly and flee fast, I’ll give them that). Otherwise I’d have to answer to the Magical Minist… what? Oh, I’m not supposed to tell them. Uh, forget what I said.

So. My cat’s fine with the feline rides. But touch her food bowls and you die. Period.