
Ask HN: How do I give my son a head start? - KoZeN
There are few careers around today that wouldn't benefit from the employee having a better understanding of programming and just IT in general.<p>As well as the fundamentals such as reading, writing &#38; mathematics, I fully intend to introduce my son to computing from a very early age.<p>I was thinking that I could introduce him to things like BASIC not long after he masters the art of counting to ten but I would love to hear from you guys.<p>How would you suggest I give my son a head-start in an IT orientated world?
He's 6 months old currently so I have plenty of time!
======
GiraffeNecktie
I would just forget about computers and programming completely and focus on
the building blocks by a _playful_ approach to solving day-to-day problems
with logic and reasoning. Like how do we decide which things belong together?
You can also play progressively more complicated iteration games like for-
each-time-this-happens-let's-do-this-this-and-this! Or make complicated rube
goldberg devices out of household objects and then debug why they don't work.

Computers would be just a distraction from the real work of building a
foundation in cognitive skills.

~~~
silvestrov
Learning how to think is much more helpful than any programming language
introduction. When you have learned to think and investigate stuff, then
programming comes naturally.

Richard Feynman's father spent a lot of time teaching his son how to think and
what thinking is. That was more important to Feynman than any mathematical
lessons his father could teach him.
<http://www.youtube.com/watch?v=695Flhmjmg4#t=2m56s>

Parents need to keep an eye out for what kind of person their kids are. They
might not be a carbon-copy of yourself, they might have completely different
interests and abilities and learning styles. I did, very much so. Many parents
erroneously assumes that their kids are like themselves because "it is their
kids", their genes, their upbringing. But neither genes or kids work like copy
machines when it comes to personality.

~~~
sayemm
Thanks for posting that clip of Richard Feynman, pretty cool - solid response
too.

------
edw519
Love him. Unconditionally. And make sure he always knows it.

Everything else is just details.

With this, things will inevitably fall nicely into place, no matter what
tactics you take.

Without it, he will be fucked up no matter what you do and will be coming to
hacker news in 2028 posting, "Ask HN: I'm confused and depressed and don't
know why."

~~~
araneae
I'm sorry, I _really_ dislike this answer.

Obviously this guy knows that he should love his kid. He was looking for
specific answers on how to introduce the kid to computing. And you gave him
this glib, content-less, greeting card answer.

I _cannot believe_ this is the top comment.

~~~
Tichy
Why is it obvious? If it was so obvious, there wouldn't be so many parents
failing in it (many perhaps unwillingly).

~~~
pavel_lishin
And yet, if those parents read that comment, they wouldn't have an overnight
change of heart.

------
patio11
Read to him when he is young, with him when older. It is the most stupidly
effective academic intervention I'm aware of.

~~~
btilly
_Read to him when he is young, with him when older. It is the most stupidly
effective academic intervention I'm aware of._

Actually evidence suggests that this is not true. Energy spent reading to kids
helps a bit, but what makes a long-term difference is to be seen frequently
reading for yourself. Otherwise you wind up in the trap that the kid learns
that reading is for babies.

~~~
robryan
Yeah I have parents who, like all good parents would say that it's good to
read, but didn't do a lot of reading themselves.

------
michael_dorfman
I'd be careful in this line of thinking, if I were you. Projecting wishes and
expectations onto one's children is common, and counter-productive.

I was very excited when my daughter, around the age of 10, showed interest in
programming. I showed her Scratch (from MIT), but I think my enthusiasm scared
her off-- and she dropped it quickly. I regret that I didn't play it a bit
cooler.

~~~
canadaduane
Enthusiasm can be shown in several ways. One interesting tidbit from
psychological research is that praising children's results often leads to
their own paralysis. Instead, parents should praise how hard they tried.

See Berkeley's Half Full blog:

