Live data from Hacker News

Programming is not math

sarahmei.com

1–10 of 115 posts

Re: Programming is not math

#3
Again this? It's been run up and down on Twitter.

Effectively: a maths education is a great IQ test. If I was hiring a press agent, I'd still ask math questions.

E: "I think this is great. I was always interested in computers as a kid but was awful in math."

When I was a kid I was intermittently good and bad at maths, and hit a low point in high school trigonometry. Different teachers, different styles. I still "grew up" with college calculus, and ended up taking even graduate-level courses in mathematics. (Not without spending a year or so in film school thinking arts were right for me because I wasn't 'mathy')

We need to do away with this widespread notion that some people are good at maths and some have other talents. That's just mathematical anxiety, poor organization (I was bad at high school linear algebra because I couldn't line up my matrices right on paper) and some level of license already being given to people to suck at this.

We don't tell people they can be bad at talking. Kids who can't talk to strangers or have bad praxis are taken to psychiatry.

As a civilization, we need to suck it up with mathematics. As long as we tell sociologists that they don't need to know maths, we're gonna end up with bad theories of society that don't understand nonlinear dynamics, as much as mathematicians scream about catastrophe theory. And then there's this: programmers who can't grok some two years of college maths are just going to suck constantly. How many complex "language problems" resolve into constraint linear programming, FFS?

Re: Programming is not math

#4
> Programming is Language.

And half of mathematics is more or less the study of formal languages and their consequences?

You can say that they're different in order to keep people who are scared of math from projecting those feelings to programming. Or you can say they're the same to draw deep insight between programming and one of the oldest fields of study of human kind.

I find that people tend to reject the relation when they know of math as calculus, i.e. the analysis side of mathematics. When they bump into the algebra/proof side of it the connection is more clear.

As a corollary, people who are "good at language" are probably going to be quite good at algebra/logic mathematics as well if they approached it from the right angle.

Re: Programming is not math

#5
Honestly, I've wavered on this topic...I used to think that math wasn't an inextricable part in understanding programming, since it doesn't seem we do anything more taxing than incrementing values by one, on a day to day basis. This recent interview with mathematician Jordan Ellenberg really piqued my interest though:

http://host.madison.com/entertainment/arts_and_theatre/books...

> I would say that math, almost alone in the school curriculum, is the one place that you can create knowledge absolutely from scratch and know that you’re right. That’s rather amazing and I think that’s one reason math has a central place in school. If you’re taking history and someone says, “This is what happened in the Eisenhower administration,” you have to take the teacher’s word for it. If you don’t, you can look it up in a book and you compare that book’s authority to your teacher’s authority, but in the end you have no direct access to what’s true and what’s false. Math is different. In math, you can actually directly perceive what’s true and what’s false. You can count and you can measure and you can create that knowledge for yourself. That’s an incredibly powerful thing. If students come out of their math classes in school without really experiencing that, that’s quite a waste because it’s very special and it’s something only math can offer.

This, for lack of better term, faith in logical proof...that certain forms of analysis and problem solving can be built from and derived in an irrefutable way...that's hard to get across to novice programmers...such as the idea that debugging is not just a matter of luck and randomness, no matter how complicated that stack trace or how you cross your fingers when turning on your computer, but of logical deduction.

Sure, everyone who is an adult goes through many years of math to graduate high school...but how much do they really appreciate that mathematical assertions can be, as Jordan puts it, basically created from scratch and be irrefutable? Which is something that you can't say for many non-math topics that we run into day-to-day? And if you don't have that grasp...even if all the actual math you do in your code is x += 1...you may not have the intellectual fortitude to deal with all the ways code can diverge and break.

Re: Programming is not math

#8
My main hobby is learning foreign languages and I have noticed that a very large proportion of people on language-learning sites happen to be programmers of one sort or another. Of course, this may just reflect a tendency of programmers to be aware of and use the technology available to pursue their other interests, and thus be overrepresented on such sites, rather than an affinity between interest and ability in computer languages and natural ones...not to mention the fact that programmers coming from a non-English background have a very strong incentive to improve at least their English.

Re: Programming is not math

#9
post #5

Honestly, I've wavered on this topic...I used to think that math wasn't an inextricable part in understanding programming, since it doesn't seem we do anything more taxing than incrementing values by one, on a day to day basis. This recent interview with mathematician Jordan Ellenberg really piqued my interest though: http://host.madison.com/entertainment/arts_and_theatre/books... > I would say that math, almost alon…

I was just reading Per Martin-Löf's On the Meanings of the Logical Constants and the Justifications of the Logical Laws [0] which talks about this exact notion from Martin-Löf's modern intuitionistic logical perspective. This paper is a little dense and meandering, but I challenge anyone with an interest in the relation of programming and mathematics to take it on.

An ultimate conclusion it attempts to justify is that theory and proof (identical to "type and program") are a noun and a verb respectively. The act of consuming a proof is the one where you, the reader, consume some evidence which subsequently substantiates the proposition of interest.

What that means in relation to this parent's notion is that mathematics, and indeed programming or anything which can be connected so strongly to formal logic, necessarily draws all of its meaning from the words used to express it... and thus, once you've heard them (read a proof, seen a program) you have all of the facilities necessary to manipulate it and test it and learn more.

Which is exactly what makes all of these bodies of work, together, so accessible and wonderful. And it's exactly why history always feels less powerful.

[0] http://www.ae-info.org/attach/User/Martin-L%C3%B6f_Per/Other...

Post reply on HN