太子プログラミングクラブ中級第1期(2026年3月)~AIチャット機能を追加する~

太子プログラミングクラブは、双方向通信をするプログラムに取り組んでいます。3月はチャット機能に、自動応答を組み込みます。まずは自動応答から。後半で生成AIによる柔軟な応答を体感します。

GitHubからコードダウンロード

プログラミング学習の初期段階で写経は効果的な方法の一つです。クラブでも写経を基本としています。

しかしながら、「長いコードになるとなかなか動かない」「短いコードだと出来上がりが面白くない」という矛盾に悩んできました。一部生成AIを使うことで、コーディングが未熟でも動くプログラムを作れるという体験は可能になりました。ただ、この方法はわたしがコードを把握できないという別の悩みがあります。

コードと実際の動きをリンクして体感してほしいという考えがあって、それを実現するアイデアがなかなか出てこなかったのです。

今までは、ホームページにコードを載せたり、ファイルを配ったりしていました。しかし、いまいちしっくりこない状況でした。今回始めたのはGitHubによるコード共有です。

コードを共有させるまでのわたしの手続き量と、やりたいことが合致しているように思います。

大学生や社会人がチームでコーディングするなら当たり前なのでしょう。大人→子供のコード共有でどれだけうまくいくか、これから検証です。

この日は、考えていた以上にうまくいきました。全部のコードを写経するのではなく、重要なところに絞って写経する仕組みが作れそうです。

IPアドレスの取得を基本動作に

3回目となると、「自分のIPアドレスを調べて記録してね」と伝えるだけで、メンバーだけで出来ます。

メンバーを見ていると、小学生だから難しいとか関係ないと思います。難しいかもしれませんが、それを楽しんでいるように見えます。厳密な理解はとりあえず置いといて構いません。周辺知識を勉強していけば、そのうちわかるようになります。それでいいと思います。

クライアント側を自動応答プログラムにする

サーバー側はそのままで、クライアント側を自動応答プログラムに変えます。プログラムはGitHubへ。

簡単な自動応答プログラム
クライアント側がかんたんで決まった自動応答をするプログラム

サーバー側からメッセージを送ると、クライアント側が自動でメッセージを返します。

メンバーのうち、半分は動いたかな。歓声が上がっていました。プログラムが動いた時のこの歓びは、やったことがある人でないとわからないと思います。あなたもぜひ体感して下さい。

ファイヤーウォール設定にやられた

クラブの前には、プログラムの動きを検証しています。もちろん今回も検証して臨んだのですが、うまくいく送受信ペアとそうでない送受信ペアがでてきました。

すべての環境を検証できるわけではないので、これが現実です。特に複数台がからむ通信プログラムは想定外がたくさん出ます。

その場で検証しながら、問題解決していきます。この姿を見せるのが、プログラミング学習の本質だと思います。

「問題解決のために、仮説検証を繰り返しながら答えにたどり着くプロセス」

見せてる方はめちゃくちゃハードです。限られた時間で成果を出さないといけないので。教材を与えて、ぼうっと見てるだけじゃないんですよ。