[http://greatergood.berkeley.edu/raising_happiness/post/the_r...](http://greatergood.berkeley.edu/raising_happiness/post/the_right_way_to_praise_kids/)

~~~
michael_dorfman
I'm familiar with that research, and agree with the techniques.

In this case, though, it wasn't that I praised her-- just that I got excited
about how cool Scratch was. Suddenly, it wasn't that cool to her anymore.

Similarly, she also hates the Beatles. I mean, how is that even possible?

~~~
mgarfias
I hate the beatles.

------
ankeshk
1.

Teach him about managing money. Get him into the habit of saving from a very
early age. And writing down all the expenses.

(Rockefeller had a rule for his kids. He gave them money for all the chores
they did. And they had to donate 10% to the Church. And save 10%. But because
they had to donate exactly 10% to the Church - and not 9.5% or 10.5%, they
were required to keep an account of every penny they received. This: keeping
track of money from an early age is the trick to making sure you never end up
poor.)

2.

Teach him confidence. Elocution and public speaking and drama classes.

3.

Make him love reading. Dr. Seuss. Comics.

4.

Teach him how to delay gratification. The trick is to focus on other things.

5.

Teach him discipline in exercising early on. And healthy eating. Sports.

6.

Play all the wonderful board games besides the popular ones like Monopoly.
Excellent for math and logic building skills. And figuring out the winning
strategy.

These above are the building blocks. Its ok if he learns to code a bit late in
life too.

~~~
eru
Sounds good. Look at boardgamegeek for some inspiration for the board and card
games. (And don't bother with Monopoly, it's a game played for nostalgia value
only. If at all.)

Games are also good for bartering and other social skills, besides math and
logic. Settlers of Catan may be the obvious example in the English speaking
world. Though Bohnanza is probably better.

Of course there are also lots of games you can play outdoors. Including just
running around with your friends.

------
jberryman
Get him legos, things he can build with his hands, internalize the process of
building, designing, visualizing. Do lots of projects with him. Show him how
stuff works. Give him musical instruments to play with and give him lessons.

Honestly programming isn't that hard. If he finds it interesting he can start
teaching himself at any age, so I wouldn't focus on that. All that said,
IANAD. congrats on being a dad!

------
captaincrunch
If you'd like to give him a head start, give him room to decide what he'd like
to do.

Don't limit his abilities, or options.

Perhaps he will not be interested in IT? He could be the man to cure Cancer.

~~~
KoZeN
You're absolutely spot on but speak to any scientist or doctor and they will
undoubtedly tell you that they would probably benefit from being ahead of the
curve from a technological perspective. All of todays innovators embrace
technology and all of todays technology require a distinct understanding of
computing and/or electronic engineering.

~~~
mturmon
Try to have the confidence that your kid will get to computing technology if
they need it.

Your job is to enable them to identify their interests and follow their
curiosity. Not so much to direct it.

~~~
signal
Agreed. Technology is an end. The means to success in the field (and almost
any field) are focus, creativity, determination and optimism. Chances are your
affinity for tech will rub off, and it's not exactly an uncommon hobby these
days.

Good luck, it's always great to see somebody considering child education.

------
fatso784
This might sound totally narcissistic but here's how I learned programming:
Taught to play Chess at an early age; Taught another language (Russian, even
though I never finished) at an early age (note that I didn't really like
learning Russian, but it helped regardless); Given Legos and Lincoln Logs.
Basically, any toy that uses building blocks encourages the kind of thinking
used in programming; Read to often (but not about programming); Taught BASIC
(the concept of "goto" goes a long way in realizing what is possible.); Got
into creating game mods (as previous user recommended)

My parents actually sort of discouraged me from liking programming. If I would
have, say, been really interested in chemistry and experimented with
chemicals, they would have been less worried than when I would work on the
computer for long periods of time.

It's also worthy to note that your son may not be interested in becoming a
programmer, so don't try to consciously influence him. Surround him with the
tools he needs. He'll find a way from there.

------
ax0n
The number one thing to do as he grows: allow his curiosity to flourish, even
if it means letting him hurt himself a bit. Some learn better through words.
Some learn better through visuals. This is mostly rote memory stuff, and it's
crap. Everyone learns better through experience, and experience builds both
memory and extrapolation. He might only be six months old, but he's already
got a keen brain for gathering data and deducing outcomes. It's intrinsic to
human nature, and it's commonplace to stifle it with too many boundaries.
Don't. I'm not saying you should throw caution to the wind, but don't be as
protective as the societal norm says you should be.

Allowed to be curious, he'll get critical thinking skills, passion for
exploring the unknown and street smarts out of the deal. He'll immediately be
better at anything he sets his mind on than those who have been forced into
learning only through written and verbal means.

------
oscilloscope
Play the board game Go. It's simple, tactile and astoundingly complex. I've
found wrapping my head around that game is a similar experience to wrapping my
head around programming concepts.

Your son will come to you to play board games, whereas teaching programming is
something where you'd be driving what your son learns.

Building a Go game on the computer is also not that difficult-- but developing
AI for it leads deep into math and computer science.

<http://en.wikipedia.org/wiki/Computer_Go>

~~~
btilly
The nice thing about go is the handicap system. You can play mutually fun
games when there is a very large skill difference. Western games like chess?
Not so much.

Plus the simplicity of the rules is helpful for learning for younger players.
The rule of thumb is that if they are old enough to not eat the pieces, they
are old enough to try playing.

------
apl
> He's 6 months old currently so I have plenty of time!

You do indeed. Don't forget that. You have at least 8 years left before your
kid should start doing this kind of thing. Just let him use a computer in a
completely natural way, don't force anything on him. Programming is decidedly
different from, say, playing the violin!

Also, less importantly, skip the shitty languages phase. It's not necessary to
go through Pascal or BASIC before you can get to the good stuff: Python will
do from the very beginning.

~~~
steveklabnik
> don't force anything on him.

This is absolutely true. One of the risks that you take when you have a child
is that he'll turn out totally different than you. My father was a farmer, and
so we're from basically two different worlds. He could never understand why I
wanted to be on the computer on the time, I couldn't understand why he wanted
to be outside all the time. But since neither of us tried to force each other
on the issue, we got along just fine.

> It's not necessary to go through Pascal or BASIC before you can get to the
> good stuff:

<http://hackety-hack.com/>

</blatant-self-promotion>

~~~
niels_olson
> > don't force anything on him. ... Just let him use a computer in a
> completely natural way.

> This is absolutely true.

I disagree, sort of. I have a 5 yo and an 8 yo. If you let kids use a computer
without guidance, they will learn how to use a computer from their friends at
school. And what they learn is to fire up a browser (chrome if you've got it,
otherwise Firefox) type "<some word> games" into Google and play thousands of
really mind-numbing flash games. Go ahead. Try it.

~~~
steveklabnik
We're talking about two different things. I'm trying to say "Don't force Jimmy
to program if he wants to be a football player" and you're saying "Help Jimmy
to learn about what he's doing."

I'm not an expert on children, by any means, but I'd agree with both you and
myself.

Also, I don't think there's anything wrong with playing flash games.

------
jph
Baby Sign Language can jumpstart learning and communication.

The best videos (IMHO) are from "My Smart Hands" at <http://mysmarthands.com/>

The founder has free videos on YouTube, an iPhone app, and a new Android app
(which I use).

~~~
a-priori
_Baby Sign Language can jumpstart learning and communication._

Is there any evidence that this actually has any benefit?

~~~
jph
Yes.

Dr. Marilyn Daniels at Penn State University has found that hearing students
in pre-kindergarten classes who receive instruction in both English and ASL
score significantly higher on the Peabody Picture Vocabulary Test than hearing
students in classes with no sign instruction. Her studies demonstrate that
adding visual and kinesthetic elements to verbal communication helps enhance a
preschool child's vocabulary, spelling and reading skills.

This citation and many more studies are listed on
[http://sign2me.com/index.php?option=com_content&task=vie...](http://sign2me.com/index.php?option=com_content&task=view&id=17&Itemid=33)

The most recent meta-study (as far as I know) has this to say...

Doherty-Sneddon concludes by arguing there are three different levels of
support for the benefits of baby signing: indicative, if not evidentially
strong, evidence from baby signing research; related evidence from deaf sign
and hearing gesture/language research; compelling anecdotal support from
families who have embraced the approach.

From
[http://en.wikipedia.org/wiki/Sign_language_in_infants_and_to...](http://en.wikipedia.org/wiki/Sign_language_in_infants_and_toddlers)
Wikipedia has a Daniels, M. (October, 1994). The effects of sign language on
hearing children's language development. Communication Education, 43, 291-298.

Daniels, M. (1996). Seeing language: The effect over time of sign language on
vocabulary development in early childhood education. Child Study Journal, 26,
193-208.

Daniels, M. (October, 1994). The effects of sign language on hearing
children's language development. Communication Education, 43, 291-298.

Daniels, M. (1996). Seeing language: The effect over time of sign language on
vocabulary development in early childhood education. Child Study Journal, 26,
193-208.

Other researchers have found evidence that sign language supports early
literacy skills.

Felzer, L. (1998). A Multisensory Reading Program That Really Works. Teaching
and Change, 5, 169-183.

Wilson, R., Teague, J., and Teague, M. (1985). The Use of Signing and
Fingerspelling to Improve Spelling Performance with Hearing Children. Reading
Psychology, 4, 267-273.

Hafer, J. (1986). Signing For Reading Success. Washington D.C.: Clerc Books,
Gallaudet University Press.

Koehler, L., and Loyd, L. (September 1986). Using Fingerspelling/Manual Signs
to Facilitate Reading and Spelling. Biennial Conference of the International
Society for Augmentative and Alternative Communication. (4'th Cardiff Wales).

~~~
a-priori
_Dr. Marilyn Daniels at Penn State University has found that hearing students
in pre-kindergarten classes who receive instruction in both English and ASL
score significantly higher on the Peabody Picture Vocabulary Test than hearing
students in classes with no sign instruction._

Thanks for providing these articles. I don't doubt that children can learn to
sign before they can learn to speak (not a big leap considering that babies
can understand language before they can move their vocal muscles well enough
to produce it), or that they'd be happier being able to communicate earlier.

What I do doubt is that this has any long-term effects on their development,
above and beyond the effect of learning more than one language. In any of the
longitudinal studies, do they control by having a second group of infants
learn two spoken languages?

~~~
3pt14159
Anecdotal, I know, but the smartest guy I know (13 courses one semester at
Waterloo, qualified to major in CS, actuary science, accountancy, pure math
with minors in psychology and business. Currently working on his law degree,
actuary tests, and CFA (certified financial advisor) while working full time
as a chartered accountant) was taught baby sign as an infant. His younger
brother was not. His younger brother is so much more creative and broad
thinking whereas the eldest is a Spock like linear thinker. Trade offs.

------
mbreese
I'd suggest giving them your old iPhone/iPod touch/Android device. My son has
been playing with those since he was 1 1/2, and now (2 1/2) he is an expert at
the interface. It's quite a testament to the UI to see how well a 2 year old
can move around an iPhone. Then, he'll be able to "interface" with computers
so much easier. They won't be this foreign thing, they'll be what shows them
music videos.

From there, you have plenty of time. I know my dad started me out with BASIC
when I was ~5: 10 PRINT "HI DADDY" 20 GOTO 10

After that, I didn't touch code until I was 13. So ultimately, my advice would
be to not push them. If he wants to learn, he'll learn.

Just make sure they are familiar with technology, and you'll all be fine.
Aside from that... read to him. Now. They pick it up quickly if you keep doing
it consistently.

But really, don't worry about it and let him be a kid. The inner geek will
come.

------
protomyth
Reading and Flash Cards. A lot of teachers hate flash cards, but the
confidence to do the simple math allows for learning the hard stuff. Never
underestimate the value of a good foundation. Learning how to actually use a
dictionary might not be a bad idea.

[edit] when the kids old enough: legos - lots and lots of legos

------
brianbreslin
I read through almost all the comments and no one mentioned spoken/written
non-computer languages.

I would say introduce him to at least one foreign language like spanish,
french, german, portuguese, japanese, or chinese. I learned spanish as I
learned english, by age 3 I was fluent in both. I had the advantage of having
a spanish teacher for a mother, but it gave me the building blocks for
understanding the rules and concepts of other languages (on 4 so far, working
on 5th). These rules, grammatical, syntactical, etc. can help with picking up
things like computer programming later. I mean they are called languages for a
reason.

I think that giving your son excellent communication skills will give him a
huge leg up on all his peers. Make sure to include reading in both english and
another language too if possible.

~~~
dtwwtd
I agree with this completely. This is one skill I don't have that I definitely
wish more emphasis was put on when I was younger.

------
GavinB
1\. Act rationally. Let him see you making rational decisions, and searching
for explanations.

2\. Make him talk for himself. Encourage him to meet and talk to as many
different people as possible. This starts early, when he wants to hide behind
your legs, and it's probably the most valuable skill he can have.

------
chadgeidel
If I may add to the wonderful suggestions listed here. Give guidance - of
course, but then let him go. _Get "into" whatever it is that he is "into"._
Especially if you don't like it (and, it's not like mistreating puppies or
some such). I love my parents, and they did the best job they could raising
me, but there were some aspects of my childhood that I wish they were more
actively involved with.

Mind you - I'm not blaming them - on the contrary I'm fully aware that every
step I've made lead me to the point I am at in life and only I am responsible
for my position.

------
ryanteo
"Teach yourself programming in 10 years" by Peter Norvig
(<http://norvig.com/21-days.html>)? There's Alice and Squeak. Funnily enough,
I actually think I was more fascinated by the map editor in Starcraft than the
game itself. (Of course, I've only started picking up a little bit of
programming recently.) I think for slightly older kids who would have fun
building robots and physical things that can do tasks, there's Lego Mindstorm.

Other than that, there are 2 books which cover kid prodigies which might be
applicable. "In Code - A Mathematical Journey".
[[http://www.amazon.co.uk/Code-Mathematical-Sarah-Flannery-
Dav...](http://www.amazon.co.uk/Code-Mathematical-Sarah-Flannery-
David/dp/1861972229)] It's the story of Sarah Flannery, who got interested in
cryptography at a young age due to her family environment.

Another interesting book is "The Art of Learning" by Josh Waitzkin.
[[http://www.amazon.co.uk/Art-Learning-Journey-Optimal-
Perform...](http://www.amazon.co.uk/Art-Learning-Journey-Optimal-
Performance/dp/0743277465/ref=sr_1_1?s=books&ie=UTF8&qid=1288770961&sr=1-1)]
Josh Waitzkin was an American chess champion, before burning out at around 20.
He then picked up Taijiquan, becoming the Taijiquan world champion.

------
jonnathanson
We learn what we love. Best way to get him to learn computers is to get him to
love computers. You'll be setting him up for a life of social awkwardness and
little success in the dating game, but you'll be doing the right thing for
him. :)

I would start him on games and other "fun" stuff. Teach him to make his own
games via BASIC or some equivalent thereof. If it's fun, he'll want to do it
on his own. If you're just shoving it at him and it's not fun, he'll resent it
and may even rebel against it.

~~~
canadaduane
My parents challenged my brother and me (when we were kids) by limiting our
time on the computer, but only when playing games. The rule was essentially
this: you can play games for an hour a day, OR you can try to make your own
games on the computer for as long as you want. We were naturally engineering-
minded and attracted to the magical black box that could do anything, so we
took the challenge.

------
zorkerman
I find my son is surprisingly patient (more so than anyone else) to listen to
me talk, even in technical depth, about the problems I'm working on at work. I
even let him sit in my lap sometimes and watch me work on some code while I
try to explain it to him. He certainly doesn't understand much, but he can see
my interest and that makes him interested.

Sometimes you get a gem too.

After explaining something at work I asked him what he thought of my job and
he said, "It sounds like your job is hard dad."

------
istari
There are some things that you cannot help BUT teach your children. It's part
of who you are, your daily habits, your aspirations, your worldview of what a
parent should be.

Just by being your son, he is guaranteed 1000s of hours of practice and
exposure to these topics.

For example, for me, it was Chinese math textbooks from an early age. I ended
up attending Stanford, but my social skills suffered. For your son, I would
guess reading, writing, math, and programming are covered.

Other things are invisible to you, and will be nonexistent to your son unless
you identify and pursue those topics despite your unfamiliarity to them. For
example, I didn't know what "sports" were, and still do not to this day. It's
such a large part of society, but does not exist to me.

You should figure out what's "free" and what's "missing" for your son simply
as a result of growing up in your household, and plan your educational
priorities with that knowledge in mind.

One last thing: expose him to as many different people and social situations
as possible. Camp, church, sports, etc etc etc. Whatever involves heavy
interaction with other kids and people. The more the better. You may have to
get heavily involved yourself to do this properly. Social skills, just like
any other human ability, is simply 1000s of hours of practice.

------
daviding
Time. That's it, nothing more - just spend time with him. Reading, playing and
doing lots fun things.

I have two kids and had massively complicated plans on how to 'program' them
(and I mean that with nothing but respect for what you're trying to do) but
you can over-think this. By all means encourage, support and mentor them but
try not to project your ideal image of what they should be too soon.

All the little dude needs is your attention and time - things will work out
great. Good luck!

------
ary
First and foremost I want to commend you for caring enough as a parent to be
thinking about this, but I think you're asking the wrong question. While not a
_parent_ myself I believe I can speak from my experience of once being a
_child_.

It is my humble opinion that children should be slowly, _slowly_ introduced to
technology. The first example that comes to mind is my own introduction to a
pocket calculator in the late 1980's. I was given one before I had been
exposed to the intermediate concepts of mathematics and looking back it hurt
_much_ more than it helped as it immediately became a crutch. I became more
interested in getting the problem done than learning from the experience.

A slow and methodical approach to learning is what works best for _me_ , and
may not be optimal for everyone. Laying the right foundation is pretty much
the only way to excel, and given the perverse incentives that abound in
(America's) public schools you need to pretty much accept that it's up to you
to make this happen for your child. As someone who didn't have it I cannot
stress enough how important it is to have a parent that is intensely
interested in helping you build from simple concepts to the advanced, learn
how to learn, and how to think critically about everything you encounter.
Having someone there to help you cope with the anxiety of being a novice (at
life _and_ learning) is worth more than I can express. Making sure your child
understands the core of a concept before he or she has access to tools that
shortcut and accelerate its use is paramount.

Also, don't be disappointed if they want to write, sculpt, draw, or paint all
day. We need artists too.

Good luck.

------
zootar
Kids can start programming a lot earlier if their introductory experience
really minimizes frustration and time to gratification. Python is probably a
good starting language for teenagers, but for pre-teens, who are much less
cognitively mature, you'll have a lot more luck sooner if you introduce them
to an IDE with great code completion and the power to make a GUI. Obvious
candidates are Visual C# and Visual Basic, but I would strongly consider Adobe
Flash as well. Children love making animations with Flash, and Flash's
scripting language, ActionScript, has all of the features of a full-fledged
programming language.

You can start even younger with HTML. HTML isn't programming, but it's
relevant training for a developing brain. Balancing brackets, thinking
logically, paying attention to detail, and the "write, run, debug" routine are
all present when writing HTML.

My path to programming started when I discovered a copy of FrontPage Express
(an old WYSIWYG HTML editor) installed on my computer. I quickly went from
FrontPage, to HTML, to Flash/ActionScript, to Visual Basic, to C++. Obviously,
that isn't the logical way for a teenager or an adult to learn programming,
but for a child, it was incredibly natural.

~~~
pavelludiq
C#? My first intro to programming was logo, and im recommending it as a
language for small children any chance i get. For older kids, ruby, python and
(why not?) scheme are good choices. I remember the day my teachers replaced
logo with pascal with dread. Don't do that. I lost interest in programming for
about 2-3 years do to that, and had to rediscover my love with python much
later.

But looking back, i believe languages don't mater that much, as long as the
kid's having fun, you can have fun with C++ even, if it is introduced to you
properly.

------
kabuks
Not a direct answer to your question, but the fact that your son has a father
who is asking himself that question already gives him a huge head start.

------
bdfh42
1\. Restrict TV consumption - help him become selective and not a slave to
that time waster.

2\. Play music - it probably does not matter what type.

3\. Think very hard about schooling.

~~~
dennyferra
Huge supporter of #1 - Around the start of high school my Dad cut the service
provider. I thought it sucked for a while, but in the end I realized I was
much more productive, and was generally more interested in activities /
school.

------
SkyMarshal
Aside from the good meta points made above, and regarding
programming/hacking/IT:

1\. Get him started with Lisp and/or Scheme first, on Linux.

Here's a great story illustrating why (in addition to pg's must-read essays on
his site), along with a reference to a great book, The Schemer's Guide (which
is out of print, grab one while you can still find one in used stores):

<http://www.trollope.org/scheme.html>

2\. Linux only (or BSD, or Minix, or similar FOSS OS). You learn far more
about how computers and computing work using Linux than with Windows or Mac.
After he's become proficient with recursive thinking and all the other
goodness Lisp teaches, get him K&R, a laptop or PC with Linux on it, and
kernel hack with him.

3\. Throw out the TV. 100% trash. Even 'educational' stuff is not really
educational in that it is passive learning, which does no one any favors.
Learning is doing, analyzing, deconstructing, hacking, making, building, not
passively watching.

4\. Second the advice to read to him and with him as much as possible. For all
the reasons mentioned above.

------
wglb
Here is a good approach: Answer every question he asks. Help him find his
interest. And as Patrick says, read to him now. (Just not Knuth).

~~~
BrandonM
> Answer every question he asks

Louis CK would disagree with you there:
<http://www.youtube.com/watch?v=Fdc28bZ90G4> :)

------
maxawaytoolong
This theory seems out of fashion, but I still feel like learning to play a
classical musical instrument, like the violin or piano, helps develop both the
analytical and creative sides of the brain. Plus, you end up with a skill that
you can do outside of using the computer.

Of course he's still a bit young, but it helps to start as early as possible,
especially with the string instruments.

------
wiredfool
First, I'd say, be flexible. No learning plan survives first contact with the
child.

Reading is critical, but I wouldn't push it till the child is ready. Once
they're ready to read, it comes quickly when taught correctly. But both you
and they need to be willing to put in 1/2 hour a day, every day, for a few
months.

My kids love knowing how stuff works, and as a engineering type, I'm pretty
well situated to give them some good answers and point them in the right
direction. David Mcauly's books are good, esp. The way things work, and
Castle.

Finally, throw away your tv. It makes them do other things that take
brainpower, even if it is just playing with dump trucks in the sand box. Also,
when there's no tv, the stories come from books (and from their heads), so
there much more of a pull to go digging for hose stories in a way that will
help them in the long run.

Also,YMMV. Kids are all different, and will respond differently to the same
people and stimuli. So you have to change and adapt.

------
jonnathanson
Another random thought, though probably for slightly older kids: getting into
programming through game modding. Starcraft 2 editor, WC3 editor, XML
editing/modding, eventually Python editing, etc.

The bait is the chance to tweak and modify your games to make them more fun
and personal for you. Could be a fun and pain-free segue into programming
proper.

~~~
ryanteo
Haha, that's how I got one of my first introductions to programming too,
through the Starcraft map editor. It's kind of fun learning through a game.

Many years later, for a group assignment on entrepreneurship, we submitted a
custom map in Warcraft III that simulated competitive strategies among
startups. We basically played Warcraft III in class while our lecturer was
smiling approvingly. One of the most fun lessons in university..

------
curt
I owned a kids toy/developmental products company, be careful not to over
stimulate your child. Over stimulation is just as bad as neglecting your
child. This is the time to introduce your child to multiple languages, just
have them playing in the background. Remember children are just large neural
networks that work by recognizing patterns.

Don't focus on the subject or topic as much as the problem solving process.
Children learn through pattern recognition until they have mastered language
which leads to thought.

Remember children have short attention spans so only have them work on a
subject/topic for a brief period or the children will develop a negative
connotation with the subject.

A few people have mentioned mobile applications they are awesome. I developed
a few apps that have been strongly adopted by organizations that work with
developmentally challenged children. The simplicity and interactivity really
makes a difference.

------
MtL
I have three pieces of advice I wish every parent in the world could see:

1\. Always give your son a new healthy challenge. Let him develop as fast as
he can while he is in his prime. If school has a fixed tempo of learning,
challenge him in other areas; sports, music, critical thinking, computers,
social skills, moral values and ethics, practical skills, helping others, etc.

2\. Read "Outliers" by Malcolm Gladwell. He has a few points that made me
realize just how much it means to come from a good background, with parents
that realize how their kid should be raised to become a independent and
successful person.

3\. Realize that your son will never become exactly what you wanted him to be.
You can introduce him to the world of IT, and you can show him how it is fun
to produce your own programs or web pages, but he has to take the choice to
pursue an IT career by himself.

------
ecaroth
Obviously you need to get him interested in technology as a whole first -
things like ipods, netbooks, etc. What first got me interested in programming
when I was a wee lad was 'build your own level' tools for video games like age
of empires. The first scripting I ever did was for AI behavior in these games,
which really got me going. Then my parents got me a visual basic CD (the
reeealllyy simple one) and believe my first program was text-based Russian
roulette - A bit morbid for a kid, but you get the point. I think the key for
children to be interested in making their own things (programming or
otherwise) is to incorporate game mechanics so they can have fun in the
process!

------
forgotAgain
Talk to your child. Share experiences with him and talk about what you've
experienced. You'll both learn a lot.

When my daughter was in the early years of elementary school I was just
getting started with web development. I was working at home and she showed an
interest in what I was doing. I tried to teach the basics of html so she could
create web pages. She definitely had the intelligence to succeed at it but it
didn't appeal to her. I didn't push it. We found something else to share:
reading books and visiting bookstores. She's developed a broad intelligence
that is helping her have a fulfilling life without a line of code in sight.

------
pcestrada
This book, "Hello World: Computer Programming for kids and adults"
<http://www.manning.com/sande/> might be a good place to start once your child
is older. It's written by a father and son and documents his son's foray into
programming using Python. I believe his son was 10 at the time.

Personally, my parents got me an Intellivision at the age of 6 and I played it
every day. By around 4th grade, I wanted to start writing my own games so they
got me a Commodore 64 and a couple of books with game listings in Basic and I
started having more fun writing games than playing them.

------
c4urself
I was thinking on this recently myself:

Throw out the TV (He watches some DVD's on a laptop) Buy
Lego/Duplo/Kapla/Puzzles Read to him every night / let him (learn to) read

On a side note: Anybody have thoughts on leveraging KhanAcademy.org ?

------
coffeenut
I've always thought something like turtle graphics (e.g.
<http://www.sonic.net/~nbs/webturtle/>) is a neat way to teach kids
programming/algorithm basics.

It's simple enough to understand the basics, yet powerful enough to be
engaging enough to keep a child's interest, providing them a direct visual
output to their 'code'.

I would stay away from the higher level stuff like Visual Basic; there is so
much magic going on under the hood that it becomes difficult to really
internalize the basic concepts of programming.

~~~
steveklabnik
We actually made a turtle graphics DSL in Ruby for Hackety Hack, because
turtle graphics are so awesome. An example:

[http://github.com/hacketyhack/hacketyhack/blob/master/sample...](http://github.com/hacketyhack/hacketyhack/blob/master/samples/Turtle%20Stars.rb)

------
Flemlord
Get an iPad.

We have several apps we use with our 9-month daughter. It's her favorite toy
by far--the minute she sees it, she's off like a rocket tugging at the feet of
whoever is using it. It has flashcard apps, a cartoon dinosaur that talks to
her, books that read themselves to her while highlighting the words, cool
fractal displays that respond to her touching the screen, etc. It's well-built
and has withstood many baby-related mishaps.

If you can get him to love computers, everything else you're worried about
should fall into place.

------
brudgers
_"I was thinking that I could introduce him to things like BASIC not long
after he masters the art of counting to ten but I would love to hear from you
guys."_

I was talking with a neighbor about how my son was growing.

I started to say, "Back when he was little..."

Only to be interrupted with, "He's only four weeks old."

In ten years, your son will still be a little kid, even though he leads the
league in scoring, has a black belt, and can explain photosynthesis.

As he grows all he will really want is to spend time with you. Don't waste it.
You're building a person not a programmer.

------
middlegeek
I attended a TEDx event yesterday and a few parents had their middle-school
aged kids there. It was an eye opener for a few of them.

My parents watched a lot of PBS or National Geographic type documentaries with
me as a child. It gave me a view of the world outside of mine.

Internships. I did mine in my late college years but if you can start kids in
high school, again it gives them a view of the future (possibly THEIR future)
and great insight on paths to take.

Best of luck to you!

------
coliveira
Teaching how to program may be a fun experience, and I think it is valuable,
but I don't know if it is such a big advantage. Because programming takes a
lot of time, and that is subtracted from other activities that may be more
important in the long run, like reading, socializing and playing. In my case,
I will show my son the basics, but I don't think it is important that he
really learns that at an young age.

------
dp7531
Teach them how to solve problems, and how to work through getting stuck. I've
seen lots of kids (and adults) who give up when they can't figure something
out right away or get it to work the first time. Learning how to work through
this will certainly help once you are ready to introduce more IT specific
knowledge, but will be invaluable in several aspects of their life.

------
paulreiners
Let him be interested in what he's interested in.

------
reason
Just make sure you're ready to accept the fact that he may actually end up
disliking programming. And if he does and moves in another direction,
encourage him and nurture his passion. I have seen far too many kids prodded
by their parents to pursue fields kids have no interest in, myself included.
Luckily, my flame never went out, but to others it has.

------
nprincigalli
With my 8 years old boy I covered Logo and MIT's Scratch. Now we're getting a
pimped up arduino starter kit for us. Oops, I mean, for HIM! ;)

We're also fiddling a bit with Google's App Inventor, which uses
<http://education.mit.edu/drupal/openblocks> jut like Scratch.

------
benofsky
Make it clear from the start that success comes from hard work not necessarily
raw intelligence, it took me quite a while to overcome this idea instilled in
me by my parents (i.e. when your kid does something good, "well done, you must
have worked so hard to do that" opposed to "well done, you're so smart")

~~~
KoZeN
Not sure why you're being downvoted. I personally think this is pretty good
advice.

I never really excelled academically yet I became quite succeessful through
pure hard work. Unfortunately I got a lot of bad advice as a kid and it was
drilled into me that I would never be as successful as 'smart' people. Had I
known that I could counter-act my disadvantage with pure grunt work then I
probably would have been more successful from a younger age.

------
leslie
Alice and Scratch both look like good learning tools (and have educational
research backing them up).

I think it's more important though that there's someone who loves hacking in
the child's life. Children pick up on genuine enthusiasm quickly, whether it's
from you, your spouse, or someone who's a role model.

------
iworkforthem
I would definitely teach 3yr & 1yr a lot of Mathematics & Finance. Flashcard
and iPhone apps definitely helped.

IT skills become more of a necessity once they hit school. I see Programming
as a form of art, unless you are interested in it. It's not going to be of any
interest to them, like it is to me.

~~~
dcbell
Finance? I'm extremely skeptical, but my time on HN has taught me to be
curious instead. Expand?

~~~
iworkforthem
I would think that giving my some basic finance knowledge would be beneficial
to them in the future.

\- like saving up for a rainy day.

\- saving a small amount like $1 a day = $365 saved a year.

\- how compound interests work.

Having started young, they will be money wise when they grow up and not having
to work for every pay check.

------
nickfromseattle
Don't forget about physical development! I think Brazilian Jiu Jitsu is a
great martial art for kids. It teaches discipline and because you can spar at
95% without hurting your opponent it is very practical in real life self
defense situations.

------
thecombjelly
Teach him to think for himself. Being able to think things through will
definitely help with a career in programming/IT, but it is also very valuable
skill for life itself. This means knowing when to 'baby' him and when not to.

------
wlievens
In the first few years, I'd say the following three things: LEGO, LEGO and
LEGO.

------
abgoosht
just let him be a kid

------
zasz
My parents gave me a head start in math. I spent hours solving problems
instead of socializing or playing outside. I deeply resent them for it. I hope
you don't push your son too hard.

------
stretchwithme
Answer every question.

------
teyc
> He's 6 months old currently

You're already 15 months too late. If you haven't started on Baby Einstein, do
it right now.

In addition, instead of teaching ABCs, teach him to sing Q..W..E..R..T..Y.. .
Trust me, it'll make his life a whole lot easier.

You can also buy DVDs where kids sing their multiplication tables.
Unfortunately, the ones I have come across is in Mandarin. But why not have
him learn a second language at the same time?

If he doesn't have a sister, buy him dolls so that he can pull them apart to
see how things work.

You might think I'm jesting, but I'm aware of parents who are doing some of
these things.

~~~
anthonyb
Baby Einstein is crap, like most of the stuff which is forced on parents:
<http://www.google.com.au/search?q=baby+einstein+is+crap>

------
2bHalfMad
head-start in IT is a great thing to do for your kids, but more importantly is
providing him a great living environment that cultivates creativity. Let him
decide what he wants to be based on his own interest. I know alot of kids grew
up learning musical instruments, and developed great skills, won competitions
and etc, but never followed up that career after they came out of college.

------
axod
buy Lego. Lots of it.

~~~
g2046
Legomindstorms - once they kids get older.

Don't you find lego is very kit-based (you buy a box and get to build a
specific "thing" - wouldn't it be better to buy some building toy which allows
one to build whatever they want).

How about meccano? (again not the kit based).

What other construction toys?

~~~
wiredfool
Sort of kit based, but there aren't that many lego pieces that only work for
one type of thing, everything can be repurposed if they have enough other bits
and pieces. (though frankly, right now all thelegos in my house are in dump
truck form)

Konects are kinda cool, but the variety of what's straightforward to make is
lower than Lego.

Plain old blocks are the other big construction thing around here,
supplemented with some rough cut rounds from our forest. Overall though, I'd
say that the legos are used at least as much as all the other construction
stuff combined. Ymmv, I've got three boys, 6,3.5 and 1.

------
sybreon
You DO NOT have plenty of time! Kids grow up so quickly that before you know
it, he'll be 18!

------
crasshopper
Let him make decisions for himself, explore things, and try at something that
matters.

------
eluttner
just let him enjoy the time spend with you, give him problems, not solutions.
Give him options, be open to listen and show interest in his activities, you
will be surprised of how much you will also learn from him.

------
all
I was once where you are now. My kids are not yet grown up, but both are older
than your six-month old, so I can offer a bit of perspective. I will stick
with my eldest here and will detail some of his life at the moment for
perspective on what we did. I see this as giving you the benefit of learning
from our experience and perhaps (hopefully) improving upon it. Our son is
doing a lot better than many children his age, but I am sure there are others
who are doing better than he. I, myself, wish I had accomplished half of what
he has done by the time I was his age.

My eldest is 8 years old. He knows the basics of computer programming already,
but he taught it to himself. Where we are native English speakers, he reads
and speaks German without an accent. He also understands some French and a
smattering of other languages. He reads at a 10 year old reading level, and
has mathematics skills at the same level. His writing level is a bit lower. He
is also one of the most affable children in his class, known and loved by all,
and is generally thought of as conducting himself well, better than many of
his peers. He has a solid grasp of the solar system and the fundamentals of
astronomy; last year he found the four Galilean moons of Jupiter himself. On
his own, he built his own electronics switch when he was barely six and still
plays with electronics. He also has recently finished reading about WW1 and
WW2, touching upon the Russian Revolution and the Great Depression along the
way. And these were not little kid readings. He read "Im Westen nichts neues"
- the German original of "All Quiet on the Western Front" - as well as "The
Diary of Anne Frank" and several other works from various angles. I am already
getting books for him out of the local university library. I say all this to
illustrate that he is pretty far ahead of the game in many ways, and he has
enjoyed all of it.

Now this is the tack that we have taken. First, we are big fans of the Mozart
Effect on children. So we played Mozart a LOT when he was in utero and when he
was a baby. We tended to play one of the major composers (Mozart, Beethoven,
Bach) more often than other types of music until he was seven. We took to
heart Hitler's observation about the importance the influences up to seven
play. Therefore, we specifically kept from him any music that came out prior
to about 1965. After that point, the lyrics and music start to become more
complicated as protests and the civil strife of the time enter the music and
then become "free love" and all that. We will now let him hear some of that,
but not until he had a foundation from which to understand it.

One of our major guiding principles is to avoid something that might be
abusive. "Abusive" is here defined as allowing something to enter your child's
world for which s/he has no or very little framework for understanding it. So
we were at pains to give him a framework and help him understand things in
life as he encountered them early on.

Finally, we try our best not to say "no" when he wants to explore something.
Rather, we do our best to find a way that he can safely delve in. For example,
he found out the sixth graders at school were studying WW2. He wanted to
learn, too, but the school wouldn't let him because he was in third grade. He
approached me, and I cobbled together a reading list and a list of films that
he could use to work through WW2. As WW2 makes no sense without WW1, he
started there. So the point here is to never, ever, EVER limit your child but
to take their curiosity as an invitation to find a way to help them interact
with the world in a safe way.

We started playing and speaking French with him when he was two. When he was
three, he caught a whiff of German and decided that he would rather learn
German than French, so we switched (I speak both). We used Early Advantage's
Muzzy program and cannot recommend it enough. It is an award-winning program
that was developed by the BBC for teaching foreign languages to children.
Combined with doing it at home, we also sought out speakers of the target
language to help him learn. Today, my son reads full length novels in German
and is yet to watch Apollo 13 in English. When I ask him what they said on
Apollo 13, his first reply is "Houston, wir haben ein Problem!"

Finally, we encourage his learning to fight and staying physically fit through
judo. This has helped a lot, and my son has consequently taken to reading Sun
Tzu and thinking about strategy.

So, to sum it up, don't worry about tech. If you take care of the building
blocks of logic and language and foster your child's natural desire to
explore, there is no end to what they will do and where they will go.

------
neilxdsouza
I have a take on this one. Im single right now, but I love programming and
wonder how i'd like to pass my trade information to my kids (when I get
married and have a family). I see programming at some level in the future as
essential - like playing football (or basketball) or bicycling etc. For
example, I'm guessing almost every youth will be able to use markdown on a
blog post by 2040 or some HTML.

First of all today many people see programming as a career. I think by 2040,
every kid will be a programmer at some level. I'm assuming by then, a youth
then will need to know how to program to survive - it will be a basic
elementary skill like we learn in school. So a school curriculum could be
something like: draw a face using ascii characters on the screen using print
statements in say grade 5. Use a for loop in grade 6. Function call in grade
7. Recursive functions in grade 8. Grade 9 - Advanced programming -
introduction to the x86 CPU (optional - you can drop computers and take some
other subject if you want). Grade 10 - put the CPU into 32 bit mode with 5
page tables. Do you think these things are very hard for these age level? I
don't think so.

What if by then - kids played football/or hockey on some days of the week and
got together with friends and built a website on another day and played with
Lego on yet another? I think by the time you reached college then, and you had
Physics as a subject, you would probably write a program to simulate 3
billiard balls on a table and someone strikes them with a 4th. Or implementing
a problem solver applying Kirchoff's laws to circuits using Graphs traversal
algorithms which she learned somewhere around high school. Today I think
people see careers in the IT industry as an end, in 2040 I think Programming
will be a means to an end - they will permeate every branch of study you are
dealing with - be a Psychology, or Physics or Maths or anything else -
creating a website will be normal.

A lot of people are saying IT skills may not be necessary because your child
won't work in IT; I think basic IT and programming skills will help people in
the next generation understand and integrate in the world around them - so for
me programming could be right alongside Math that you learn in high school
(how many people use factorization of polynomials in day to day life (which we
learned in school)? )

So I think you are right about teaching your kids some basic programming.

I'm just wondering what is it that I had difficulties with/enjoyed: 1) Typing
- throw out the QWERTY keyboard and start your child on a Dvorak keyboard from
day one - and do typing lessons with her 2) I remember in basic you had screen
2 - 640x480 mode graphics. You could do some great drawing stuff with that -
like a circle in a for loop whose radius and origin kept changing with each
iteration. 3) Writing PC boot code as more advanced stuff (like when your
child reaches high school and still wants to learn more other wise you can
stop at recursion and let her take it forward from there)

------
9ec4c12949a4f3
Teach your child two things:

How to learn.

How to keep his/her creative in a world that tries it's best to kill it.

