What I do (I'm a sole developer working from my home office) when in that situation is to make a DETAILED list of up to 10 'next steps' in the project. These steps should be of the granularity of about an hour each. As you do each one, give yourself a little reward -- a walk about is good.
My son is in your demographic (mathematically gifted and 12 years old)...
He has Lego Mindstorms. That's a good introduction to simple logic constructs with a physical response. He likes Scratch (MIT) and Alice (Carnegie-Mellon) which have the same drag and drop concept of programming.
I've also introduced him to C++ via Visual Studio Express Edition and the DarkGDK, but that tends to get slow because his typing skills aren't all that good yet.
It is all good. The important thing is to have a series of attainable goals on the way to a complete working *something*.
I started him off with a mouse, but it was just too frustrating for him. A couple of months with the trackball was all he needed to get hooked on the computer. Then he had the motivation to learn to use a mouse.
--
funny thing about alice.... I talked to him about it yesterday after school and one of his friends had just started using it too.
He downloaded it last night and mucked around for a couple of hours. I think he got as far as controlling a 3D cat to walk around a plane with the arrow keys.
No, I hadn't seen it before. Thanks for the link. I'll point him to it and see what he thinks.
It looks similar in concept to Scratch from MIT, except that Scratch is 2D only.
I found that my kids weren't able to use a mouse very well when they were younger. I found a big trackball and that worked much better because you could separate the moving action from the clicking action.
If your kid demonstrates some skill, then by all means encourage that. Others comments seem to imply that computers and real life are mutually exclusive, but of course they aren't. It is possible interact with a computer and the real world at different times.
When my little guy was 2, he had an old desktop in his room that I made from parts salvaged from upgrades. He used it to play Sammy's Science House and Broderbund interactive stories (the beaver's rap in the Tortoise and the Hare was a great favorite). He learned how to click and navigate around and was entertained in a way where he was in control (in contrast to TV watching).
I would not recommend a new anything at that age though, because they just don't understand the consequences of their actions. Give him something you don't mind if he destroys:-)
And lest you think that computer access destroys children....
my son is 11 now, and he's mucked around with the DarkGDK and Visual Studio - actually written some pretty cool stuff with Scratch. He's a straight A student and in a gifted program in our school board.
But he's also goalie for his hockey team in the winter, plays soccer in the summer, takes tae kwon do and boxing classes and runs track.
You just have to encourage ALL aspects of their development. Only you can be the judge of what the appropriate time is.
What I do (I'm a sole developer working from my home office) when in that situation is to make a DETAILED list of up to 10 'next steps' in the project. These steps should be of the granularity of about an hour each. As you do each one, give yourself a little reward -- a walk about is good.
My son is in your demographic (mathematically gifted and 12 years old)... He has Lego Mindstorms. That's a good introduction to simple logic constructs with a physical response. He likes Scratch (MIT) and Alice (Carnegie-Mellon) which have the same drag and drop concept of programming. I've also introduced him to C++ via Visual Studio Express Edition and the DarkGDK, but that tends to get slow because his typing skills aren't all that good yet. It is all good. The important thing is to have a series of attainable goals on the way to a complete working *something*.
I started him off with a mouse, but it was just too frustrating for him. A couple of months with the trackball was all he needed to get hooked on the computer. Then he had the motivation to learn to use a mouse. -- funny thing about alice.... I talked to him about it yesterday after school and one of his friends had just started using it too. He downloaded it last night and mucked around for a couple of hours. I think he got as far as controlling a 3D cat to walk around a plane with the arrow keys.
No, I hadn't seen it before. Thanks for the link. I'll point him to it and see what he thinks. It looks similar in concept to Scratch from MIT, except that Scratch is 2D only. I found that my kids weren't able to use a mouse very well when they were younger. I found a big trackball and that worked much better because you could separate the moving action from the clicking action.
If your kid demonstrates some skill, then by all means encourage that. Others comments seem to imply that computers and real life are mutually exclusive, but of course they aren't. It is possible interact with a computer and the real world at different times. When my little guy was 2, he had an old desktop in his room that I made from parts salvaged from upgrades. He used it to play Sammy's Science House and Broderbund interactive stories (the beaver's rap in the Tortoise and the Hare was a great favorite). He learned how to click and navigate around and was entertained in a way where he was in control (in contrast to TV watching). I would not recommend a new anything at that age though, because they just don't understand the consequences of their actions. Give him something you don't mind if he destroys :-)
And lest you think that computer access destroys children....
my son is 11 now, and he's mucked around with the DarkGDK and Visual Studio - actually written some pretty cool stuff with Scratch. He's a straight A student and in a gifted program in our school board.
But he's also goalie for his hockey team in the winter, plays soccer in the summer, takes tae kwon do and boxing classes and runs track.
You just have to encourage ALL aspects of their development. Only you can be the judge of what the appropriate time is.