At 5, he reads well. He is not good at spelling - one reason I give him a short cheat sheet - but he can make out a lot of what's going on. Not everything, of course.
We didn't start them on computers from the cradle. We read books to them a lot, and play games involving numbers and words. Jacob loves Dr. Seuss books and word games.
But lest anyone think we're some sort of tiger parents, we also open the front door and let them go play outside, maybe sending some sidewalk chalk with them if they want it.
I got a TRS-80 at about 5. It had only a CLI (BASIC-based). That was a huge incentive for me to learn to read. Nobody else in the house knew about computers then either, so unless I wanted to wait for my dad to get home from work, it was me and the manual.
:) I never though one second about "sl" being an acronym. I always thought of it as the program I install to punish myself every time I misspell "ls"!
At 6 I was running through the registry messing up everything I can. (I once made the desktop completely iconless, didn't make for happy parents.)
Now I've got a 4.5 year old daughter, she uses an android tablet pretty consistently and I'm glad she's shown interest, I think I'll be getting a box setup for her soon now that she's showing a bit more interest.
I then learned BASIC on a VIC-20 at 5 by copying my dad and experimenting (at one point I spent an afternoon after I learned about POKE, POKE'ing through large chunks of memory and being delighted every time I managed to provoke weird sounds or visuals).
Many developers I've known have similar stories.
Looking at my own son (3 now) I absolutely think starting at the command line makes learning some basics like that fairly reasonable to achieve for most 4-5 year olds at least. A mouse is hard - it requires a lot of coordination. Touch interfaces works, but limit how far you can easily go in some directions (though they work great for others).
I had no clue what I was doing but it was a blast. :)
Parents should let their kids discover what they like, not force their own preferences on them.
After all, if the kid is interested in something else instead they have plenty of time to develop other interests. As a general rule though kids usually do pick up interests from their parents, pretty much every friend I know has some hobby that one of their parents introduced them too (Music , Computers , Cars , Photography etc).
If a parent doesn't create opportunities for the kid to learn about things that they might not get to do at school then they risk having a kid who marches through life with no passions or direction.
The variability between children is one of the reasons I really like the Montessori education philosophy. http://en.wikipedia.org/wiki/Montessori_education
It's very fluid though: some people do, some people don't. Strangely, children tend to be very divergent in capability at early ages, then they tend to normalize as they get older. At least, that's what people with lots of experience with kids tell me. :-)
I wrote my first love letter at age 5 and my mother delivered it to the girl's family, who took it and read it to her, because the poor child was only 5 years old and couldn't read herself. LOL!
Had a chat with my wife who has degree in education, esp early ages. She used to work in kindergartens and schools, and yes, the development varies a lot in young ages, but programming at 3?....
PS. I know it's bit vague and sorry no sources with data points at this time.