

Math Every Day  - yarapavan
http://steve.yegge.googlepages.com/math-every-day

======
nezumi
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://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?

~~~
vilya
Couldn'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
I 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.)

------
vinutheraj
And that list doesn't mention his contribution to quantum theory, that he laid
the foundation of mathematical quantum theory !

He was a true genius in all senses of the word !

<http://plato.stanford.edu/entries/qt-nvd/>

------
notaddicted
Learning all this is very important.

There are people out there working on problems that are either solved, easily
mappable to a solved problem, or proven impossible. Don't be one of those
people. Don't be one of many to reinvent
<http://en.wikipedia.org/wiki/Dynamic_programming> in a new problem domain.
Don't learn <http://pmbook.ce.cmu.edu/> the hard way.

------
dunk010
An oldie, but a goodie. His articles are forever destined to resurface
randomly on hacker news...

~~~
kiba
Yeah, Steve Yeggie is a damn good writer.

I just don't know how he does it. All the other programmers have years of
experience programming but they don't write as good or insightful as him.

I want Steve Yeggie to write a book!

------
jobu
Interesting idea of trying to force math into your everyday life. Since
college, the highest level of math I've used is geometry and trigonometry, but
none of it was for programming. It's only been useful a few building projects
around the house.

~~~
moron4hire
I routinely use discrete math in "everyday, consultingware". Computer Science,
and by extension programming, is fundamentally a study of discrete math.
Linear algebra is another field that I use a LOT, and not just in graphics
systems. If you think math isn't useful for programming, it's because you
don't know enough math. I'm with the OP on this one, I _wish_ I knew more
math. I'm certain it would make me a more efficient programmer.

------
Afton
This is a good blog post. But it could be about anything, and I encourage you
to treat it as such (although the idea of doing this with Math is probably
something many of could more or less directly use).

Stupid example. I live in a single family house. When we moved in, the yards
(front/back) were full of weeds. By weeding for 1/2 an hour a week, I cleaned
the front out of weeds. What was insurmountable without chemical assistance
turned into a few minutes of digging in dirt (which I enjoy). Now I have a
weed free lawn, which I enjoy with my family all the time (grass stains are
bad, but we get this dandelion thing that stains permanently at the slightest
touch).

I became a foosball whiz (ok, I've seen real whizzes, and I'm not one, but . .
. let's say a 'local whiz') by practicing 15-30 minutes a day.

The only real trick is working out a way to want to engage in that activity in
a sufficiently 'serious' way on a regular basis. Which is why I have a nice
lawn and am good at foosball rather than, say, being good at a musical
instrument.

------
anonymousDan
The problem I have with this self directed kind of learning is that sooner or
later I always get stuck and have no one to ask questions to. For example, I'm
currently going through this book on neural networks that someone posted last
week (<http://page.mi.fu-berlin.de/rojas/neural/>). However, when I get to the
exercises at the end of the chapter, I inevitably fail to complete some of
them. Most of the time I don't even want the answer, since that defeats the
purpose, but some kind of hint to get me going in the right direction would be
really useful. Anyone doing a lot of self directed learning from text books
with suggestions?

------
yarapavan
BetterExplained explains some of the math concepts in simpler terms:

Link: <http://betterexplained.com/articles/category/math/>

------
DannoHung
Yah, he was sort of a paranoid dude though. I wish that he hadn't died so
young, but also that he hadn't been so politically influential.

~~~
tokenadult
I think you are confusing him with someone else.

After edit: I'll accept the response below to what I first wrote. But I
wouldn't call Von Neumann "paranoid" in the setting of his times, which
included the conquest of his native country.

~~~
ash
DannoHung is probably talking about von Neumann.

