A few years back I saw an HNer recommend a "function box" game that's fun for kids. The kid tells you an input, and you tell the output. After a few iterations, the kid then guesses at what the function is that transforms the input into the output. You start with just addition/subtraction, then bring in multiplication, powers, etc., and mix-and-match.<p>Eventually you can swap roles, and the kid can proudly give <i>you</i> function boxes (usually there are some mistakes at first, but it's all part of the learning process). One interesting discovery that becomes apparent is that there are infinitely many function boxes that will yield the same result. Sometimes I would guess that my daughter's function was 2x + 3, and she would tell me that no it was "times four, divided by two, then add one then add two". We worked through how these functions are identical, even though they look very different.<p>Bigger picture, we try to connect learning math to being able to do things. Our older kid is very skilled at math and I have encouraged her to keep learning until she reaches her limit. But I've also made clear that the benefit of accelerating her math understanding now is not so she can become some amazing mathematician as an adult, which is very unlikely. Rather, it's so she can learn physics, economics, and all sorts of other things at a relatively young age, after having learned the math that is used in introductions to those subjects.<p>Lastly, we've also used Khan Academy (not KA Kids) quite a bit. The one downside to it is that it introduces a skill and then gives a quiz. This can lead to the false impression that practice is not required to master a skill. Eventually we decided that our kid had to do the quiz three times at 100% in order to move on — otherwise she'd get 100% in just one or two tries (it's mostly multiple choice), and think she'd mastered something she hadn't. This was frustrating for her, but it helped her to understand that practice is a necessary part of learning.