And then let kids play… along the learning curve… until they experience success and related social rewards, and then the motivational feedback loop is established.
Any ideas for how to do this in math/science/programming?
When it comes to learning numbers, according to my parents I learned to count by playing Sagaland with them.
Further down the line, for math there’s Dragonbox.
When it comes to programming https://codecombat.com/ is great (created by Nick Winter, who I know from Quantified Self and who wrote the Motivation Hacker)
My daughter is 2 now, so it’s time to get ready… I guess the obvious first step in math is to learn the meaning of numbers “one, two three”, and in programming to learn how to use keyboard, which consists of two parts: learning the alphabet, and learning keys like arrows and backspace.
The “intro to programming” part is easy—she already enjoys typing random characters in Writer and erasing them afterwards using backspace. Now I need to teach her how words are composed from characters, read words, and then to type words. I assume this may take a lof of time (not sure whether her brain is already capable of ordering the characters correctly).
In addition, I have created a simple “game” for training the arrows keys: there is a picture of a cat, which moves when you press a key. Yeah, pretty basic. Later I may create a larger map that the cat can explore, and perhaps a few items it could interact with. But the idea is to learn how pressing the four arrows relates to positions on the screen.
The “intro to maths”—my sister taught her son by role-playing shopping: “give me one apple”, “give me two apples”, “give me three apples”. My daughter refuses to do this, so I have to either wait or find a different strategy.
But in longer term...
In math, I trust my math skills that I will be able to come up with a good material for the next step. I will also use Hejný′s textbooks as an inspiration. Also, Montessori education has some good ideas on elementary-school math.
In programming, well, that is more complicated. People who try to do this have a lot of contradictory ideas, so whatever conclusion I make, many people will disagree with. Anyway, my outline is something like this:
The first step should be simple games. But you have to choose them carefully, because the goal is not to optimize for e.g. shooting skills, but to teach the child that there is an environment that can be manipulated. I would try finding games where the protagonist moves in a rectangular grid and manipulates objects; you know, where then emphasis is not on dexterity, but on perceiving and changing the state of the game. Simple puzzles. If necessary (and if I have time), I may program my own ones.
The next step should be sending commands in batches. Like, instead of pressing “up, up, right, down” and seeing the protagonist move in real time, you will first create the “up, up, right, down” sequence, and then launch it, and see how it gets gradually executed. If failed, make a new sequence and launch it again. Make the user interface as simple as possible, even if it goes against your intuition as an adult; for example for a child it is probably easier to erase the whole sequence and start from scratch, than to try fixing a mistake; even if for an adult, the idea of writing something again instead of fixing the mistake sounds horrifying (but that’s because we are used to work with long sequences, while this game will only contain short ones).
Not really sure what the next step, i.e. the first non-linear program is. Really not sure. (Maybe something like Manufactoria, but simpler?) Not even sure whether this is generally the right direction for the next step. Will think about it later.
What I feel relatively sure about is that people who try to introduce a Turing-complete language too soon are making a mistake. Turing-completeness is something that adult programmers appreciate. But kids need to experience some simple scenarios first before moving to a more general one, and the simple scenarios can use a different environment and a different programming language. I would even use “goto” in the first programming language, because, let’s be honest, all programmers know there is a “goto” command behind the scenes, we just don’t think about it explicitly anymore. But to get to this level, you must get through the explicit level. Similarly, the first programming language that uses variables should have their values displayed on screen all the time. The first language that allows you to call a function from a function should display the call stack all the time. Etc.
I’m curious if you have any follow-up to your proposed math/programming strategy. I’m sure you could write a book on parenting but just a few bullet points would be really interesting e.g., what was hard/easy, what worked/didn’t, what you’d do differently etc.
Also it’d be great if you could help me understand why this blurb claims Laszlo wrote this book “[w]ell before having children”.
My educational plans have mostly failed. I work on two projects in parallel at my job, and I have two kids at home, which means that my usual day is working on this, working on that, going outside with the kids, preparing food for the kids, doing dishes, playing with the kids, reading a bedtime story… somehow the entire day passes without a quiet moment to think, and then it is evening and I am too tired to do something other than browse the web, exercise, and go sleep. So, many things that I planned to do, I did not. The COVID-19 situation only made it worse, as the kindergartens were closed. Yeah, I am also making excuses, a more organized person than me surely could do more, but I am at my limits.
So, my older daughter, currently 6, can write on a computer, and use some simple applications such as VLC media player. She played a few games, so she knows how to use arrows, etc. But the typical use of computer is either painting, or watching cartoons with her younger sister. In math, she can do addition, understands the concept of “half”, and distinguishes odd and even numbers. Nice, but really nothing extraordinary.
I didn’t complete any of those educational programs I imagined. (Note for my next reincarnation: such projects need to be completed before the kids are born. Later, there is not enough time and focus.)
Also it’d be great if you could help me understand why this blurb claims Laszlo wrote this book “[w]ell before having children”.
His first daughter Susan was born in 1969, the book was published in 1989, that is twenty years later. Also, the book describes many things in past tense. So… dunno, perhaps the reviewer wanted to say that parts of the book contain beliefs that author had before the kids were born? Or maybe someone else said that, and then the information passed through the game of telephone?
I don’t know how else someone could write a book “well before having children” that would describe specific problems his children had with government and chess institutions.
Are you familiar with any of Laszlo’s work that was written before his children had reached such great “successes”?
According to Wikipedia, Bring up Genius! was his first book. (The Hungarian page mentions way more publications than the English page, but both agree that he started with this one.) The other books seem to be mostly about chess problems, although it is difficult to tell exactly, if the only thing I have is the title of the book… and a page of some Hungarian book shop that only says the book is out of print.
By the way, looking for books written by “Polgár”, I noticed that two of his daughters also wrote some books, but those books also seem to be about chess only. For a non-professional perhaps the most interesting is Chess Training Guide for Teachers and Parents by Susan Polgar, which seems like an outline of the method László used to introduce the girls to chess; that is, start with the empty board, introduce Pawn, Pawn-only problems, introduce Rook, Pawn-and-Rook problems, etc.
On programming games, a friend’s kid at least enjoyed Robot Turtles. It’s exactly this
games where the protagonist moves in a rectangular grid and manipulates objects; you know, where then emphasis is not on dexterity, but on perceiving and changing the state of the game. Simple puzzles.
plus the thing about sending commands in batches that you mentioned.
From http://lesswrong.com/r/discussion/lw/p48/bring_up_genius/dtrf
Any ideas for how to do this in math/science/programming?
When it comes to learning numbers, according to my parents I learned to count by playing Sagaland with them.
Further down the line, for math there’s Dragonbox.
When it comes to programming https://codecombat.com/ is great (created by Nick Winter, who I know from Quantified Self and who wrote the Motivation Hacker)
My daughter is 2 now, so it’s time to get ready… I guess the obvious first step in math is to learn the meaning of numbers “one, two three”, and in programming to learn how to use keyboard, which consists of two parts: learning the alphabet, and learning keys like arrows and backspace.
The “intro to programming” part is easy—she already enjoys typing random characters in Writer and erasing them afterwards using backspace. Now I need to teach her how words are composed from characters, read words, and then to type words. I assume this may take a lof of time (not sure whether her brain is already capable of ordering the characters correctly).
In addition, I have created a simple “game” for training the arrows keys: there is a picture of a cat, which moves when you press a key. Yeah, pretty basic. Later I may create a larger map that the cat can explore, and perhaps a few items it could interact with. But the idea is to learn how pressing the four arrows relates to positions on the screen.
The “intro to maths”—my sister taught her son by role-playing shopping: “give me one apple”, “give me two apples”, “give me three apples”. My daughter refuses to do this, so I have to either wait or find a different strategy.
But in longer term...
In math, I trust my math skills that I will be able to come up with a good material for the next step. I will also use Hejný′s textbooks as an inspiration. Also, Montessori education has some good ideas on elementary-school math.
In programming, well, that is more complicated. People who try to do this have a lot of contradictory ideas, so whatever conclusion I make, many people will disagree with. Anyway, my outline is something like this:
The first step should be simple games. But you have to choose them carefully, because the goal is not to optimize for e.g. shooting skills, but to teach the child that there is an environment that can be manipulated. I would try finding games where the protagonist moves in a rectangular grid and manipulates objects; you know, where then emphasis is not on dexterity, but on perceiving and changing the state of the game. Simple puzzles. If necessary (and if I have time), I may program my own ones.
The next step should be sending commands in batches. Like, instead of pressing “up, up, right, down” and seeing the protagonist move in real time, you will first create the “up, up, right, down” sequence, and then launch it, and see how it gets gradually executed. If failed, make a new sequence and launch it again. Make the user interface as simple as possible, even if it goes against your intuition as an adult; for example for a child it is probably easier to erase the whole sequence and start from scratch, than to try fixing a mistake; even if for an adult, the idea of writing something again instead of fixing the mistake sounds horrifying (but that’s because we are used to work with long sequences, while this game will only contain short ones).
Not really sure what the next step, i.e. the first non-linear program is. Really not sure. (Maybe something like Manufactoria, but simpler?) Not even sure whether this is generally the right direction for the next step. Will think about it later.
What I feel relatively sure about is that people who try to introduce a Turing-complete language too soon are making a mistake. Turing-completeness is something that adult programmers appreciate. But kids need to experience some simple scenarios first before moving to a more general one, and the simple scenarios can use a different environment and a different programming language. I would even use “goto” in the first programming language, because, let’s be honest, all programmers know there is a “goto” command behind the scenes, we just don’t think about it explicitly anymore. But to get to this level, you must get through the explicit level. Similarly, the first programming language that uses variables should have their values displayed on screen all the time. The first language that allows you to call a function from a function should display the call stack all the time. Etc.
Thanks for providing this pareto translation!
I’m curious if you have any follow-up to your proposed math/programming strategy. I’m sure you could write a book on parenting but just a few bullet points would be really interesting e.g., what was hard/easy, what worked/didn’t, what you’d do differently etc.
Also it’d be great if you could help me understand why this blurb claims Laszlo wrote this book “[w]ell before having children”.
https://www.goodreads.com/book/show/20877035-bring-up-genius
Are you familiar with any of Laszlo’s work that was written before his children had reached such great “successes”?
My educational plans have mostly failed. I work on two projects in parallel at my job, and I have two kids at home, which means that my usual day is working on this, working on that, going outside with the kids, preparing food for the kids, doing dishes, playing with the kids, reading a bedtime story… somehow the entire day passes without a quiet moment to think, and then it is evening and I am too tired to do something other than browse the web, exercise, and go sleep. So, many things that I planned to do, I did not. The COVID-19 situation only made it worse, as the kindergartens were closed. Yeah, I am also making excuses, a more organized person than me surely could do more, but I am at my limits.
So, my older daughter, currently 6, can write on a computer, and use some simple applications such as VLC media player. She played a few games, so she knows how to use arrows, etc. But the typical use of computer is either painting, or watching cartoons with her younger sister. In math, she can do addition, understands the concept of “half”, and distinguishes odd and even numbers. Nice, but really nothing extraordinary.
I didn’t complete any of those educational programs I imagined. (Note for my next reincarnation: such projects need to be completed before the kids are born. Later, there is not enough time and focus.)
His first daughter Susan was born in 1969, the book was published in 1989, that is twenty years later. Also, the book describes many things in past tense. So… dunno, perhaps the reviewer wanted to say that parts of the book contain beliefs that author had before the kids were born? Or maybe someone else said that, and then the information passed through the game of telephone?
I don’t know how else someone could write a book “well before having children” that would describe specific problems his children had with government and chess institutions.
According to Wikipedia, Bring up Genius! was his first book. (The Hungarian page mentions way more publications than the English page, but both agree that he started with this one.) The other books seem to be mostly about chess problems, although it is difficult to tell exactly, if the only thing I have is the title of the book… and a page of some Hungarian book shop that only says the book is out of print.
By the way, looking for books written by “Polgár”, I noticed that two of his daughters also wrote some books, but those books also seem to be about chess only. For a non-professional perhaps the most interesting is Chess Training Guide for Teachers and Parents by Susan Polgar, which seems like an outline of the method László used to introduce the girls to chess; that is, start with the empty board, introduce Pawn, Pawn-only problems, introduce Rook, Pawn-and-Rook problems, etc.
On programming games, a friend’s kid at least enjoyed Robot Turtles. It’s exactly this
plus the thing about sending commands in batches that you mentioned.