GeekWire:プログラミングは、物事の考え方を学ぶのに非常に適していると思います。だから私は、子どもたちにはぜひ触れさせたいと思っていました。それに、子どもたちは私のiPhoneで「Angry Birds」や「Cut the Rope」をさんざんやっていたので、その舞台裏でプログラムがどう動いているのかを知っておくといいんじゃないかと思ったんです。

そこで、プログラム未経験者にもハードコアなハッカーにも役立つ、子どもにプログラムを教えるコツを紹介します。

ヒント1:Logoはまだまだいける

長男Cyは4歳のときから、iPadで「Mad Logo」を使って、私と一緒に「Logo」プログラムを書き始めました。また、子ども用プログラミング言語「Scratch」を使ってアニメーションを作り始めたのも同じころです。

でも、本当の舞台裏をのぞかせるために、私は「Python」によるプログラミングを教えることにしました。Pythonは子どもでも理解できるほど読みやすいのに、非常にパワフルな言語です。私が起業したスタートアップ「Walk Score」のほぼ全てを、Pythonを使って組んだぐらいですから。

ヒント2:PythonはMacにインストール済み

MacにはPythonがプリインストールされてるってご存知ですか? 「ターミナル」から、"python"と入力するだけで実行できます(終了するには「ctrl+d」)。サイト「Learn Python the Hard Way」を見れば、Pythonプログラムのすべてがわかります。

ヒント3:コンピュータにしゃべらせる

子どもの興味をひく最大のコツがこれ。コンピュータに話しをさせてしまいましょう! Macならとっても簡単。「ターミナル」を開いて、"say hello"と入力すればいいのです。それだけで、コンピュータが「hello」としゃべるんですよ。まるで魔法みたいですよね。

131031Program1.jpg

ヒント4:数当てゲーム

数当てゲームのコードを紹介します。実行方法はこちら。

  1. ソースコードをダウンロードする
  2. 「ターミナル」を開く
  3. "cd Downloads"と入力する
  4. "python mathquiz.py"と入力する(必ず音が出るようにスピーカーをチェックしておいてください!)

長男Cyはこの数当てゲームが大好きで、何度もプレイしていました。やがて、十分に興味を示すようになったので、1行ずつ、プログラムに何が書かれているかを説明してやりました。

ファイルをテキストエディタで開いて、max_numberを100にしてみてください。

131031Program2.jpg

ヒント5:ネットは何でも知っている

再帰など、もっと心の琴線に触れるようなプログラミングのコンセプトを教えたい! というあなた。

そもそも再帰って何だっけ? という人もいるでしょう。私の場合、こんなに複雑なことを子どもにどうやって説明したらいいかがわかりませんでした。 でも、Khan Academyが、こちらの動画において、再帰的に階乗を求めるプログラムについて説明しています。

それから、私とCyが使ったコードはこちらです。Cyは6歳なので、まだ再帰なんて理解できないとは思いますが、コンピュータが大きな階乗数を叩きだすのを見るのが楽しいようです。

131031Program3.jpg

iPhone向けのゲームを自分で作って数百万ドルを荒稼ぎしている6歳児もいるそうですが、我が家の子どもたちはまだ、独自のプログラムを書くには至ってません。実際のところ、彼らがほんとうにプログラミングに興味を持っているかどうかはわかりません。

でもCyは、こんな簡単なエクササイズのおかげで、階乗のような数学のコンセプトに心を奪われているようです。それから、プログラミングは誰でもできる簡単なことだと思っているみたい。プログラムを教えたり学んだりするためのリソースは、「Code.org」に豊富にあるので要チェックですよ!

試作ながら、ブロックを組み合わせてコードをつくる「物質プログラミング」の取り組みもなされていますし、スマホで操作するボール「Sphero」は、子どもにプログラムを学ばせるいい機会にもなりそうです。その他、アーカイブ記事より「あるプログラマーが、子どもが初めて使うPCにコマンドライン方式のマシンを薦める理由」なんて記事も、どうぞ参考に。

Commentary: How I taught my kids Python programming | GeekWire

Matt Lerner(訳:堀込泰三)

Photo by Thinkstock/Getty Images.