Welcome to the Grand Experiment
For the past year, I've been attempting to use my super powers to teach my oldest daughter how to be a programmer. At the 2012 PyCon, all those in attendance got a Raspberry Pi. As soon I saw it in my hands, I knew exactly what I would do with it. I never once considered using it myself, which is weird, but that's the kind of things that happen to you when you're a dad.
As soon as I got back in Nashville, I showed it to my 7-year-old and told her that it would her very won computer. She thought that sounded cool, but not really knowing what that meant.
So far, I would call it a moderate success. She remembers how to navigate around the file system between sessions. She can write simple Python code at will, and she still has fun building Scratch programs.
Producers, not consumers
I read an article several months ago (which I'm frustrated to say I don't remember where it was located or I would link it for your reading enjoyment) that eloquently stated how the mobile revolution is further turning kids into consumers of content, and preventing them from discovering how to become producers.
Back in 1981, when I first turned on my TRS-80, I was presented with a small, white rectangle at the top of the computer monitor and an instruction manual in my hands. Within months, I had written programs that did my math homework for me, a game I called Monster Mansion (inspired very much by Dungeons & Dragons, which my brother and I had recently discovered), and a program that catalogued my Hot Wheels collection.
Kids today get a handheld computer, either in the mobile phone or tablet form factor, that immediately turns them into consumers of content produced by multi-national corporations, becoming just another statistical data point in how to more efficiently deliver advertising.
So when my wife and I discussed what electronics, if any, we would get the girls for Christmas this year, Chromebooks quickly bubbled to the top. We were done with the cheaply manufacured LeapFrog products and their ilk. They all broke quickly and had no way for the kids to produce anything on it. They simply responded to produced stimuli.
With a Chromebook, they get what, I consider, to be the base building block in what is the future of development anyway - cloud first computing.
Even the simple fact that there is a keyboard on the thing is a huge advantage in my mind. With all the other kids running around with Nexus tablets and smartphones simply swiping Instagram photos and tapping away their Twitter updates, my kids will be masters of their own small universe.
By age 9, I want my oldest to know how to spin up instances of Linux in AWS, program in at least two languages, and understand how her upcoming Arduino board works. If my 5-year-old picks up skills along the way, and learns these things quicker, all the better, but she will know the same things by age 9 as well.
I truly feel it is my responsibility as a parent to prepare them for the world they will be entering, but not as a zombie consumer. No matter what field you enter today, having programming skills immediately sets you up for success. There is no professional field left that isn't affected by computers and software.
Stripping it all down
If I could find a way to have the Chromebook boot into the CLI and not into ChromeOS, that would be even better. Even making them type a command to launch the OS drives home that everything derives from the CLI.
I'm sure there's a way to do it.
That's how I want my girls to think, "I'm sure there's a way to do it." Those without basic knowledge of software and hardware simply throw up their hands and say, "This thing sucks, it won't do what I want!" There's usually a way to make it do what you want, it all comes down to the effort you're willing to put in to make it work.
It's a Festivus miracle!
So the kids will finally have their own computer, just not in the form factor they might have expected. That will make 2014 the Year of the Chromebook for my girls as they take their first stumbling steps into the world of computing and programming.
Should be a lot of fun.