エンジニア的なネタを毎週書くブログ

東京でWebサービスの開発をしています 【英語版やってみました】http://taichiw-e.hatenablog.com/

子供がプログラミング教室に通い始めまして。

この記事は、子育てエンジニア Advent Calendar 2023の6日目の記事です。

こんにちは。Webサービスの開発マネージャをしております。
私には8歳(小2)になる長男と、3歳の次男がいます。
今日は、長男がプログラミング教室に通い始めた話を書きたいと思います。

きっかけ

きっかけは、長男の、某・有名小学生向け通信教育のプログラミング教材でした。国語や算数がメインの教材ですが、昨今は小学校でのプログラミング教育をするということで、プログラミング教材(タブレットで実施する)がついていたのです。
Scratch状の文法・UIで、キャラクターに対して「前に進む」、「右に曲がる」などの命令を並べてゴールまで誘導するものでした。(低学年向けだったので、分岐やループもまだなし)
そして、4-5ステップ程度のブロックを「正解通り」に並べるとキャラクターが動く一方、「正解通り」でなければ、

「あれれ~」

という声が流れて何も動かない。というものでした。
この仕様が私は大変不満でした。

プログラムを学ぶ時は、とりあえずお手本を写経してなんとなくの文法を学び、その後「自由な発想で定数を書き換えてみたり、処理を足してみたり、順番を入れ替えたりしてみて」徐々に学んでいくものだと思います。
「『間違った挙動』をさせられない」なんて、なんとつまらない教材か!

と感じました。
一方で、長男自身はプログラミングに興味があるようでした。もしかしたら私の職業も関係していたのかも知れません。
せっかく息子が興味を持っているのになんともったいない、「おれが本当のプログラミングってやつを教えてやるぜ!」*1と考えました。

なお、そもそも前提として、私自身は現時点で息子に、「プログラムを書けるようになって欲しい」ということは求めていません。
あえて比較するなら、それより水泳教室に通って泳げるようになってくれたほうがいいなと思っています。
一方で、ソフトウェアは何ができて何ができないのか という間隔はぜひ身につけてほしいと考えていました。ソフトウェア・プログラムがどういったものであるかを理解することで、今後むやみやたらに『AI』を恐れること・過大評価することや、逆に「エンジニアは魔法使いで何でもできるといった感覚を持つこと」を避けてほしいなと考えています。

教室探し

教室の選定に当たっては、妻*2が、何件か候補を選んでくれ、私が息子と一緒に体験入学してきました。
4件ほどお伺いした中で、最終的に現在の教室に決めさせてもらいました。

(恥ずかしいので具体的な校名は避けさせていただきます…が)決め手となったのは

  • マンツーマンではなく、他の子との交流があること。どうせ通うなら、知り合い・友だちを作ってほしかった。
  • 教材が、エンジニアによって作られたものであり、エンジニア目線で作られていること。*3
  • カリキュラムの中に、「その技術が現実世界で何に使われているか」という要素が、(ちょっとだけですが)含まれていて、学んでいることと現実を繋げてくれること
  • 隔週ではなく、毎週教室があること

でした。

入ってみてどうなった?

始めてから半年弱が経過したのですが、親としてはとても満足しています。

  • 息子が非常に興味を持ってくれていて、毎週楽しみにしている
  • とはいえ、「お勉強」なので気分が乗らないときもある。毎週教室があり、また、多少の宿題もあるおかげで、習慣化して継続的に続けられている
  • 息子が、分岐、繰り返し、変数、関数などの一通りの考え方を理解してくれた。これがわかってれば大体のプログラムは本質的には理解できる
  • 程よい難易度。普通に動かすことはできるんだけど、「Sランク」を取るためにはステップ数をギリギリまで削る必要あるという要素がある。
  • そのためには、重複コードをやめて繰り返しにするなどの工夫が必要なのだが、これがパズル状で難しく、息子から相談されたお父さんのほうがウンウンうなりながら図を描いて考えていることがあります。
  • (元々期待していたわけではなかったが)毎月、自分の作った作品をプレゼンテーションする機会がある。少々のプレゼンスキルの育成をしてくれる。
  • (元々期待していたわけではなかったが)タイピングを教えてくれる。ホームポジションや、指とキーのマッピングを教えてくれる。
  • 毎週、生徒一人ひとりの受講内容、様子に対してレポートをくれる。(一日に10名程度は受けているようなので、作業量がやばい… 本当に尊敬)


ということで、特に「一流プログラマーになってくれ!」とか「親父の後をついで君もエンジニアに!」などとは全く思っていないのですが、
今後もプログラミングを楽しんでくれるといいなと思います。

*1:そもそも教室など通わずに私が教えればいいのでは? という考えもありましたが、親子間で何かを教え続けるというのは、双方に相当の根気が必要になります。

*2:彼女は「ごく普通の人」なので、プログラムは全くわからない

*3:具体的にどこが? って言われると難しいのですが、冒頭の用に「プログラムを知らない人がプログラムの教材を作れと言われて作りました」感がありませんでした