Hacker News new | ask | show | jobs
by erikerikson 557 days ago
The author is generalizing their preference here to say it's "right". Some brains need this, others need the abstraction before the examples provide the most benefit.

As noted by others this preference influences how one learns code effectively too. It's a pretty basic trait.

The author's stated preference is most common but it is not the only one.

2 comments

Not sure I’m following here. Happen to have a concrete example of when abstracting first is more helpful?
This question seems to bring a frame that implies there is an example that would apply to everyone. I'm claiming such an example doesn't exist but I will try (please note these are overly simplified).

Consider addition...

"We're going to learn addition today"

One approach: "it is combining two quantities into one. For example, 1 + 1 = 2, 2 + 2 = 4"

Another: "1 + 1 = 2, 2 + 2 = 4, you see, we are combining the quantities"

For some of us, getting the abstraction first gives us the mental framing that allows the examples to teach us the most and the alternative feels like noise.

For others, they're not sure what we're going on about until we have given them enough examples so that they can understand the abstraction. They want to generalize off of the examples they've seen.

Neither is inherently right but they have trade offs and we have preferences on this dimension that end up being strong and usually outside of our awareness. Frequently it can not matter if we jump back and forth between concreteness and abstraction.

I don't think this is the distinction being made here. Abstractions may be useful framing, but the author contrasts, after hearing what addition is, are you going to start studying multiplication, or are you going to look at examples of addition. We'd never think about teaching a child multiplication before they know their addition tables. However, in higher level math, and I saw this in uni, it's common to study structures without knowing many examples of them. You can do proofs about groups without connecting any of these proofs to actual examples that show their utility.
Ironically properties of groups were one of the first things to come to mind where working on an abstract level makes sense. You can convince yourself groups are an interesting interface/definition (both with a couple concrete examples plus a fuzzy argument that anything you want to call "symmetries" ought to be a group), but then if you want to understand something like commutators and abelianization, I don't really see any insight from working with concrete groups. The point is more abstract: [G,G] is normal (easy to show), so you can mod it out, and doing so gives you "G but everything commutes" (because you quotiented away all the commutators).

Similarly I'm not sure there's a lot of understanding to be gained from writing down cosets (as in the actual list of set members). It's still necessary to know how to calculate, but the understanding of what you're trying to do comes from the fundamental theorem on homomorphisms/first isomorphism theorem. You'll never get it from looking at cosets, and in some way it's actually a bit of a distraction IMO. They're often kind of just there to prove quotients exist.

Tensor products feel similar I think: actually constructing the tensor product is not terribly interesting and mostly just demonstrates that it exists. Focusing on the concrete definition makes it easy to miss the forest for the trees.

Maybe having given a couple examples, we can extend it to the abstract idea that universal properties are usually more interesting than the associated concrete constructions. :-)

In fact, I taught my child multiplication and negative numbers without running him through a lot examples. He publicly demonstrated the ability to multiply (by multiplying numbers during conversations) before his school ever taught it via drilling (in their case the Singapore method).

I agree about the shift in university. I really enjoyed what felt like a removal of the noise. Of course, the interconnection of the pieces and learning to instantiate the concepts into concrete are expected work of students. That all said, abstraction (or models) are lossy compressions and noticing their failures is essential to avoid becoming detached and/or delusional.

Not disagreeing, and I'm not sure if your comment was intended as a joke, but it's kind of funny what just happened here, if anyone missed it:

"They say you have to use concrete examples, but not everyone needs that."

'Can you give a concrete example of that?'

Indeed, and both a reasonable desire and one of my systemic communication failures. :)
Famously, literacy pedagogy briefly swung towards “memorize lots of english words, and then once you’ve ground on that task for a while introduce the abstract rules of phonics” with disastrous results.
If anything, phonics isn't really abstract, and memorizing probably feels abstract to a young child. It's from the perspective of the learner whether there is a clear, concrete thing to learn or something abstract and general. A child likely isn't just approaching memorizing words as a task for memorization, but rather trying to find out the rules behind the pronunciations and failing. Phonics is what those rules are.
The abstraction can clarify the boundaries and scope.

For example:

  I'm thinking of a *number* between 1 and 10, for example, 3 or 7.

Is 1 allowed? Is 10 allowed? non-integers? Irrationals?

A definition and theorems can seem trivial, if you latch onto the first trivial example and treat it as the canonical situation. This is very common difficulty when learning intro abstract math.

> others need the abstraction before the examples provide the most benefit

Would anyone need examples if they understand the abstraction? They can stamp out their own examples, can't they?

Needing examples after you've a grasp at the abstraction would be like saying 'I need help coming down this zip line', where as discovering or arriving at the abstraction is the result of working through and distilling n number of examples. To relate to the analogy, that's like climbing the hill in the first place.

I find that people often think they understand an abstraction, but examples either expose that they don't or add deeper insight.
Yes, that was my gist--that, examples introducing examples gives you a feel of the landscape, and assists you to arrive at the abstraction yourself. The abstraction feels like your own rather than something forced upon you.