4 ms·
Sadly Yegge's solution to his innumeracy consisted of trawling through the same list of categories which presumably failed him at school. I wonder how that turn
by nezumi 17y ago
Sadly Yegge's solution to his innumeracy consisted of trawling through the same list of categories which presumably failed him at school. I wonder how that turned out?
There's a reason hackers tend not to be good at 'high school math' - it's incredibly dull. 90% of what most of us did in class consists of essentially running code, the stuff hackers expect the machine to do for us (so we can concentrate on the real problem.)
I think solving mathematical education for the general population is incredibly hard, I wish Paul Lockhart (http://www.maa.org/devlin/LockhartsLament.pdf http://www.maa.org/devlin/LockhartsLament.pdf, http://news.ycombinator.com/item?id=256176 http://news.ycombinator.com/item?id=256176)
all the best in his efforts. But I think solving mathematical education for hackers ought to be a little easier. We are eminently comfortable with symbolic languages (consistent, testable ones - I'm not sure if many mathematical notations can make the same claim), and we love problem solving. You'd have thought we'd have a hard time not becoming good at math.
Does anyone have any suggestions? How about a textbook where the methods and proofs are expressed in code, for a start?
- tel 17y agoIt'd definitely be interesting to see how HS math teaching could be improved using code. It could definitely improve interest for some by approaching the meaty, interesting bits through a common language. Unfortunately, though I've not gone through one of the so labelled Math XXXX for CS Majors style classes, I feel a little worried about this approach. It might garner interest initially, but if you're not eventually writing things down using math notation and reasoning at that level then you'll be doing math with a crutch forever. Mathematical notations are not consistent or testable across any significant body. Most authors abuse notation every chance they get ("syntax sugar", maybe) though the good ones are conscientious about this. The difference is that Math is fundamentally a human language. It exists not to be computed directly but to inspire our non-linear brains to jump to the proper conclusions while laying down a map that (hopefully) outlines some perfectly "consistent" method for getting there. (Consistent is in quotes because Gödel and so forth. Read the comments at the end of the second chapter of the Jaynes book online for free.) Computer code is increasingly necessary in anything resembling a practical application of math. I'd suggest that it's as important for an (ugh) applied mathematician as the language of math itself, but I would never think that it could be practiced to the exclusion of the other. Sure: pique some interest by showing how really cool things can be done with computers that abuse fundamental mathematical things. Do it with graphics or show infinite sum approximations, whatever you like. In the end, your students better be able to at least recognize the mathspeak for what they're doing though. Otherwise you're crippling them even as you inspire.
- arebop 17y agoAn interesting ICFP video (http://www.vimeo.com/6615365 http://www.vimeo.com/6615365) I watched yesterday* about proofs, code, and teaching introductory classes seems relevant. *linked from http://news.ycombinator.com/item?id=862686 http://news.ycombinator.com/item?id=862686
- vilya 17y agoCouldn't agree more. One of the problems I always had with math textbooks was that you had to read them as a narrative rather than using them as a reference to dip in and out of. The reason being that most examples or formulas would use symbols defined earlier in the text without bothering to restate their meaning. So looking up a simple formula would turn into a multi-hour trawl back through the textbook trying to find definitions of all the symbols they were using. If only mathematicians - and textbook authors, especially - were taught to use meaningful variable names! On a related note, if anyone does know of a good math reference (esp. for calculus!) which makes an effort to keep it's formulas self-contained, I'd love to hear about it!
- hackerblues 17y agoI think there are two aspects to this that you might not have considered. 1) If your contact with maths is simply reading a formula out of a book and implementing it then long variable names might be fine. If you are actually trying to do a calculation then long variable names are terrible on two fronts: firstly because they take so much longer to write out, secondly because the additional characters obscure the 'moving parts' of an equation. I'd much prefer looking at "a(b+c) = ab + ac" vs "first_variable * (second_variable + third_variable) = first_variable * second_variable + first_variable * third_variable" 2) I don't really understand what you mean by meaningful variable names. Perhaps if you are using mathematics to model a specific thing then they make sense: eg number_of_people = number_of_males + number_of_females. However, mathematics as a discipline isn't about modeling specific situations, there is no "mathematics for groups of people" for instance. Instead mathematics deals with manipulating abstract ideas - do abstract ideas really have meaningful names? If you do have some idea then perhaps you could explain how you would define a derivative with meaningful names? The best I can come up with is: derivative(some_function(variable)) = limit small_change approaches 0 (some_function(variable + small_change) - some_function(variable)) / small_change Does that really assist cognition more than the standard: f'(t) = lim h->0 (f(t+h)-f(t))/h ? btw, can you see from this example what I mean about the extra wordiness hiding the parts? (Maybe I've just used the standard notation for so long the words mess up my pattern matching.)