Mathematicians are chronically lost and confused  - <AUTHOR> http://j2kun.svbtle.com/mathematicians-are-chronically-lost-and-confused <comment><USER2> Secondary math education, for me in the UK, didn't deal with anything outside of elementary algebra, Euclidean geometry, some statistics, and relatively simple calculus. Nobody talked to us about imaginary or complex numbers, or bayes theorem, decision theory, or non-trivial mechanics problems until I was in college (age 16+). Nobody mentioned matrices, broader number theory or discrete transforms until I was in university. I studied EE not compsci. Things like algorithmic complexity I had to learn for myself and from Knuth. I'm trying to grok group theory right now to help with my understanding of crypto. Before this, it was never mentioned throughout my education, so I don't know what courses you would have had to take to learn that. The fact that I didn't even know group theory was important to crypto until after I had made the choice strikes me as a bad sign.

The common theme at every level is learning cherry-picked skills, before you're even _told what the branches of mathematics even are_. Everything seems disjointed because you're not taught to look past the trees for the forest. Most people infact, even technical folk, go through their entire lives without knowing the forest even exists. Any idiot can point to a random part of their anatomy and posit that there's a field of study dedicated to it. The same goes for mechanics or computer science. You just can't do that with mathematics as a student.

I loath academic papers. Often I find I spend days or weeks deciphering mathematics in compsci papers only to find the underlying concept is intuitive and plain, but you're forced to learn it bottom up, constructing the authors original genius from the cryptic scrawlings they left in their paper... and you realise a couple of block diagrams and a few short paragraphs could have made the process a lot less frustrating.

So many ideas seem closed to mortals because of the nature of mathematics.

<comment><USER3> _Often I find I spend days or weeks deciphering mathematics in compsci papers only to find the underlying concept is intuitive and plain, but you 're forced to learn it bottom up, constructing the authors original genius from the cryptic scrawlings they left in their paper... and you realise a couple of block diagrams and a few short paragraphs could have made the process a lot less frustrating._

This is SO TRUE.

The same thing happens to me regularly, and not just with "computer science" but with other technical fields, hard sciences, and mathematics. The purpose of most academic papers is not to explain (let alone teach!) ideas in an intuitive manner, but rather to express them in formal, correct, unambiguous terms -- that is, to make them as _accurate_ and _critique-proof_ as possible for publication in some journal.

<comment><USER4> Just as a specific example, I had this experience with Bayes' Theorem <[http://en.wikipedia.org/wiki/Bayes%27_theorem>](http://en.wikipedia.org/wiki/Bayes%27_theorem>). As an informal paper for my computer security class, we used Bayes' theorem to implement aimbot detection in a simple FPS. It sounds like a big, complicated theorem with a special name that some genius had to come up with and has complicated notation involving probabilities and logic symbols.

And then it's basically (paraphrasing with reckless abandon) just the probably of your event divided by the total probability space. Lots of words and jargon and theory given in countless papers and articles, and it pretty much just boils down to intuitive addition, multiplication, and division.

And our aimbot detector actually worked pretty damn well! Just gather some data points to determine probabilities, plug them into the simple formula, and it was always correct in our test cases.

<comment><USER5> Fixed link for the lazy: [http://en.wikipedia.org/wiki/Bayes_theorem](http://en.wikipedia.org/wiki/Bayes_theorem)

<comment><USER4> Thanks. I reported this bug nearly two years ago :)

