子供がTVに影響されて「プログラミングをやりたい」と。マジですか。これは親の許可を得るようなものなのか…とも思ったけど、うちは母親が厳しくてTVやゲーム、PC、スマートフォンへの接触が極端に制限されているんですよね。まあ母親自身がTVは大好きなのでTVだけはやたらに緩いんだけど。私はどっちかっていうとTVを制限したくて、ゲームはほどほどに、PCには自由に接触させてもいいかなと思っているんですが。たまに悪いことしてないかチェックする程度で。
で、長男はゲームの時間を削ってでも「プログラミング」やってみたい、という話。TVは削りたくないらしいが。そこで、Scratchの使い方を適当にチュートリアルの進め方を教えて時間制限だけはかけて、放っておいた。しかしPCを使い慣れてないためか、うまくできないのよね。チュートリアルは説明は日本語になって読めるんだけど、画像が英語のままっていう問題もあって、日本語の説明は読めても、該当するパーツがどれなのか分からない様子。すごい頻度で「これどうするの」「できない」と呼ばれる。ただし自分にとってもScratchは初見。無論、英語やコンピュータ世界のコモンセンスを解するぶん彼よりも分かることも多いんだけれども。
ので、結局、本屋に走って本を買って渡しました。Web全盛期と言えども、洗練された知識が書籍や論文に宿るという原則は変わらない。読書の時間までは親に制限されていないし。
色々な本が出てるんですけど、だいたいいろんなゲームを作って終わり、みたいなのが多い。中から説明が丁寧で新しそうなのを1冊選ぶ。そして、1冊だけ簡単なアルゴリズムの説明と実装みたいな章がある本がありました。それもついでに買ってみた。よく見てないけど、パッと見た感じでは変なことは書いてないと思われた。
私も彼よりちょっと若いくらいの年齢でアルファベットも分からずにFamilyBasicでマニュアルについてきたサンプルを打ち込んで全く動かなくて(そりゃ0とO、Iと1を混同していたんだから当然だけど)マジ泣きしていたなぁ(そして親には「機械が間違うわけないじゃない、あんたが間違ってるのよ」と突き放された)なんて思いながら彼の反応を観察したり(…やはり思い通りに動かすのは難しいようで泣いてた)、Scratchの出来を確かめたりしていた。
情報量はかなり恵まれていますしヘルプやチュートリアルも充実していて、面白い他人のプログラムも簡単に閲覧できて天国みたい。紙の書籍に関しては…今はベーマガないから本を買うしかないね。いやベーマガ買い出したのはPC9801買ってもらってN88BASIC時代からだから、ちょっと後か。MS-DOSになってからすぐアセンブラ→C言語に移ったからな…で、その頃買って使ってたのは「C言語によるはじめてのアルゴリズム入門」とあと難解なGCの本を買って動かしてたなぁ。「C言語によるはじめてのアルゴリズム入門」のほうは実家から独立後も何度かの引っ越しに耐えて運ばれて今も手元にある。何度か改訂されて、今も売れている名著。人類への貢献は大きい。
彼も将来Scratchで素数を求めたりするんだろうか?
今ならScratchの次はなんなんすかね。フロントエンドを考えるとJavaScriptだが、nodejsは癖が強すぎて小学生が初めて見るプログラミングの環境としては考えづらい。Pythonあたりで行くのが良いのではと。しっかり作ってあるし、IDEがなくてもプログラムが組めて、Pygameがあるからゲームも作れて、AIやデータ処理関連でもPythonが事実上の標準になっている面がある。将来食ってくっていうことまで親が考える必要はないと思うしね。