Live data from Hacker News

Conversations with a six-year-old on functional programming

byorgey.wordpress.com

71–80 of 319 posts

Re: Conversations with a six-year-old on functional programming

#71
This is so awesome. I'm consistently amazed at how much kids can understand intuitively, even when they can't express their understanding in precise language. For example, my partner teaches lower elementary at a Montessori school. Not everyone understands it, but she's managed to teach some basic algebra, including to several of her first-graders.

Re: Conversations with a six-year-old on functional programming

#72
post #45

Brent is one of the greatest teachers I've ever experienced. I used to take classes from him (and TA some others he taught) and was consistently blown away by his enthusiasm and capacity for sharing concepts. He has a great essay on pedagogy as well ( https://byorgey.wordpress.com/2009/01/12/abstraction-intuiti... ) If you're interested in learning some of the beautiful foundations of functional programming, I highly…

I'll third this! Brent's class on the art of recursion really taught me quite a lot about how to think about problems in a different way.

http://www.cis.upenn.edu/~cis39903

Re: Conversations with a six-year-old on functional programming

#73
post #4

Earlier quoted context omitted.

I'm curious what you mean. Is the problem that it is a constant function, or that you are asking them to ignore parameters? Or is that missing the point, still?

A function with a linear type uses it's parameters exactly once. The concept of "linear type" doesn't relate to a the concept of "linear function" except in an abstract mathematical way.

Well, a linear function is a function where you can only use the parameter once when expressed in its Taylor expansion. E.g. these are not linear: x^2=x*x (used twice), exp(x)=1+x+... (used infinite times). It’s a very symbolic way of thinking about it though, and not what you usually consider an important property of linearity.

Re: Conversations with a six-year-old on functional programming

#74
post #57
post #45

Brent is one of the greatest teachers I've ever experienced. I used to take classes from him (and TA some others he taught) and was consistently blown away by his enthusiasm and capacity for sharing concepts. He has a great essay on pedagogy as well ( https://byorgey.wordpress.com/2009/01/12/abstraction-intuiti... ) If you're interested in learning some of the beautiful foundations of functional programming, I highly…

I'll second this; he is a fantastic teacher. I had the incredibly fortunate opportunity of learning from Brent in my undergrad at Hendrix, where he currently teaches. There are other comments here that praise his patience with regard to teaching these topics to a child. I can say without a doubt he maintains the same patience with all of his students - not just his children. If you ever have the opportunity to learn…

You did CS at Hendrix College? I did too ('11) and can't help mentioning it even though I have little to say... because hey, small school, tiny department, it's not often you run into another Hendrix CS alum, even virtually. And after years in "industry" I really appreciate the surprisingly good CS education there for a not well known school

How's the dept doing these days? Is Ferrer still there?

Re: Conversations with a six-year-old on functional programming

#76

beautiful read, thank you. Does anyone collect these educational inspirational stories?

> Does anyone collect these educational inspirational stories?

That might be really useful. Maybe one barrier to improved education, is people having difficulty visualizing it?

Last summer, I tried to explore teaching atoms in early primary, with a focus on nucleons and nuclei.[1] One big surprise to me in discussions, was a pattern of non-linear response to my saying "teach nucleons to kids".

One physics postdoc, one with a professional focus on introductory physics education, replied basically "Absurd! How could you teach muons to kids!" It turned out that for them, "teach nucleons and nuclei" meant understanding muons. "Teach ... to kids", wasn't enough to change that image. So they tried to imagine teaching muons to kids, and exploded.

Another physics postdoc tried to picture kids chalking quantum math on some graduate seminar blackboard. And was "WTF?" baffled.

A primary-school teacher heard "teach atoms", and tried to picture early-primary students memorizing and regurgitating 4th-grade paragraphs of definitions. Because for them, that's what "teach atoms" meant.

And more. These weren't outliers.

I ended up using an analogy. That it was like proposing to teach kindergarteners about traffic lights. And having highway engineers declaring "Absurd! There's no way kids could understand those standards documents! And they're expensive! And the Chinese ones are in Chinese! You're think you can teach technical Chinese transportation standards documents in kindergarten!?!"

"Red means stop; green means go." "Atoms are sticky little balls that jiggle."

I'd expected that crafting accessible leverageable descriptions would be hard. And that how well one could achieve transferable understanding, at various ages, would be an open question.

But I didn't expect that people would initially be so dramatically unable to picture the possibility of teaching some topics.

People were fine after a "kindergarten traffic lights ... green means go... not network theory" story to set context. But I wonder...

Might there be a badly underappreciated need for stories like OP? To provide "Oh wow... I wouldn't have imagined one could teach that... Now I can picture it..."

That's an idea for helping to disrupt education that I've not seen before.

[1] a crufty slow-loading page, intended merely to set up in-person discussions, but I've nothing better: http://www.clarifyscience.info/part/Atoms

Re: Conversations with a six-year-old on functional programming

#77
post #75

Functions? Algebra? How is comprehending any of that, possible without the sort of abstract/counterfactual thinking that develops around age 12?

It's not, but do you really think that's going to stop true FP believers from upvoting this article?

Re: Conversations with a six-year-old on functional programming

#79
post #14

When my son was around five or six, I did a similar exercise to explain the difference between prime and composite numbers. I told him that a number X is composite if you can fit X apples into buckets and end up with the same number of apples in each bucket. I drew 6 apples and asked whether they could be divided into buckets with an equal number of apples in each. It was immediately obvious that they could. My son c…

> I told him that a number X is composite if you can fit X apples into buckets and end up with the same number of apples in each bucket. Wrong; X is composite if you can fit X apples into buckets and end up with the same number of apples in each bucket, with at least two apples in each bucket . "You gotta tell the children the truth. They don't need a whole lot of lies. Cause one of these days, baby, they'll be runni…

And at least two buckets.

Re: Conversations with a six-year-old on functional programming

#80
post #75

Functions? Algebra? How is comprehending any of that, possible without the sort of abstract/counterfactual thinking that develops around age 12?

...who told you that lie? An educational psychologist?

More like "at age 12 even the most incompetent teacher can teach things involving abstract/counterfactual thinking to even the least intelligent child"... the bad ol' "lowest common denominator thinking" and the other horrors of our standardized educational systems :| Unfortunately it's not economically feasible to lecture to children in a classroom unless you calibrate on the lowest common denominator.

Also, it's the huuuge difference between "understanding" and "being able to communicate efficiently in words". People can "grok" very advanced stuff even if they don't fully command the language for expressing it. Unfortunately most incompetent teachers are totally incapable of "trying to explain something beyond the level of the language" but the human brain's pattern matching engines are not always tied to language...

Post reply on HN