[https://news.ycombinator.com/item?id=4112327](https://news.ycombinator.com/item?id=4112327)

</comment></comment></comment></comment></comment><comment><USER6> I currently teach math to at-risk students. I don't read all of these submissions about math education, but I skim the comments on most of them. The comments people make change the way I teach math.

I have always done a decent job of teaching math. I focus on helping students understand concepts, even when they are focusing on mechanics. I use words like "shortcut" and "more efficient method" rather than "trick" when showing students more efficient ways to solve problems. I have students do problems and projects that relate to their post-high-school goals.

But with the routines of school life, I get away from the fun of math from time to time. The comments on these submissions often remind me to go in and just tell stories about math:

\- "Hey everyone, did you know that some infinities are bigger than other infinities?"

\- "Hey everyone, do you have any idea how your passwords are actually stored on facebook/ twitter/ etc.?"

\- "Have any of you heard the story about the elementary teacher who got mad at their class, and told everyone to add up all the numbers from 1 to 100? One kid did it in less than a minute, do you want to see how he did it?"

Thanks everyone, for sharing your perspective on your own math education, and about how you use math in your professional lives as well. Your stories help.

<comment><USER7> I love stories like these. I haven't gone much past calculus, what stories can I look for that will take me farther?

<comment><USER8> You may recall that one can use the quadratic formula to find solutions to a quadratic equation (polynomial with highest term being x^2). Did you know that (one) guy that proved there is no such formula for quintic equations (highest term x^5) died in a duel when he was only 20? [1]

There is a town with a particular rule when it comes to facial hair: those who do not shave themselves are shaved by the barber. But then who shaves the barber? [2]

The other poster mentioned different infinities. One "size" of infinity is called "countable infinity" and is the infinity describing the size of the natural numbers (1,2,3,...). Say we have a hotel with a countable infinite number of rooms. I've been travelling all day and I show up at the hotel, and talk to the clerk at the front desk. He tells me every room is full, but when he sees the sad look on my face he tells me not to worry - he can make room for me. He simply moves the person in room 1 to room 2, the person in room 2 to room 3, room 3 to room 4, etc... And then the first room is empty for me, and everyone still has a room. [3]

[1] [http://en.wikipedia.org/wiki/%C3%89variste_Galois](http://en.wikipedia.org/wiki/%C3%89variste_Galois) [2] [http://en.wikipedia.org/wiki/Russell's_paradox](http://en.wikipedia.org/wiki/Russell's_paradox) [3] [http://en.wikipedia.org/wiki/Hilbert's_paradox_of_the_Grand_...](http://en.wikipedia.org/wiki/Hilbert's_paradox_of_the_Grand_Hotel)

</comment></comment></comment><comment><USER9> I've felt this is the case for a long time. A lot of people have a smooth experience in math for years until they hit their first serious discontinuity. That could happen anywhere: times tables, fraction arithmetic, two-step equations, geometric proofs, radicals, limits, or maybe even college math. The reaction is nearly universal though. The person thinks, "holy crap, I guess I'm actually _not_ good at math", anxiety strikes, and they freeze up.

Some people find eventually find their way around this first road block, and future discontinuities in understanding become less stressful, and eventually understood to be a completely normal part the process.

But the usual experience is that a person's math confidence is blown and as the math truck barrels on ahead, they never catch up. They understandably accept the identity of not being "good at math".

What's missing in math pedagogy at most schools is a systematic way to deal with the discontinuities when they strike, especially that first time. We can prepare students to deal with that panic. The tough part is that the math teacher probably has 90 students on roster, but the discontinuity could hit pretty much any given lesson, for some given student.

I know so many people who have come back to intermediate math later in life and breezed through it, armed with intellectual confidence gained from other fields. They look back and wonder how they came to be so intimidated by math in their younger days. We've got to give younger people the tools and knowledge for overcoming this intimidation at a younger age. We've got to kill "I'm just not good at math".

<comment><USER6> _as the math truck barrels on ahead_

I've been teaching math to at-risk high school students for the last 10 years. I have spent more time helping students understand that they are not stupid, that something just got in the way of their learning at one point, and they never understood anything after that. I'm going to use your quote in some of these conversations now.

What most of my students think: "I could never do math, I fucking hate it, and I might drop out because I will never finish my math credits. I can't do math because it's stupid and meaningless and I will never get it."

What really happened to get people off track?

\- Some just didn't follow one topic in some early grade, nothing else made sense after that, and no teacher was prepared to get them back on track.

\- Parents split up, student couldn't focus in school for 6 months, they got off track.

\- Parent/ sibling/ significant person passed away when student was young, couldn't focus for 6 months-2 years, no way to get back on track.

Any number of other external events happen, and it is perfectly reasonable for students to get off track in math.

 _a systematic way to deal with the discontinuities when they strike, especially that first time_

Exactly. I would like to see every elementary school have a math specialist, who knows advanced math, to help students with their overall understanding when they get off track. Helping a kid master some mechanics does a little to get them back on track, but diagnosing misunderstandings takes more math expertise than most elementary teachers have.

I could go on forever; thank you for putting some of these issues so clearly in focus.

<comment><USER10> > I would like to see every elementary school have a math specialist, who > knows advanced math, to help students with their overall understanding when > they get off track.

Note: This response is US-centric.

These individuals are exceedingly rare (if they exist at all). In fact, I would be absolutely shocked if 100 such people existed. College students who go into Elementary Education are stereotypically terrified of mathematics, and they have (at most) one required math course. This course is a "general methods" course that essentially acts as a survey of the elementary school mathematics that they'll be teaching.

<comment><USER11> There are more than you think, I assure you. Consider the people who write elementary curricula, who implement it in large cities, who teach middle school and high school mathematics but might prefer to teach _just mathematics_ at an elementary level. Consider NCTM[1], TERC[2], EDC[3], and UChicago[4], and their programs and work. Consider the math coaches, who instruct their peer elementary teachers on teaching mathematics.

Until these positions exist, are respected, and _are not first on the chopping block the next time budget cuts roll around_ , these people will continue to exist under the radar. (I'd gladly transfer into a Elementary Math Specialist position, if I was sure it wouldn't threaten my family's livelihood.)

[1]: [http://www.nctm.org/resources/elementary.aspx](http://www.nctm.org/resources/elementary.aspx)

[2]: [https://www.terc.edu/display/About/Mission+and+Vision](https://www.terc.edu/display/About/Mission+and+Vision)

[3]: [http://ltd.edc.org/mathematics](http://ltd.edc.org/mathematics)

[4]: [http://everydaymath.uchicago.edu](http://everydaymath.uchicago.edu)

</comment></comment></comment></comment><comment><USER12> Mathematicians are indeed lost and confused but in a very different way from beginning students. One must put in one's dues in what Terence Tao calls the "rigorous" phase before one can become productively confused in the "post- rigorous" phase. [http://terrytao.wordpress.com/career- advice/there%E2%80%99s-...](http://terrytao.wordpress.com/career- advice/there%E2%80%99s-more-to-mathematics-than-rigour-and-proofs/)

</comment><comment><USER13> I completely agree about the power of math, and why programmers should learn it. There are two problems with math:

(1) Math is IMHO the worst taught of all academic subjects.

It's taught as if it were not a language. Math profs and books on mathematics _never_ explain what the symbols mean. They just throw symbols at you and then do tricks with them and expect you to figure out that this symbol means "derivative" in this context. I have literally seen math texts that _never_ explain the language itself, introducing reams of new math with no definitions for mathematical notation used.

I've looked for a good "dictionary of math" \-- a book that explains every mathematical notation in existence and what it means _conceptually_ \-- and have never found such a thing. It's like some medieval guild craft that is passed down only by direct lineage among mathematicians.

Concepts are often never explained either. I remember struggling in calculus. The professor showed us how to do a derivative, so I mechanically followed but had no idea why I was doing what I was doing. I called up my father and he said one single sentence to me: "A derivative is a rate of change."

 _A derivative is a rate of change._

I completed his thought: so an integral is its inverse. Bingo. From then on I understood calculus. The professor never explained this, and the textbook did in such an unclear and oblique way that the concept was never adequately communicated. It's one g'damn sentence! The whole of calculus! Just f'ing say it! "A derivative is a rate of change!"

(2) The notation is horrible.

If math were a programming language it would be C++, maybe even Perl. There are many symbols to do the same thing. Every sub-discipline or application- area of mathematics seems to have its own quirky style of notation and sometimes these styles even conflict with each other.

Yet baroque languages like C++ and Perl at least document their syntax. If you read an intro to C++ book it begins its chapter on templates by explaining both what templates are for and the fact that type<int> means "type is templated on int."

Math doesn't do this. It doesn't explain its syntax. See point #1 above.

<comment><USER14> I agree wholeheartedly with how frustrating it is. I think part of the problem is that really great mathematicians are encouraged to stay as far away from teaching (and improving their teaching) as possible, and great teachers are often discouraged from pursuing more mathematics for a variety of reasons. And when I personally teach calculus I make sure to explain derivatives in the way you want in the very first day (before describing limits or anything else).

As to your second point, I think notation is a big problem, but it's a bit of a straw man. With very few exceptions that I doubt you would ever find yourself in, I have never met a professor or mathematician that would not explain notation if you asked (gladly stopping in the middle of a lecture or talk to clarify). There is still a lot of it, but every mathematician who is presenting the mathematics can explain the notation to any degree of precision you could ever want, and I have very few colleagues who have never stopped someone for this reason.

I think the bigger problem is trying to read mathematics by yourself, without the ability to ask questions. And even after understanding the notation, I feel programmers have bigger problems, which I've expanded more on in this post [1], the main difference between learning programming being there are simply more free and open resources for learning programming. This is probably because programmers invented the internet and filled it with their favorite content first.

But one point I make is that mathematical notation is inherently ad-hoc, and the only kinds of notation that stick around are the kinds that get used ad- hoc enough times to become standard. And even then people will make up their own notation for no other reason than that it's their favorite (Physicists are really good at this, and perhaps ironically it drives mathematicians crazy). Because of that (and because notation is introduced often to be rigorous, not to explain a concept) you're unlikely to ever find such a dictionary. Sorry :(

[1]: [http://jeremykun.com/2013/02/08/why-there-is-no- hitchhikers-...](http://jeremykun.com/2013/02/08/why-there-is-no-hitchhikers- guide-to-mathematics-for-programmers/)

<comment><USER13> The problem is really very simple.

First you teach the basics of the language. Then you teach how to express concepts in that language and what those concepts _mean_. Finally, you teach how to manipulate those concepts to build new higher-order forms.

Mathematics is taught like this:

First, students are shown how to manipulate symbols they do not understand. During this process, sometimes (if you're lucky) these symbols are explained in a piecemeal and oblique way. Sometimes conceptual meaning is discussed at the end to wrap things up (oh by the way this is what you'd use this for, now let's move on), but this is rare. Mostly you just get elaborate dances of symbols thrown at you with no explanation to tie what you're doing to any problem, reality, or conceptual meaning. In the end most students end up memorizing these meaningless opaque incantations and never understand why anyone would be interested in math.

<comment><USER15> I don't think just doing everything from first principles is reasonable. Building up the natural numbers from set theory etc. would just be frustrating for kids.

Like trying to teach them their native language by grammar diagrams etc. instead of immersion

[http://en.wikipedia.org/wiki/Language_immersion](http://en.wikipedia.org/wiki/Language_immersion)

Math is not exactly the same as natural language, but there are tradeoffs to doing it one way or the other and there needs to be balance.

</comment></comment></comment></comment><comment><USER16> I highly recommend reading this. I didn't agree 100% with everything, and you probably won't either, but it's an excellent insight into what learning and doing math is about, and what it's like.

I'd love to read alternate viewpoints, but this is an excellent read.

</comment><comment><USER17> The entire post was enjoyable but I found the last paragraph to have the most actionable advice:

 _What's much more useful is recording what the deep insights are, and storing them for recollection later. Because every important mathematical idea has a deep insight, and these insights are your best friends. They're your mathematical "nose," and they'll help guide you through the mansion._

</comment><comment><USER18> I really enjoyed this because it captures so much of the frustration that felt early in my programming career - especially in college when I had classmates several years my junior who were (as far as I could tell) mathematics and programming wunderkinds. I also think that this is the sort of rhetoric that should be used to begin teaching children basic mathematics and more advanced concepts as well, because I still recall many of my classmates in elementary and even highschool who simply felt like failures or that they weren't smart enough to understand things because they didn't "get" it the first, or fourth, or fiftyth time.

</comment><comment><USER19> "If you're going to get anywhere in learning mathematics, you need to learn to be comfortable not understanding something."

This is true for all research.

And I don't mean just the physical sciences either. Historians and sociologists are also chronically "lost and confused." Otherwise it wouldn't be a topic worth of study.

This is why students who are "good at X", whether it be math, German, sports, or programming, may become frustrated when they find out that "good at researching X" is a very different matter.

<comment><USER14> I think it's a good point, but I still think the kind of lost and confused in mathematics is more embarrassingly extreme. Imagine a few hundred historians trying to discern when King George I died, and after 50 years of work they conclude, "All we know for sure is that it was between the day he was born and yesterday." A startlingly large part of mathematics feels like this.

And I think the reason is that "prevailing theories" mean nothing in mathematics.

<comment><USER19> That's a poor comparison. I find it hard to believe that mathematicians are still trying to decide if the set {1, 2, 3} is finite or infinite.

A "startling large part" of all science fields like this.

Physicists don't even know if the gravitational mass of an object is really the same as its inertial mass. Or if there are true magnetic monopoles. And that's after over a century of trying.

Immunologists have barely scratched the surface of how that field works.

Economists make lots of conjectures, with lots of math to back it up, but it's not a perfect predictor of the human economic system.

Biological evolution still surprises us, 150 years after Darwin and nearly 100 years after the neodarwinian synthesis.

Chemists still don't come close to handling some of the reactions that natural systems have figured out.

And so on.

<comment><USER14> Good point.

</comment></comment></comment></comment><comment><USER20> I started off doing a combined maths and computer science degree.

With both computer science and maths you are chronically confused. The difference being with computer science it doesn't matter so much if you don't understand something, if you can get it to work you know you are on the right track. Maths is much more progressive, each proof builds on a previous one. So if you fail to understand one step you are screwed from that point on.

After the first year I realised I didn't actually enjoy being permanently confused and so I ditched the maths to focus on computers. I do regret this. It didn't take long at all before I forgot all that knowledge I had spent years sweating over.

</comment><comment><USER21> I wish this post was around when I finished my undergraduate degree in Mathematics. I would have taken my adviser's advice to go to grad school. At the time, I remember telling him that I feel like a barely made it through the program. Apparently I wasn't alone. Amazing the difference 25 years and the internet makes.

</comment><comment><USER22> This misses the dangerous part, which is mathematicians in groups can confuse each other into accepting ideas which are basically nonsensical, especially if the counter argument relies on some obvious but intuitive observation of reality but cannot be easily formalised within their chosen framework of the moment.

As a consequence of this it wouldn't surprise me if the overwhelming majority of maths was actually incoherent nonsense and that the people that understood this thought they were just very confused due to being shouted down all the time, when the really confused people are the ones oblivious to their own situation.

<comment><USER11> I'm going to be rather dismissive in my reply, and for that, I apologize, because I'm not quite sure how else to respond.

This is more or less a non-issue. Thanks to mathematicians building on Euclid for the last 2300 years, we have a system of mathematics built on a few basic principles (that you would not disagree with) and deductive reasoning. If you take a theorem that is accepted as proven, you can almost definitely follow an immense chain of logic back to the fundamentals. It will take you a ridiculous amount of time to do so, but it is possible.

If you're referring to specific debates in the math community (e.g. "I feel that the general math community accepting the axiom of choice was a bad idea") then that's worth being specific about in your post.

<comment><USER23> >we have a system of mathematics built on a few basic principles (that you would not disagree with) and deductive reasoning

I think it's even better than that; mathematicians don't necessarily care whether the reader 'agrees' with the axioms, or whether they're in any sense 'true' or 'false'. Mathematics is always of the form 'if these axioms are true, this theorem follows from it'.

The real world and the notions which people consider to be self-evidently true is just some messy slimy gooey gunk best left to psychoanalysts and theoretical physicists and sewer workers and the like.

<comment><USER11> Oh, I agree, that's the best part. Pick your rules: oh, you picked those seven? You've got a ring; here are your math rules!

In that specific case, though, I figured I'd point out that the basic rules of math aren't usually things people squabble over. (Although I do enjoy a little mathematical philosophy from time to time.)

<comment><USER24> Even better is when, to everyone's surprise, those seven turn out to be relevant for describing real world phenomena.

</comment></comment></comment></comment></comment><comment><USER25> Fair enough. I tried in my youth to solve every problem I came across. There were many I couldn't solve. It took a while before I developed the wisdom and discipline not to solve every problem no matter how long it took. By a while I mean decades. I sacrificed the possibility of family life, have stopped talking to my uncomprehending stepfather, and have kept my social interactions to an absolute minimum to pursue my consuming interest. (I mention this as a point of pride.) I find myself continually astonished by the ingenuity of solutions I probably could never have imagined after years of work. Perhaps, after a lifetime of effort that must be continually maintained, I have attained the level an entering freshman at Harvard. At this stage, I may be reduced at best to connoisseurship of some aspects of mathematics.

Now for some reflections on attitudes. Mathematicians sometimes act as if they believe that expertise in mathematics transfers to expertise in mathematics education. Suppose you are a sensitive student, lacking in confidence. You open Korner's beautiful book on Fourier Analysis, and the first thing you are greeted with is "This book is meant neither as a drill book for the successful student nor as a lifebelt for the unsuccessful student." Korner does not mention other references suitable for the successful and the unsuccessful student. You take this comment to mean that Korner would let the unsuccessful student drown. There is no implication, but this is the psychological import, the implicature. Why mention the unsuccessful student at all? Why not say who the book is for, without planting this gratuitous image in the reader's mind? It would take some time to return to this book, to get past the wonder at a mind capable of such an incidental, dismissive, off-handed acknowledgement of "the unsuccessful student."

You could say this is "overthinking." Such remarks, microagressions as they are termed today, "perpetrated against those due to gender, sexual orientation, and _ability status_ ", are sometimes revealed in the asides of mathematical authors [1].

And now if only mathematics educators would evaluate their students on the state of their confusion!

[1] [http://en.wikipedia.org/wiki/Microaggression](http://en.wikipedia.org/wiki/Microaggression)

</comment><comment><USER26> No, the OP is giving bad advice.

Reading good foundational text books carefully is darned good advice. But for solving every exercise before moving on, no, that's not a good idea. Instead, be willing to be happy solving some 90-99% of the exercises. For the rest, guess, with some evidence, that they are incorrectly stated, out of place, just too darned hard, or some such. If insist on solving 100%, then get on the Internet and look for solutions.

Next, if read some foundational text books, then in each subject also read several competing text books, perhaps just one mostly but also look at least a little at the others for views from 'a different angle' that can be a big help. Why? Because likely no text book is perfect and, instead, in some places is awkward, unclear, misleading, clumsy, etc. So, views from a 'different angle' can make it much easier to learn both better and faster.

His description of doing applications by just getting what really need and forgetting the rest can be done but is not so good. Instead, having a good foundation helps a lot. And, commonly for an application in an important field, there really is some good material in that field that should understand with the application. Else risk doing the application significantly less well than could have.

His description from Wiles is more or less okay for doing some research but, really, not for learning. And for research, more of a 'strategic' overview, i.e., with the 'lay of the land', would be good, i.e., for publishing not just one okay, likely isolated, paper but a series of better papers that yield a nice 'contribution'.

<comment><USER27> You misread the article. He is not recommending that students solve every exercise; he's recommending the exact opposite.

<comment><USER26> No, I'm correct: He set up an extreme straw man to knock it down. I clearly agreed that his extreme straw man is foolish. There is a common reason students fall for his straw man: They are concerned that if there is an exercise they can't work they are missing something important. My advice was, instead, for a very diligent student, to solve 90-99% of the exercises and just let go of the last few as illposed, stated in error, out of place, use the Internet, etc.

To do just the "opposite" of his straw man is not good -- for solid foundational material, Halmos, Rudin, Royden, etc., the exercises are darned important. Right the Rudin exercises where have to consider uncountability are not so good. The Royden exercises on upper and lower semi-continuity are a lot of work for a little curiosity but likely won't see again. The Fleming exercise on every bounded linear functional on a intersection of finitely many closed half spaces achieves a maximum value is mis places. Etc. The abstract algebra book I had had an exercise where the student had to reinvent Sylow's theorem; a student wrote the author and got back a letter that the purpose of the exercise was to see if a student could reinvent Sylow's theorem -- bummer, misplaced exercise.

I'm correct.

<comment><USER27> This is a good example of how being correct is completely irrelevant if you can't communicate it well. That said, I still maintain that you're thoroughly misunderstanding the position the OP was arguing for.

<comment><USER14> For the record, I'm saying two things:

1\. I hear about lots of people trying to do every exercise. 2\. I think this is bad if it causes them to quit out of frustration. 3\. I provide some tips on how to deal with frustration, and to know that you're in good company.

</comment></comment></comment></comment></comment><comment><USER28> This is true with many, many things. Very often it is the connections between ideas that yields the deep understanding, not the ideas themselves. Focusing too intensely on a single idea or subject results in not making connections and, consequently, not really understanding.

<comment><USER14> I think that, for whatever reason, people tend to think mathematics is somehow different.

</comment></comment><comment><USER29> "If you're going to get anywhere in learning mathematics, you need to learn to be comfortable not understanding something."

That's true of everything. It's fear and anxiety that prevents a lot of people from learning and trying new things. I keep trying to tell students or family members when they are learning to do stuff on the computer, just right click everything, just google anything you can think of, don't worry about it being perfect, don't worry about breaking anything. You have to hold back showing them the "answers" or else they become dependent.

</comment><comment><USER30> I think this is a good read, although I don't agree with all of it - I'm of the mind that there is immense value in being able to figure out difficult proofs. The process develops your logical ability.

<comment><USER31> _I 'm of the mind that there is immense value in being able to figure out difficult proofs._

Absolutely.

However, the rabbit hole is very deep. Many papers make leaps from one sentence to the next that, if you're not familiar with the field, can take a couple days to figure out. Even then, real world proofs are informal and therefore not air-tight. They're close enough, almost always, but there's a reason why a mathematical proof isn't considered valid unless it's lived for two years under peer scrutiny.

One could drill down to _formal_ proof in the Godelian sense, in which proofs are mere typography and can be checked mechanically, but that's not how most of real mathematics is done and, practically speaking, most of it _can 't_ be done that way and remain useful to humans (like assembly language, it's too low-level for most applications).

<comment><USER32> > most of it can't be done that way and remain useful to humans (like assembly > language, it's too low-level for most applications).

Sincere question (I'm not a mathematician): _why can 't it be done that way?!_

On top of an assembly language you can create a higher level language and on top of that an even higher level one, and _it is airtight_ , it has to be or the code won't compile or will throw a runtime exception, the compiler or interpreter doesn't just "roll a dice" when it comes across and ambiguous statement! You just can't have ambiguous statements, so starting from a "precise" assembler everything else built on top can absolutely be "air tight" at the language level.

(Now concerning what the program actually ends up doing (like something else than you intended), or that sometimes you trade off security for speed and get a buffer overflow, ok, these things happen, but _not at the language level!_ usually, and when they do - like C programs exploiting undefined but known for certain targets compiler behavior this is either advanced malicious obsfucation or random rookie mistakes.)

So explaining the question: why can't one build a higher level mathematical language _bottom up_ , starting from an "assembler" of machine-checkable proof steps and building one or a few levels of higher level human-friendly languages that still map unambiguously to the lower level one?

Just because mathematical language has evolved in a _top down_ fashion, starting with describing proofs in words or symbols derived from words, and then developing more an more precise language and systems, it doesn't mean that one can't go the reverse route, _bottom up_ , an maybe meet closer to the top in a way, so that the resulting new mathematical language will be similar enough to classical one not to scare everyone away, right?

...and the benefits seem _immense!_ Imagine:

(1) replacing years of peer review replaced by machine checking basic correcting (+ some machine testing on huge data samples, for testable proofs, just to be sure there was no bug)

(2) AI expert systems bringing real contributions to math by actually discovering new proofs AND providing them in a language understandable for humans, so humans learn from them and discover new techniques

EDIT+: (3) allowing the development of much more advanced theories, because just as in software you can build much larger systems once you learn how to write more "bug free" code, the actual complexity of the proof could be much larger and maybe new realms of mathematical will become accessible to human understanding once we have a "linguistic aid" to reducing the percent of faulty proofs and the time spent debugging them

<comment> alex-g This is a very good thought. Some current projects are trying to develop computable mathematical foundations in a more structured way. Homotopy type theory ([http://homotopytypetheory.org/](http://homotopytypetheory.org/)) is one example that has a lot of buzz around it just now, but automated theorem proving has been trying to work with higher-order concepts for ages now.

In the classical approach of "compiling" everything into sets/logic/etc., you end up with just the assembly language problem that's being discussed, where all the high-level structure vanishes. In order to do your bottom-up approach instead, one of the things that needs to happen is to make the theory really _compositional_ , so that once you've defined some abstraction or higher-level concept, you can use it in constructions and proofs without having to break the abstraction. You don't need to know - and in fact you shouldn't be able to find out - just how the natural numbers were constructed, as long as they work by the right rules. This motivates the use of type theory to describe mathematical objects, and say which operations are allowed. We want to be able to add two numbers and get another number, but we don't want to be able to intersect two numbers as if they were sets, _even if_ they happen to have been built out of sets.

So I think you are right - or at least, there are plenty of people who agree with you that this is a good idea. It is difficult to _actually_ do, of course, but that's life.

<comment><USER32> > We want to be able to add two numbers and get another number, but we don't > want to be able to intersect two numbers as if they were sets, even if they > happen to have been built out of sets.

Can't we do this in current mathematics?! I mean, no physicist or engineer ever thinks of numbers as sets, even if you are the kind of physicist that reads and understands mathematical proofs.

<comment> alex-g Right, this is how mathematics really works. But formalizations of mathematics may suffer from leaky abstractions. If we prove facts about numbers by compiling them into sets, and then using set-theoretic axioms, we might accidentally make it possible to prove things about numbers that are incorrect or meaningless.

<comment><USER32> Isn't this an abstraction problem that you solve by simply providing an "interface" or equivalent concept or access specifiers in oop like private/protected? All other modules that use the number module for applied math will just see an "interface" (let's call it GeneralNumber - as far as I know there are a few other alternate ways of defining numbers besides sets, right?), and the particular "implementation of numbers as sets".

For more abstract algebras or who knows what, the "numbers module" might also implement another more advanced interface that exposes more of the implementation, a "SetsNumber" interface. If you know have a proof that uses this interpretation of number that is tied to one particular "implementation", then there is nothing incorrect about it leading to weird or "meaningless" results, they would be correct for SetsNumber but not for GeneralNumber (or someone might need to take a good look and see if they can be made to work for GeneralNumber too).

(I know, the words are all wrong, it probably sounds either "all wrong" or like a gibberish to mathematicians that don't also happen to be programmers ...someone should figure out more appropriate terms :) )

And about leaky abstractions, I think they happen a lot in software because of the tradeoffs we make, like 'but we also need access to those low level stuff to tweak performance', 'but we need it done yesterday so it's no time to think it through and find the right mode' or 'our model has contradictions and inconsistencies but it's good enough at delivering usable tools to the end- user, so we'll leave "wrong" because we want to focus on something that brings more business value right now' etc. Also, there's a biggie: for some problems using no abstraction is not good enough (initial developing/prototyping speed is just to small), but if you figure out the right abstraction it will end up being understandable only by people with 'iq over n' or 'advanced knowledge of hairy theoretical topic x', and you can't hire just these kinds of people to maintain the product, so you knowingly choose something that's leaky but works and can be maintained by mediocre programmers, hopefully even outsourced :)

<comment> alex-g Yes, the interface idea is basically the right thing, but there are technical difficulties which aren't immediately obvious. For example, we'd like to be able to prove that two different implementations of the natural numbers are equivalent (one can do this mathematically, so if our system is going to handle general mathematics then it has to be capable of doing this). So we have to think quite hard about what this "equivalence" actually means. It's not enough to say that they satisfy the same axioms, because in general there can be all kinds of models for some set of axioms. It's closer to say that all number-theoretic statements about numbers-v1 are true of numbers-v2, and vice versa: but you can see that this is starting to get a bit hairy in terms of computable proofs.

A related problem, which speaks to the leaky abstraction issue, is "proof irrelevance". Typically, if I've proved something, it shouldn't matter exactly how I did it. But it turns out to be tricky to make sure that the proof objects in the system don't accidentally carry too much information about where they came from. Sure, you can define a way to erase the details, but you still have to prove that erasing doesn't mess up the deductive system.

None of this is insurmountable, but it's a glimpse into the reasons why encoding mathematics computationally is not trivial.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER33> That's what I tell people around me. Studying math is hard because it makes you feel stupid. You always feel lost, you always feel like you missed so many things when you're starting to learn a new thing, you always feel like your questions are stupid (until you get that the rest of the class is pointless as well).

Especially with talented professors (Lyon 1, France, the professors there are not really good educators, but they are geniuses), they make you feel bad for not understanding things that seem so simple to them.

Studying math is depressive if you take it too seriously.

</comment><comment><USER34> It's strange to hear mathematics described more as a search for art and structure than computation. Unfortunately most of my math education was on the computational/applied side. I'm only getting into number theory and the more esoteric math later in life for fun. As a parent I think we can't let the school system destroy our kids love of math through too much rote learning. We have to make it fun for them. (Same with music btw)

</comment><comment><USER35> Reminds me of this great quotation, which Oksendal places before the preface to his stochastic differential equations book:

We have not succeeded in answering all our problems. The answers we have found only serve to raise a whole set of new questions. In some ways we feel we are as confused as ever, but we believe we are confused on a higher level and about more important things. Posted outside the mathematics reading room, Tromsø University

</comment><comment><USER36> Jeremy, I really appreciate this post and all the _excellent_ content over at Math ∩ Programming. Thanks, and please keep it up!

<comment><USER14> I'm just so happy that I get to read everyone's interesting stories and thoughts in the HN comment threads! HN is really one of the highest-quality places for discussion on the web ^_^

</comment></comment><comment><USER37> Before a few articles of this kind I never suspected there was such depth in Maths.

There's already so much to learn in programming, but I'm sure I'd love to dive in Maths (without the pressure of school like "understand this or you're an idiot").

<comment><USER24> Without that pressure, you won't learn it. :)

</comment></comment><comment><USER38> Loved this post.

FYI, the Andrew Wiles quote is from the opening of an awesome BBC documentary about how he solved Fermat's Last Theorem - [http://www.youtube.com/watch?v=7FnXgprKgSE](http://www.youtube.com/watch?v=7FnXgprKgSE)

</comment><comment><USER39> Heh, I knew this title seemed awfully familiar. Here's the discussion on Hacker News which (presumably) spawned this:

[https://news.ycombinator.com/item?id=7331693](https://news.ycombinator.com/item?id=7331693)

</comment><comment><USER40> Funny, this title is the same as a recent thread on HN: [https://news.ycombinator.com/item?id=7331791](https://news.ycombinator.com/item?id=7331791)

<comment><USER14> That comment received so much positive feedback that I decided to write an article expanding on the idea :)

</comment></comment><comment><USER41> First time I've intentionally kudos'd

</comment><comment><USER42> What's the best way to relearn math?

<comment><USER43> Focus as much as possible on the underlying concepts from any math topic and how they connect to other concepts. Try to boil these concepts down to the most simple, clear form that makes sense to you. Test your boiled down conceptual understanding by applying it to related exercises/problems you haven't tried before and seeing what happens.

For each sub-topic, most math books give you the tools first and then teach you problems they should be used on. Read the problems first, and think how you might solve them (don't expect to figure it out, but if you do, great!). Then, go back and learn the tools, trying mostly discern the "how" and the "why" as opposed to the "what". Math is all about "how" and the "why". As some motivation, whenever a new thing clicks, it is very satisfying! :) But it definitely is a tough process.

Good luck!

<comment><USER44> 'discern the "how" and the "why" as opposed to the "what". Math is all about "how" and the "why".'

Could you pls expand on the diff between the "how" and the "what"?

</comment></comment></comment><comment><USER45> A svbtle article worth reading, deserves an upvote.</comment>


Ask HN: How is the US coronavirus stimulus package (CARES) financed? - <AUTHOR> I can't seem to find any reliable sources on this — is the U.S. selling more debt to other nations (who?)? Is the Fed effectively printing money to finance the stimulus? <comment><USER2> Q: So where does the Fed get its money from?

A. The Fed doesn't print money. It instead creates digital dollar credits that are as good as cash. Many of those digital dollars will not actually get spent and will be deposited back inside accounts at the Fed or at other banks. But if enough of that money does eventually get withdrawn in order to be spent, then that can conceivably increase the demand for actual dollars. If so, the Treasury may have to increase the supply of dollars.

That's where printing dollars comes in. But in this case, it would likely only amount to a small fraction — if any — of the $2 trillion stimulus.

[https://www.cbsnews.com/news/coronavirus-stimulus-package- pa...](https://www.cbsnews.com/news/coronavirus-stimulus-package-pay-united- states/)

<comment><USER2> It's better than printing money...it's digital money...don't worry I'm sure the middle class will pay it's share.</comment></comment>


Thanks to bots social media marketing is doomed - <AUTHOR> http://www.leadsexplorer.com/blog/2010/07/30/social-media-marketing-is-doomed-thanks-to-the-bots

<comment><USER2> You do know that your domain reads awfully like a porn site, in addition to having a home page full of terms that are normally used to boost search engine rankings =)

<comment><USER3> Hey, what do you expect? He earned that "Top 100 Marketing Blogs" badge at the bottom right corner.</comment></comment>


Facebook Has Something Mysterious to Show Everyone - <AUTHOR> http://www.wired.com/business/2013/01/facebook-mystery/

<comment><USER2> The title of the invitation 'look what we are building' clearly calls back to the 'building' of the new HQ by Frank Gehry announced last year for me :<http://techcrunch.com/2012/08/24/facebook-gehry-building/> <http://en.wikipedia.org/wiki/Frank_Gehry>

</comment><comment><USER3> Facebook the company is kind of boring. They have one core product (Facebook) and have built a little around that (chat, advertising), but they really haven't released another core product ever that I can think of.

Kind of reminds me of Google back before they launched GMail which really seemed to alter the company's course and remind the world that "we are more than just a search engine."

I hope Facebook are releasing something new, and I hope it has nothing directly to do with their Facebook site/product.

</comment><comment><USER4> Maybe it's a Firefox OS based phone ... or maybe not. ;) I've read about it some months ago on a chinese blog:

[http://all-multimedia-solutions.blogspot.de/2012/12/facebook...](http://all- multimedia-solutions.blogspot.de/2012/12/facebook-phone-based-on-mozilla- firefox.html?m=1)

<comment><USER5> Zuckerberg has always strongly denied the facebook phone idea: [http://www.telegraph.co.uk/technology/facebook/9537880/Mark-...](http://www.telegraph.co.uk/technology/facebook/9537880/Mark- Zuckerberg-denies-that-there-will-be-a-Facebook-phone.html)

It does appear to be the story the aussie media is running with though

<comment><USER6> IIRC Steve Jobs strongly denied the existence of a phone and/or tablet until ideas announced.

</comment></comment></comment><comment><USER7> Facebook is dying</comment>


PHP Anthem - <AUTHOR> http://shiflett.org/blog/2010/aug/php-anthem

<comment><USER2> > PHP finally has an anthem. This is what we've been lacking.

Right. I don't think that a song was the thing that PHP was lacking most.

</comment><comment><USER3> And we wonder why there aren't more women in tech.</comment>


To Really Learn, Quit Studying and Take a Test - <AUTHOR> http://www.nytimes.com/2011/01/21/science/21memory.html?hp <comment><USER2> Here's one example of this kind of phenomenon. If you really want to understand a question, write a paper about it. It's easy enough to read five or ten research papers in an area, and if you do that thoroughly, and write extensive notes as you do so, you'll start to feel that you understand the area and the issues involved.

However, if the way you learn is much like mine, when you try to start writing you will realise that you haven't grasped it with anything like the fullness that you had thought. Start writing anyway: you have a bibliography, and hopefully you have a rough idea of the thesis you want to defend. Write the literature review sections. Sketch outlines of arguments, and then try to take them apart. Find counterexamples. If your position has any merit, you will eventually figure out some convincing arguments. Flesh them out: write a first draft, as rough as you like. Improve it by smoothing out poor phrasing and removing extravagant, unsupported claims (it may only be obvious once you've written them that this is what they are).

After some time you will have a reasonably presentable paper. More than that, though, you will actually understand the issues: how the various ideas in the field fit together, why you really disagree with some of the papers you've read, and perhaps even what your own take on it is. It's hard work! But writing is what makes the difference. If you just read a lot you can come away with the misapprehension that you understand the field, when in reality you just know a lot about what people have written.

<comment><USER3> I think you're spot on. You don't really understand something unless you can explain it to an interested yet uninformed outsider.

<comment><USER4> I think the strength comes from being forced to defend your positions. Any paper worth its salt anticipates and defuses most likely objections. It really does force away any areas where one might have hand-waved.

I think (as someone else mentioned too) teaching is generally good because one never knows where and when a challenge may present itself, but I'd suspect a paper gives deeper results, whereas teaching gives broader results, and both give more than study with neither.

</comment></comment></comment><comment><USER5> ARGH. The title completely ignores the fact that the experiment-subjects that retained the information the best DIDN'T just take a test, they also retrieved it from memory and wrote what they knew. THEN they were tested on it.

Horrible, horrible summary.

A better title might have been "What they say is true, Read, Write, [Recite] - Then you'll test well."

That is: "Read the Source Material - let's say a chapter of 10-15 pages. Close your book. Meditate on it for a minute or five. Now, without looking at the source material, write a one or two page summary of the material. Review your summary. Now, without looking at either the book, or your summary, verbally summarize the chapter."

It's the foundation of every study plan I've ever seen - and the NYT article goes off on this "Just take a Test" tangent that isn't even supported by the observations they make.

<comment><USER6> This entire article is so full of that kind of crap - full of baseless insinuations and twisted meanings - it completely infuriates me.

With the influx of recent NYT articles on education I'm nearly convinced the NYT is purposely trying to sabotage education (or rather they have a clear agenda, which I wish I knew where came from, that they are pushing through by twisting other people's words).

As you say, retrieval practice is absolutely fundamental. Every person does it! Studying doesn't comprise of one method - concept mapping or repeated study - it's a combination! What kind of ridiculous study was this? Also, the article makes it seem like all experts purport 'concept mapping' as the "holy grail" of learning, that's it, nothing more.

The test obviously assisted by assisting in organizing and structuring the information for them, in addition to highlighting key points from the readings. Also, the article never mentions what type of test they were taking. Multiple-choice? Essay? Short answer? Verbal? None of the above? That information would be the single most important piece of this article.

To me this article seems to simply highlight how poor students are at understanding how they themselves learn and think.

What NYT seems to want you to think: Test taking is the best way to learn. Forget in depth studying techniques or figuring out how you yourself learn.

More of the truth: Tests (depending on how they are set up) are useful in assisting with learning in various ways, and super useful in providing feedback and assessing where a student is and what to focus on in the future.

<comment><USER7> _What NYT seems to want you to think: Test taking is the best way to learn. Forget in depth studying techniques or figuring out how you yourself learn._

I had the opposite reaction. I figured the writer had been so indoctrinated into the view that "teaching to the test" was evil, bad, and wrong, that when a positive result popped related to testing, just that one point alone became the "news" hook of the story.

Hmm, in looking at her list of past articles, it appears the author mostly covers the medical beat. Perhaps it's a case of a "helpful" editor spicing up the story with a more controversial headline.

<comment><USER6> Interesting. Wow, she's written over 1000 articles.

The problem I have with it is exactly what you're saying. Perhaps she is indoctrinated with the view that "tests are bad". Regardless, it is a popular view and a spicy topic. What bothers me is that this article seems to have a blanket "no, apparently tests are good" tint. Do you agree? The study seems to have absolutely nothing to do with that in particular, and the findings really don't either.

I do definitely agree that the writer sounds indoctrinated. The first sentence of the article shows signs: "Taking a test is not just a passive mechanism for assessing how much people know, according to new research."

This sentence makes me think that the purpose and end of tests is assessing, rather than a means to gather information to enable better learning in the future.

</comment></comment></comment></comment><comment><USER8> This is how I got through University. As I read my textbooks I wrote out every main point as a question. At the end of my reading I would have a huge list, and when I could answer them all I would finish studying.

Never failed a test, or was ever forced to stay up late "cramming" for an exam.

</comment><comment><USER9> We retain (1):

      10% of what we read

      20% of what we hear

      30% of what we see

      50% of what we hear and see

      70% of what we say

      90% of what we teach

I used to lecture at a college. After learning about this the answer for me was like duh...

I made my students teach my classes.

(1) Edgar Dale, Audio-Visual Methods in Teaching 3rd Edition. Holt, Rinehart, and Winston (1969)

<comment><USER10> When I was a kid, whenever I was learning about some aspect of computing, I would have a running monologue in my head about how I would explain this to someone else, to the point that I would write out on a piece of paper an explanation of e.g. an adder composed out of boolean gates, or of how 2's complement made negative numbers work, out of sheer enthusiasm for what I was learning.

</comment></comment><comment><USER11> This is certainly true of physics or mathematics. You can read all the textbooks you want, but you can't claim to understand those subjects unless you sit down and actually solve some problems or prove some theorems.

<comment><USER12> Ditto for programming.

</comment></comment><comment> s-phi-nl "What I cannot create, I do not understand." -- Richard Feynman

</comment><comment><USER13> Here are a few links that I've found helpful in learning about this strategy, number 4 is my favorite.

[1] Will that be on the Test?

[2] The Power of Testing Memory

[3] Practicing Information Retrieval is key to memory attention, study finds

[4] Close the Book. Recall. Write It Down

[1] [http://www.linguistics.ucla.edu/people/hayes/Teaching/2006_R...](http://www.linguistics.ucla.edu/people/hayes/Teaching/2006_Roediger_Karpicke_Review.pdf)

[2] [http://www.linguistics.ucla.edu/people/hayes/Teaching/2006_R...](http://www.linguistics.ucla.edu/people/hayes/Teaching/2006_Roediger_Karpicke_Review.pdf)

[3] <http://news-info.wustl.edu/tips/page/normal/11091.html>

[4] [http://chronicle.com/article/Close-the-Book-Recall- Write/318...](http://chronicle.com/article/Close-the-Book-Recall-Write/31819)

</comment><comment><USER14> You have to know what you don't know. In other words, you need a sense of the gaps that exist in your knowledge and then fill those gaps. This is a side effect of...

<http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect>

... and a key part of continuing education in any field. The best way for students of any age to grasp this is to take practice tests. Look at what you missed, and go fill in that gap. A similar method it to look at a completed project or paper and wait for the aha moment, "I didn't know you could do that." Then you go find the answers.

</comment><comment><USER15> I'm not sure this is a new finding. I believe it's called the rehearsal or retrieval effect. I recall reading about it in a textbook about learning theory a decade ago.

It's the basis of the study/summarise/recall/revise method.

</comment><comment><USER16> Recalling information is not necessarily learning. That 'drawing-relation- diagrams' method contributes more towards understanding in my view.

Also this is very limited in domain. As an example, here in India students learn English for an year or two before appearing in MBA examinations. One common observation is that many students do thousands of comprehensions and unseen passages but still stand nowhere in the 'reading between the lines' part, which is essentially, understanding. They spend all the time testing themselves, whereas 'testing' should follow after 'acquiring the knowledge'.

<comment><USER6> That's how it works in Japan too. Kids study English for 8 years and aren't able to speak a word or make basic linguistic connections.

And it's all based on study and test taking.

<comment><USER17> Sadly, that's most of second language 'learning' in public schools in most places around the world.

<comment><USER18> Almost everyone I've met from the Netherlands is fluent in English, and has a better grasp of English grammar than many Americans. I wonder why their result is so much better than the Japanese. There could be many reasons for this, including that English and Dutch are much closer than English and Japanese, that the Dutch have more contact with English-speaking people and media, or that the Dutch schools have a better way of teaching language than the Japanese schools. I've also found this to be the case with younger Germans.

</comment></comment></comment></comment><comment><USER19> _It may also be that the struggle involved in recalling something helps reinforce it in our brains._

I think something happens here, it's like you send your mind a command: "You didn't memorize that thing, huh? Okay, be careful next time, this is needed for the test".

Notice that when you read the next time, it's kind of your mind is prepared to put that information somewhere, in a manner that it can be retrieved later by the exam.

</comment><comment><USER20> That explains why I improve so much rewriting programs from scratch many times. Until it comes out naturally you have to do a lot of effort, which seems like a waste of time but...

</comment><comment><USER21> Man, ionfish beat me to the punch. Things I learn best, are things that I put into practice or write about. Things that I have an opinion about usually form some sort of dialog that I consider to be analogous to writing. This has been the case for me in every subject imaginable. Politics, math, science: all things that are conceptual with ideas. I know that history encompasses ideas, but rout memorization of facts has never appealed to me. Writing about a time period or such requires not just that I know the facts, but that I recall them, restructure them and express them in my own words. Even if it's just filtering through a couple extras areas of my brain, it makes a huge difference in my ability to remember important facts later.

I've never tried to pay attention to my knowledge before and after a test, but I've taken too many tests that I didn't feel accurately represented the material to be leery of offering as much praise as the NYT does.</comment>


Worked Over and Overworked - <AUTHOR> http://www.nytimes.com/2008/04/20/business/20workexcerpt.html

<comment><USER2> ++</comment>


Coming to Elixir from TypeScript - <AUTHOR> https://www.papercups.io/blog/elixir-noob <comment><USER2> I found that my JS experience made a lot of Elixir feel very familiar (lambdas, destructuring, default args, string interpolation, optional typing).

And compared to Node, the BEAM is a godsend in terms of its non-blocking process scheduling and fault isolation. A single uncaught exception in Node and kaboom. Plus, if you do anything cpu intensive with Node, your app stalls. In the BEAM, infinite loops are even fine due to time slice scheduling.</comment>


Ask HN: Best wiki/notes app for a couple of developers to share notes? - <AUTHOR> Which wiki or notes services or apps are the best for a couple of developers to share notes about various projects? <comment><USER2> As you're developers gollum may work well: it's backed by a git repo so you can edit locally and/or on a shared server.

Gollum is what powers GitHub wikis.

<comment><AUTHOR> This definitely seems promising for what I'm looking for. Thanks!

</comment></comment><comment><USER3> What size and what lifetime?

If you want something that is about 2-5 pages long and is only actively updated for 3 weeks then archived, Dropbox Paper works well for the 8 months my team has been using it.

<comment><AUTHOR> Size would be fairly small, but the lifetime would be at least 8 months. Thanks for the suggestion!

</comment></comment><comment><USER4> Workflowy seems nice.

[https://workflowy.com/demo/embed/](https://workflowy.com/demo/embed/)

<comment><AUTHOR> That's really neat! Thanks for sharing!

</comment></comment><comment><USER5> Mediawiki, dokuwiki, meemo

<comment><AUTHOR> I hadn't heard of meemo before. Thanks!</comment></comment>


Dr. Michio Kaku: Leave Tokyo - <AUTHOR> http://www.youtube.com/watch?v=vXDEEq_W2vo

<comment><USER2> I hesitate to comment on a post that I do not think belongs on HN, but I am doing so to point out that the title is incorrect and sensational. I watched the video because I live near Tokyo and respect Dr. Kaku. He did not recommend leaving Tokyo in this video. He said that some of his family are wondering about evacuation while others have already left. He said that a lot of people have voluntary left because they do not trust the government.</comment>


The Interpretive Advantage [video] - <AUTHOR> https://www.youtube.com/watch?v=-6no6N3i9Tg <comment><USER2> "Dyalog '18: The Interpretive Advantage"

> Common wisdom is that compiled languages are faster, full stop. However, by > testing data for common patterns at runtime, Dyalog can sometimes perform > ordinary programming tasks many times faster than well-optimised C. Marshall > explains some of the ways in which Dyalog allows a programmer to get the > best performance of several different implementations while writing just > one, and discusses how deferred execution might make this method even more > powerful in the future.

(Why omit the most distinguishing part of the title!?)

</comment><comment><USER3> This clearly can happen.

If we throw away all the usual abstraction constructs, and model a program as a way to instruct the machine to perform certain actions. Then there is a huge spectrum of available tools to realize this program.

As often the case, such problem is computationally intractable. Then all sorts of different approaches: static vs. dynamic typing, compiled vs. interpreted, different flavors of languages features, etc. can all affect the end results. Then it's entirely possible that a static language like C is not close enough to the optimal result, such that a different approach can be faster. It happens to be an interpreted language in this case.</comment>


R Package to Control Fake News in Twitter and Facebook - <AUTHOR> https://CRAN.R-project.org/package=MIDASwrappeR <comment><AUTHOR> This is an R wrapper around the C++ implementation [https://github.com/bhatiasiddharth/MIDAS](https://github.com/bhatiasiddharth/MIDAS)

MIDAS can help social networks like Twitter and Facebook detect fake profiles used for spam and phishing in real-time, at a speed many times greater than existing state-of-the-art models.

<comment><USER2> Is there a Python library for this as well?

<comment><AUTHOR> Yes, there is a Python implementation available. MIDAS has also been converted to Rust and Ruby. Please check out the Github page for the links.</comment></comment></comment>


Golden rice could save children. Until now, governments have barred it - <AUTHOR> https://www.washingtonpost.com/opinions/2019/11/11/golden-rice-long-an-anti-gmo-target-may-finally-get-chance-help-children/ <comment><USER2> What a huge conspiracy, the Washington Post even bars my view of the discussion</comment>


Professional Decline Comes Sooner Than People Think - <AUTHOR> https://www.theatlantic.com/magazine/archive/2019/07/work-peak-professional-decline/590650/ <comment><USER2> I think this is a bs pseudo-science article. Instead of saying it's an age decline maybe just say that it's very rare to do the same thing progressively better for more than 20 years. Therefore instead of viewing life in progressive terms, view it in cyclical terms. At some point you have to start over at the bottom. For some reason people at age 50 develop a snobbery that prohibits this — they must keep on doing the same thing they've always been doing or they would rather do nothing. That's nonsense. Ask any entrepreneur who starts over — and they'll tell you how they've done it so many times it's as natural as walking. And by the way I bet those are the same people who are still active professionally well past their 60s. Telling people they can't do something after a certain age is just a self fulfilling prophecy of psycho- babble. People already feel this way - so what is the point of perpetuating it?

</comment><comment><USER3> A good reason to seek financial independence early - then at least you have some time to find what gives your life meaning and makes you happy.

<comment><USER4> Yeah, I have this exact same opinion. I saved more than 50% of my take-home pay and retired when I was forty. I'm happier than ever, and can't figure out why my former colleagues didn't do the same and are still going to a cube every day.

<comment><USER5> Age comes faster than people expect. People say they will start saving later, turn around and they are already 35 (Or older) and later came sooner than they expected. I'm 33 now and have been saving like you since I was 28, but I only had that realization of how fast time moves because until 27 I was trying to be a professional athlete. One day I woke up and realized it was too late for that dream and I didn't want the same thing to happen with retirement.

</comment></comment></comment><comment><USER6> > Though the literature on this question is sparse, giftedness and > achievements early in life do not appear to provide an insurance policy > against suffering later on

ISTM it's more a guarantee of suffering later for a lot of reasons, aging out of wunderkind territory, a realization that there isn't enough time left to beat the unbeatable foe, and for the pro geeks our industry's rampant ageism.

</comment><comment><USER7> In the 1950's, they were telling us cigarettes are good for us (not me, I came to be in 1979) because n doctors are also smoking it, etc etc. Check the ads from that era and you will find their persuasive arguments to be similar to what we have nowadays for certain other things.

Then also before this was Pasteur and his flawed germ theory. So they began boiling milk until it turned into something useless if not downright harmful. (Milk stops being milk when you boil past 70 Celsius).

Fastforward to early 80's: they began telling us fat is bad for us (it is not, check Eric Berg on EWEtube). So sheep that most people are who need to be told what is good or not, they wrongly assumed sugar was safe, since nobody said sugar was bad. That is also why you have low-fat milk and other such nonsense.

Further down the historic line, various fads appeared. Sexy girls wrote books on how meat is dangerous and persuaded the gullible that since the cattle are being pumped all sortsa chem, so being a vegan is the right healthy thing to do.. (flaw: just cuz there is bad meat doesn't mean all meat is bad or veganism good, check the death rates of young Vegans dropping like flies on catwalks).

So my point is that along come so many experts and tell us so many false things, that it becomes difficult to navigate the noise and latch on to useful signals. One such noise is the article, which extrapolates an anecdotal or Personal observation as true for all people.

To make it sound scary, they even add "professional" decline, with all the menacing undertones it carries. I know there is nothing wrong in preparing for older age, and for some it can be faster than for others due to so many factors (such as aluminum consumption which causes dementia and doesn't exit the body--good ole Al lodges in the brain cells).

What is wrong with this article is scare-mongering and becoming a cry-wolf story rather than an intellectually valid, science-backed article.

But then what do you expect of some journos. (No offense to ALL journalists). They get paid to scare us, so that our Amygdala shrinks and we make hasty and wrong decisions, or simply freeze our brain's plasticity. Even if what I just assumed is unintentional, it still just as harmful.

Of course, there is nothing wrong with using scare as a tactic as long as a positive side is presented so that the brain sees a balance and the Amygdala doesn't shrink. But merely scaring people is unfair. It may even work as a Placebo and cause people to decline faster given that the newspaper already primed them for it. Smh.

</comment><comment><USER8> An entire article about mental and physical decline with age that didn't mention exercise, nutrition, or diet is just a fluff piece. We all know that age will eventually slow us down, but 1) we want to know why and 2) what can we do to slow _that_ process down.

Check out Peter Attia sometime for someone who is thinking about this topic and working on actual strategies. [https://peterattiamd.com](https://peterattiamd.com)

<comment><USER9> Eat healthy, get adequate sleep, and regularly exercise? There's also things like wearing sunscreen, but that's more to prevent premature aging, not regular aging.

<comment><USER10> Specifics matter. Better to do aerobic workouts before you do cognitive work and heavy weightlifting at night because heavy weights help you sleep better. Nutrition for cognition is a tricky business too and there are a few dozen other important factors in sleep.

<comment><USER9> If I do an ample amount of physical exercise -- whether it's weight training or cardio-focused -- I tend to find I sleep well at night, whether the physical exercise is done earlier or later in the day. Not to say your suggestions aren't more optimal, but at some point, you reach diminishing returns.

If you're getting 8 hours of sleep, and eating lots of fruit/vegetables and exercising 4-5 times a week, 30 minutes each time, there is only so much more you can do for maximizing your wellness.

</comment></comment></comment></comment><comment><USER11> I'm 21 and I still hated this article

<comment><USER12> I'm 37 and I found it had an optimistic tone, not a dire one.

</comment></comment><comment><USER13> I enjoy how it is thinking constructively about planning a life after the 'peak' times. The football player becoming a coach or referee rather than simply sinking into obscurity. My only criticism is that the messaging seems a little dire. It's not like your brain disappears at 50.

</comment><comment><USER14> Eric Schmidt recently tweeted this article [https://twitter.com/ericschmidt/status/1143904558663389184](https://twitter.com/ericschmidt/status/1143904558663389184)

</comment><comment><USER15> Brutal and depressing. Might as well just end it all at 50. None of the spiritual mumbo jumbo resonated with me at all. What's the point of going on if you can't contribute?

<comment><USER16> We're on a rock flying through space. In that context, what does contributing even mean?

<comment><USER15> In that context, it means nothing. However, I do not live in that context, I live in a society and inside my own head, and this is what generates an idea of contribution and happiness.

> We're on a rock flying through space.

I have never understood this phrase as anything more than a platitude to make people feel better. Anyway, don't mind me. It has been raining all week and I think it's affecting my mood.

<comment><USER16> > However, I do not live in that context, I live in a society and inside my > own head, and this is what generates an idea of contribution and happiness.

Right. This just happens to coincide with a shift in my life, where all the old contexts from my youth are meaningless, and I need to find new contexts.

So if there is no such thing as contributing, then the contributing you used to do only mattered because of a context you (or I) constructed to find important.

I don't think the right answer is to say, "Nothing is important." I think the right answer is to relentlessly seek for a new context to find important, to give meaning to our own life.

</comment></comment></comment></comment><comment><USER17> The title has been changed from the original. The original title is "Your Professional Decline Is Coming (Much) Sooner Than You Think"

<comment><USER18> The submitter used the document title of the article instead of the h1, which is fine in general. We've just updated it since the header seems a bit clearer.</comment></comment>


Show HN: PlaceGuitar - my weekend image placeholder project - <AUTHOR>

http://www.placeguitar.com
My weekend project is, as you may have guessed, an image placeholder service that serves up guitars! The inspiration came from a tweet (http://twitter.com/#!/zedshaw/status/88126558686019584 ). I decided to hack it together using Python on Google App Engine. The service is simple - pass in your width and height in the url (e.g. www.placeguitar.com/800/600 to get an 800 by 600 image) and get back a random image of a guitar to your size spec. Pop the url in the src of your img tag to use it on a site. That's all it does. There is a quick and dirty admin only form to upload images.
The only real challenge was deciding how to scale images. GAE doesn't let you ignore aspect ratio when you resize images which was my original plan for a quick prototype - obviously this wouldn't be very elegant because images would have been distorted for anything that didn't respect the original image's aspect ratio. I settled on scaling to the best approximation and then cropping to centre.
The code is on github (https://github.com/poissonpie/Place-Guitar) if anyone is interested. I only tinker in Python now and then so I don't expect it to be all that elegant.
I would love any feedback on any aspect of the project.
Thanks for looking. <comment><USER2> Very neat idea and nicely done. Small bug - <http://www.placeguitar.com/800/600> works but <http://placeguitar.com/800/600> just redirects to the site.

<comment><AUTHOR> Thank you! and well spotted.....google app engine + naked domains are a little annoying to get going - I'll look into it.</comment></comment>


Ask HN: Where to hire freelance web/app developers without a annoying middleman? - <AUTHOR> Hey HN,<p>I'm asking on behalf of a friend who is seeking to hire someone for their project (i'm a dev but i work full time) and i've always been curious as to where to actually suggest. I know Upwork/Freelancer is just a no and it's also something he does not want. All i'm aware of so far is Reddit. Would love to know of any suggestions. Thank you! <comment><USER2> > I know Upwork/Freelancer is just a no

Why? I find people on there. I think you need to choose carefully, put them on smaller jobs and fire fast. I find trying to work through issues never works. As soon as they show lack of ability/attention to detail etc they go unless you've really established a relationship and know its a one off. I would guesstimate every 5 or so people you find someone good and keep using them.

<comment><USER3> How much effort do you put in to the filtering/screening process? Or do you pick quickly and see how they do on the job?

<comment><USER2> Probably more effort than most... I look through profiles, their skills, stats and reviews and contact directly. I never (after doing it in early days) post jobs and see who replies. Worse, these days you get spammed with junk. People even track your email/Skype down and contact you directly.

</comment></comment></comment><comment><USER4> We're building MoonlightWork.com to not be "annoying middlemen". We don't take a cut of payments to developers, we don't manage projects, and we don't intermediate the relationship between companies + developers. Companies either pay a subscription or a flat-rate fee if they convert a contractor to full- time. Send your friend over!

</comment><comment><USER5> There's a monthly HN thread for freelancers.

</comment><comment><USER6> You can check Craigslist > services > computer

Alternatively you could find someone on Fiverr

Or potentially you can try me. I've been a professional .NET developer for about 10 years but recently I decided to stop programming as a job but I am kind of looking at part-time and freelance stuff.</comment>


Ask HN: What is a simple tool for parsing and analyzing log files? - <AUTHOR> Hi there,
I have a small app (frontend, backend, database) with <100 users. I would like to use my log files to analyze basic metrics, like for example
 - number of requests
 - number of comments created
 - number of shared links per unit of time.
All of this runs on one single server, no big infrastructure, no big data. I am unable to find a SIMPLE tool to collect my logs in some way, parse them, and visualize them in histograms for example.
I know there exist ELK stack, Splunk, Graylog and many others, but all these solutions are much too complex. Especially I do not want to spend weeks setting this up correctly. Further more, most of these solutions need an extra server for aggregating the logdata in some timeseries db.
I would be very happy if you know about any opensource tool which can do this job. <comment><USER2> I've had luck with [https://goaccess.io/](https://goaccess.io/)

example: goaccess logfile.log -o report.html --log-format=COMBINED

<comment><AUTHOR> Now this looks really interesting and could be exactly what I was looking for. Many thx. Will check it out now.

</comment></comment><comment><USER3> Maybe checkout LNAV: [http://lnav.org/](http://lnav.org/)

There's also angle-grinder, which has less features, but also pretty useful: [https://github.com/rcoh/angle-grinder](https://github.com/rcoh/angle-grinder)

</comment><comment><USER4> Grafana´s Loki may have a lighter weight than the other examples you gave above.

For some kinds of logs there are tools for summarization and reports (like awstats for web or pflogsumm for mail servers).

And, of course, for particular queries on existing logs the standard text tools in a linux box let you generate a lot of info.

<comment><AUTHOR> Grafana Loki was the one I really tried out. To be honest, I had the impression that this is still a bit alpha. You can work around a few shortcomings by reading from loki as a prometheus endpoint, but I experienced a few things in the data which were strange, and I could not observe when double checking the logs.

While it is true that the server footprint of promtail for collecting and pushig logs is much smaller, you still have to setup your loki sever for data aggregation. I spent nearly a week on the setup of promtail, loki and grafana and wasn't quite satisfied with stability and the end result. Of course this could be due to my limited experience considering log query language, time series db, prometheus, ... But overall I had the impression that what they aim for is quite similar to an optimized ELK stack.

</comment></comment><comment><USER5> For web logs, I still use Webalizer. For everything else, as long as we are not talking tens of gigs, I'll be using some mix of Perl, Python, Shell, Awk, etc.

</comment><comment><USER6> Syslog + something to massage the data (sh/awk/sed, perl, python)? Like we've been doing for simple apps for decades?

<comment><USER7> It's even simpler today with systemd, you can write stuff like:

        journalctl -u nginx --since yesterday

<comment><USER6> That's not simpler than 'cat /var/log/messages' or the equivalent, if for no other reason than you still need something to digest/summarize the output. It's just different, mostly for the sake of being different, but I'll not bait the systemd fanbois any farther.

<comment><USER7> It's simpler in the sense that journalctl already provides some filter options that you no longer need to build yourself.

There are a lot of people that use OS with systemd, but only a small part know about journalctl. I took this opportunity to spread this information.

<comment><USER6> The bastard in me wants to say "once again systemd and its ecosystem reinvent something that the Unix Way already solved decades ago, just in a different way".

But in reality, thanks for the tip. I used your example today to look into an issue I'd have otherwise been cussing "where's the damn logs!".

</comment></comment></comment></comment></comment><comment><USER8> pandas?</comment>


Neo-Luddism - <AUTHOR> https://en.wikipedia.org/wiki/Neo-Luddite <comment><USER2> What about long term human survival? Without technology, spreading into space would be impossible.

<comment><USER3> I seriously wonder if we won't nuke each other (or destroy the environment, etc) before we're able to spread in any appreciable way.

Technology is definitely a two-edged sword.</comment></comment>


Pit: An F# to JavaScript Compiler - <AUTHOR> http://pitfw.posterous.com

<comment><USER2> I was sad to look at the samples and see for loops. That's not the functional way. Instead you use recursive methods with accumulators. Nevertheless, glad to learn of this project.

<comment><USER3> Those samples are only for demos which we wanted to quickly do (had to prep up something to get it up we were quite stuck with cleaning up the libraries). We would be adding more "functional" samples later on.

</comment></comment><comment><USER4> Possibly also of interest in this context:

* <http://www.smlserver.org/smltojs/> \- SML to Javascript * <http://ocsigen.org/js_of_ocaml/manual/> \- OCaml to Javascript

</comment><comment><USER5> Is there any popular language, video/audio codec or CPU instruction set that _isn't_ compiled to Javascript these days?

<comment><USER6> JavaScript.

<comment><USER7> No, I'm pretty sure I saw a JS interpreter written in JS here on HN awhile back. Can't seem to find it, though.

</comment></comment></comment><comment><USER7> Too bad this is for F# and not real OCaml. Why do open source coders continue to support patentware?

</comment><comment><USER8> Exciting webpage.</comment>


Retina Monitors - <AUTHOR> https://www.caseyliss.com/2017/5/17/retina-monitors <comment><USER2> He does briefly mention it, but unless you have a fairly modern macbook/mbp you may not be able to push 4k@60hz even with a DisplayPort cable.

[https://support.apple.com/en-us/HT206587](https://support.apple.com/en- us/HT206587)

</comment><comment><USER3> Seems like thinly disguised affiliate link spam.

<comment><USER4> > As with all posts on my site, I've used affiliate links where possible. As > with all posts on my site, these thoughts are 100% mine and are not paid > for.

At least s/he is honest, with "font-size: 60%".

<comment><USER5> ... at the very end of the page, out of sight when you are viewing the bit with the affiliate links. Respectable sites would mark the links, perhaps putting an asterisk by them, to show that there is a footnote applicable.

<comment><USER6> Can you name a few respectable sites that actually do this?

<comment><USER5> www.moneysavingexpert.com does this, for instance. As well as the '*' by links, they also have a better description at the bottom of the page explaining the affiliate links, together with direct links for people who don't want to use the affiliated ones.

e.g. [http://www.moneysavingexpert.com/insurance/cheap-travel- insu...](http://www.moneysavingexpert.com/insurance/cheap-travel-insurance) (a big page, but look at sections 14 and 16 for link examples)

</comment></comment></comment></comment></comment><comment><USER7> I use 27" 4k monitors with macbook pros running at 5k retina scaled down to 4k and it looks FINE. It doesn't look as good as 5k, but WAY BETTER than non- retina. For about the third the cost, you get about 2/3 of the benefit.

</comment><comment><USER8> I must admit I am a regular reader of this site and I listen to his podcasts also. I have always enjoyed it so I don't get why people here on HN are trying to bash him for having affiliate links even though he is being completely transparent about it.

Take the time and enjoy his content and see the positive side of peoples effort on the web.

Last time I checked good equipment to do podcasts and also hosting a site does have costs. Whats wrong with affiliate links if it helps support your effort.

<comment><USER6> Yeah it's also not like he submitted this link himself.

Commenters here will fall all over themselves to explain away any number of idiotic things but a seemingly decent guy has a few affiliate links in his blog and it's like the end of the world.</comment></comment>