Live data from Hacker News

Every mathematician has only a few tricks (2020)

mathoverflow.net

41–50 of 87 posts

Re: Every mathematician has only a few tricks (2020)

#43
post #34

My dad (an engineer not a mathematician) would use Newton-Raphson[1] to solve basically any problem that wasn’t very obviously linear. When I was a kid, some of my first programming memories were my dad getting me and my brother to implement Newton-Raphson in basic on an HP85a, getting me to implement Newton-Raphson in rpn on an HP calculator, debugging my dad’s (genuinely revolting) basic program[2] which wouldn’t r…

My dad was also an Engineer. He was also a Fortran fan. Once he asked me to explain OOP. After I explained the basics he said it was useless and never looked back.

Get your dad a copy of the classic Scientific and Engineering C++: An Introduction With Advanced Techniques and Examples by John Barton and Lee Nackman. It was written to introduce C++ to Fortran programmers using examples from scientific/mathematical domains. The fact that it is old (from 1994) makes it better suited for folks from Fortran (or other languages) since there is none of the complexity of "Modern C++" to confuse them. Check reviews on Amazon etc.

Re: Every mathematician has only a few tricks (2020)

#44

My dad (an engineer not a mathematician) would use Newton-Raphson[1] to solve basically any problem that wasn’t very obviously linear. When I was a kid, some of my first programming memories were my dad getting me and my brother to implement Newton-Raphson in basic on an HP85a, getting me to implement Newton-Raphson in rpn on an HP calculator, debugging my dad’s (genuinely revolting) basic program[2] which wouldn’t r…

Nobody has enough memory or patience for third order derivatives so Newton's method (aka Newton Raphson) it is.

The modern world of autodiff actually makes real second and third order derivatives fairly cheap to compute.

The stuff that is actually used most commonly, only uses first order derivatives though (gradient descent, Levenberg-Marquardt, Kalman filters...)

Re: Every mathematician has only a few tricks (2020)

#45
post #7
post #6

Earlier quoted context omitted.

Here are a few more. * The (brilliant) infrastructure engineer who described his modus operandi as 'I read stuff on Reddit and then try it out.' This engineer is now worth, as a conservative estimate, in the neighborhood of $50 million. So maybe more of us should be doing that. * Another infrastructure engineer, also very effective, who made a habit of booking an external training session (sometimes a series, weekly)…

“The most successful people have failed more times than you have tried”

Success is relative. If the goal is to never fail, never try is the best strategy.

Also the most sure path to finish in the 1% wealthiest is to start in its network.

When the game is set to make 99% of players considered as losers in its own terms, the best strategy to have fun at scale is to not care about the highlighted goal. Keep awareness of how rules actually apply, take shortcuts if it feels safe and preferable, always respect human dignity even when nasty players try to make a dirty move agaisnt you, don't let the lowering bare of hate infect one more player.

Re: Every mathematician has only a few tricks (2020)

#46
post #9
post #2

I think this is true for engineers as well! I enjoy getting to know the "theme" of my favorite coworkers over the years. There was: * The fellow who always looked for the simplest hack possible. Give him the most annoying problem, he'd pause, go Wait a minute! and redefine it to have a very easy solution. He typed very slowly, but it didn't really matter. * The one who truly loved code itself. He would climb mountain…

For me, it's tracing code/pipelines to figure out how a result was produced, typically in the context of that result being wrong somehow. Go To Definition is the most useful function in any editor. I'm always surprised by how frequently colleagues don't think to do this and are left helpless.

Likewise. I don't always do this, but for problems that cost me much time or effort, I like to try to make sure that, if I wanted to reproduce a bug or problem, I'd know exactly how to write it.

Writing and understanding working correct software is, it turns out, a rather different skill from that of writing and understanding broken (or confusing) software. I'd also wager good money that the latter skill directly builds the former.

Re: Every mathematician has only a few tricks (2020)

#47

Earlier quoted context omitted.

Nobody has enough memory or patience for third order derivatives so Newton's method (aka Newton Raphson) it is.

The modern world of autodiff actually makes real second and third order derivatives fairly cheap to compute. The stuff that is actually used most commonly, only uses first order derivatives though (gradient descent, Levenberg-Marquardt, Kalman filters...)

I could be wrong, but "memory" and "patience" sounded like they were referring to machine memory and patience waiting for a slow algorithm, which is what you would expect from any derivative more involved than a Jacobian for nontrivial problems, even when doing tricks like vjp or vhp.

Re: Every mathematician has only a few tricks (2020)

#48
post #34

Earlier quoted context omitted.

My dad was also an Engineer. He was also a Fortran fan. Once he asked me to explain OOP. After I explained the basics he said it was useless and never looked back.

I guess as a typical engineer (not CS person type of engineer or software engineer) it is easy to think that. One might be working with machines or buildings and so on, all which require _calculation_ of processes. Those are typical cases for "just write a correct function", possibly one that takes many things into account. For such scenario OOP is truly useless and only over-complicates the matter. However, when we…

OOP is for problems that require complex modeling, indeed if you require just complex calculation it is useless.

Re: Every mathematician has only a few tricks (2020)

#50

My dad (an engineer not a mathematician) would use Newton-Raphson[1] to solve basically any problem that wasn’t very obviously linear. When I was a kid, some of my first programming memories were my dad getting me and my brother to implement Newton-Raphson in basic on an HP85a, getting me to implement Newton-Raphson in rpn on an HP calculator, debugging my dad’s (genuinely revolting) basic program[2] which wouldn’t r…

The most brilliant software developer (an EE PhD) that I have ever worked with has been using the singular value decomposition (SVD) to solve an enormous number of linear algebra and numerical computing problems in engineering software. The SVD seems to be useful for many engineering computations if you know how to apply it.
Post reply on HN