太子プログラミングクラブ5回目!~生成AIでTurtle~

2024年11月8日は、太子プログラミングクラブ「初級コース」の5回目を実施しました。

5回目は、話題の生成AIを使ってみます。4回まででPythonを使って、多角形やフラクタルを描くプログラムを書いてきました。もっと難しい、複雑な図形を描こうと思ったときに、生成AIを活用すればよりかんたんにプログラムできます。

第5回のタイムスケジュールは、以下のとおりです。

  • 19時00分~19時15分 タイピング練習
  • 19時15分~19時30分 マウス練習
  • 19時30分~19時40分 休憩
  • 19時40分~20時10分 生成AIでプログラムの書き方(基礎編)
  • 20時10分~20時20分 休憩
  • 20時20分~20時45分 生成AIでプログラムの書き方(実践編)
  • 20時45分~21時00分 あとかたづけ

タイピング練習・マウス練習

タイピングの練習は、無料タイピングで日本語(ローマ字)入力です。。マウスの練習は、マインスイーパーとフリーセルを使いました。

太子プログラミングクラブのタイピングの練習中は、恐ろしいほどに静かになります。メンバーみんなが真剣に練習している証拠です。

太子プログラミングクラブからも、わたしのスコアを超えるメンバーが出てくるのも時間の問題でしょう。

さて、マウスの練習は、マインスイーパーとフリーセルです。

フリーセルはマインスイーパーとは違うマウス操作があります。それは、ドラッグとダブルクリックです。マウスの練習としては、複数のゲームを組み合わせて練習すると効果的です。

同じゲームばかりプレイしていても飽きるので、頭をリフレッシュする意味でも複数のゲームをプレイするのはおすすめです。

メンバーをみていて素晴らしいなと思ったのは、10分近く時間をかけても粘り強く考えてマインスイーパーをクリアしていたことです。プログラミングにおいても粘り強さは重要です。今後の飛躍に期待します。

生成AIでプログラムの書き方(基礎編)

太子プログラミングクラブ4回目!~Turtleでフラクタル~

2024年10月25日は、太子プログラミングクラブ「初級コース」の4回目を実施しました。隔週で全6回のコースの4回目ですが、日程の都合で先週に引き続き連続で実施しました。…

基礎編と言ったところで、小難しい理論はありません。生成AIにプロンプトと呼ばれる指示を出して、プログラムコードを生成させます。

さて、生成AIを使ったコーディングの注意点は、「ウソをつくことがある」ということです。たとえば下の実行例は、メンバーが「オリオン座を描くプログラム」を書かせた実行結果です。

画面中央付近に、オリオン座らしきものはあります。しかし、三星が縦になっていたり、まわりによくわからない星座があったり、とても求めたものに合致するとはいえません。オリオン座の座標がWEB上に有意な数で公開されていないのが原因だと思われます。

要は、WEB上に適切な情報がないと生成AIは正しい答えを返してくれません。しかもややこしいことに、ウソの答えをもっともらしく正しい答えのように表示してきます。生成AIを使う上での注意点で一番重要なのはこの点です。

「生成AIがプログラムコードを自動生成してくれるなら、プログラムを学ぶ意味はないじゃないか」という声もありそうですが、今のところ生成AIがアウトプットしたコードを手直しするのは人間です。人間が求める最終形に近づけるには、やはりプログラムを学んでいないと不可能なのです

そのほか、いくつか注意点はありますが、まずは使ってみましょう。人間と違って、なんど同じ質問を繰り返しても文句も言わず回答をしてくれます。また、人間なら怒り出すような理不尽で矛盾する要求をしても、素直に解答してくれます。

子供の生成AI利用については、文部科学省がガイドラインを出していますので、あわせてご覧ください。

できたコードを実行してみよう

生成AIをつかってできたコードを実行してみましょう。思い通りにできたでしょうか?

上に掲示した写真は、想像以上の結果が得られたプログラムです。作った本人も驚いていました。わたしも驚きました。

それぞれが楽しんでいる様子で、なにかしらのアウトプットがあったようです。生成AIのアウトプットに対して、コードを改良しようとしていたメンバーもいます。変えたい!作りたい!は素晴らしいと思います。

次回予告 次は作ったプログラムの自慢大会

さて次回が最終回です。ここまで5回で学んだことをフル活用して、お絵描きプログラムを書きます。最後には、メンバーみんなの前で自慢大会をします。「オレの作ったプログラムは、こんなにすごいんだぞ!」というのを大いに自慢しましょう。そしてみんなで称賛しあいましょう。素晴らしいフィナーレになりますように。