Live data from Hacker News

Patterns in Confusing Explanations

jvns.ca

121–130 of 168 posts

Re: Patterns in Confusing Explanations

#121
> pattern 4: fun illustrations on dry explanations

Or an arbitrary unsplash landscape photo with a tenuously related caption. Why do people do this? Is it to stretch the content, or just a fad? Surely there's a different way to break up long text than adding visual noise.

Re: Patterns in Confusing Explanations

#122
post #78
post #48

One tip I picked up a while back is to be aware of the number of `it`s and other pronouns used. I realized that when my explanation were getting lengthy, I was tempted to avoid duplication by referring to previously mentioned nouns as `it`s, `they`s etc. This practice led to some very confusing sentences, where each `it` meant a different thing. My explanations got noticeably clearer once I started replacing the pron…

On the topic of low-level tips: IMO it helps to always try to read one's writing as if speaking it out loud. If the text doesn't flow well when spoken, then it's not good. Like, long-winded parentheses in the middle of a sentence are not good. Sure, the text won't look like those highbrow publications where you flex your mnemonic palaces just to remember what the sentence was about when it started—but at least actual…

For a long time I've tried to speed up my reading my turning off the `sub-vocalizing' machine in my mind, only to realize that sub-vocalizing actually helps understand the meaning of technical/math texts better.

On a relevant note: There was a post on HN a while ago which basically was about how using language (and probably, speaking out loud) is actually a `feature' or `technology' of human mind. For long, we have been mocked for speaking our thoughts out load, but turns out, it in fact helps organize thoughts and get to more logical conclusions, free of the `fluid' logic-space of the silent mind. Ironic because sometimes I'm fed up with the load rush of thoughts in my mind.

Re: Patterns in Confusing Explanations

#123
post #56
post #48

One tip I picked up a while back is to be aware of the number of `it`s and other pronouns used. I realized that when my explanation were getting lengthy, I was tempted to avoid duplication by referring to previously mentioned nouns as `it`s, `they`s etc. This practice led to some very confusing sentences, where each `it` meant a different thing. My explanations got noticeably clearer once I started replacing the pron…

It can also be used to make text easier to understand, for example: The client connected to the server, then it crashed vs The client connected to the server, then the server crashed.

It's an interesting example to confuse most advanced `AI's. They just don't understand what `it' refers to in the first sentence.

Re: Patterns in Confusing Explanations

#124
simple examples, jargon-free sentences, too many concepts while explaining a concept, concept explained without an example, unrealistic examples, not explaining why we do something in the place and jumping into explaining them.... If there is a technical book free of all these anti patterns I am buying it :)

Re: Patterns in Confusing Explanations

#125
post #48

One tip I picked up a while back is to be aware of the number of `it`s and other pronouns used. I realized that when my explanation were getting lengthy, I was tempted to avoid duplication by referring to previously mentioned nouns as `it`s, `they`s etc. This practice led to some very confusing sentences, where each `it` meant a different thing. My explanations got noticeably clearer once I started replacing the pron…

That is why scientific papers have so much "let x be ..."

Legal documents do this as well (albeit in different language, typically at the top of the document).

Re: Patterns in Confusing Explanations

#126
post #61

My long-standing annoyance with software documentation is when people don't see that tutorials and reference are different things. They may have tutorials as the only documentation available ( ahem Ansible cough ), or reference as the only documentation. But in fact, the use-cases for those two are different, so effectively they have different audiences. I don't want to learn a language from a dictionary, and I don't…

In open source the trend unfortunately seems to be toward a Readme.md with a couple of simplistic examples, then you’re left to read the source in lieu of a proper API reference.

I still remember CPAN perldocs as a high water mark for docs. They had specific sections for examples, starting with the summary at the top, and another for proper reference. And more importantly a strong culture of good docs. The examples tended to be close to comprehensive, progressing from simple to complicated problems. Then there would be a rundown of arguments and return values for the key methods.

Re: Patterns in Confusing Explanations

#127
post #59

A lot of this is caused by The Curse of Knowledge : https://en.wikipedia.org/wiki/Curse_of_knowledge That cognitive blind spot causes people to unwittingly write confusing explanations in all domains of life. It's frequently ironic when somebody writes a sentence following the rhetorical template: "Not really sure what the confusion is with . It's really simple. [blah blah blah...] And that's it." Whether it's attemp…

> "monads are like a burrito"

Wait, so a burrito is just a monoid in the category of endofunctors?

Re: Patterns in Confusing Explanations

#128
post #113
post #56

Earlier quoted context omitted.

It can also be used to make text easier to understand, for example: The client connected to the server, then it crashed vs The client connected to the server, then the server crashed.

That's actually an example of making it more confusing. Did the client crash? Okay, it's obvious to you that the client didn't crash (but should it be obvious? Clients can crash too, you know!), but for anyone who didn't make the right inference, or isn't sure, they now have a dangling node in their mental model and are still validating they understood it right as they read the next sentences. If you really can't sta…

Someone tells you "the server crashed" and that's confusing? The list of things that happened after the connection attempt is one item: The server crashed. Unless you think the writer is actively trying to trick you, I think you can probably assume the client's crashing would be on the list if it had happened. It's a good convention to follow because cataloguing non-events is tedious: "I ate breakfast and did not choke and did not have any allergic reactions and my house wasn't hit by an airplane and 57 porcupines didn't try to crawl up my butt and breakfast did not consist of filet mignon nor pizza nor cauliflower nor rocks..."

Re: Patterns in Confusing Explanations

#129

One of my favorite bad analogies is mixins. I came up with this Mixin FAQ to satirize how mixins are often explained. Mixin FAQ Q: What is a mixin? A: Mixin allows to inject functionality into classes. Mixins first appeared in the Flawors system and were inspired by an ice cream shop offering a basic flavor of ice cream (vanilla, chocolate, etc.) with a choice of optional "mix-in" ingredients like nuts, cookies, cand…

https://shoppe24.ph/products/oreo-ice-cream-tub-450ml

You were saying?

I can confirm it doesn't work. But for me Oreo barely works as a cookie.

Re: Patterns in Confusing Explanations

#130

Earlier quoted context omitted.

Man, the bit about neural networks hits close to home. I'd kill for a NN tutorial that doesn't go "Anyway, as you can see, by multiplying the derivative by a small value we can eventually find the local minima of this curve. Anyway, just use these exact tensorflow functions with the parameters we give you and you're all set!"

Have you seen 3Blue1Brown video about it? https://www.youtube.com/watch?v=aircAruvnKk

Yeah, I watched the series a few years ago, and it's still an example of the same problem.

The videos give you a good vibe for what a NN network does, but they still stop at "if you can get the gradients using math wizardry, then you can train your network and do tons of cool stuff!"

Meanwhile, if I had to write a neural network trainer from the ground up (even a very slow CPU one), I have no idea how I'd do it.

Like, I get it! A neural network is a bunch of vector! You change the weights in a way that is similar to finding the low point of a slope! Yes, every damn ML video uses the same metaphors! My question is, how do I actually change the values of the goddamn floats?!

I dunno. Maybe I need to watch the videos again and something will click.

EDIT: Okay, so the last video in that series is way closer to what I was looking for.

Post reply on HN