見出し画像

GPT4を教師役としてプログラムの勉強をしてみた感想

前回の続きです。ようやくマイクラJava版で画像を羊毛で置き換えるプログラムを作るという目標までたどり着いた。

一部Twitter界隈で話題になったちびまる子ちゃん一期79話のゆういち君
ゆういち改心しておくれ

さて、これまで何度もプログラムの本を読んでダメだった人ですがここまでたどり着きました。

さてその点を踏まえていろいろ述べてみようと思う

参考書の問題点

  1. テキストの作者が「プログラムできる人」ゆえの不案内
    これは塾のバイトや勉強を見るときによくあるのだが、ページ数の問題もあるが、ずぶの初心者が???となる基本の基本がわかってないので理解が進みにくいところが多いことがあった(これはどの本でも同じである)。例えば、
    mc=mcpi.minefrat のような「mcと=の間のスペースは入れるべきなのか」とか
    def getNearRgbBlockId(mr,mg,mb):
        distance_dict = {}
        for blockid in toRGB:
         r,g,b = toRGB[blockid]
    のような空白(インデント)の意味の説明なくいきなり始まるとか
    関数の違いなど、たぶんできる人なら余裕だけど全くわからない人だとそこで止まってしまう

  2. プログラムのバージョンや載ってるプログラム自体のバグ
    プログラムのバージョンが違えば動かなくなるし(当然なのだが)
    本のプログラムがうまくいってるのに現実に打つとバグが発生するとか
    初心者殺しが点在している

  3. どの本がいいのか判断が出来ない。
    本によっては説明不足が多くて理解できないというのもあり得るので、何が正しいのかとかの判定者が必要になる。

GPT4を教師に迎える利点

  1. AIなので気兼ねなく聞ける
    これはわかりにくい所を覚えるまで何度でも聞けるし、忘れたところは聞いても怒られない。そして、話し方を高校生・中学生とランクを下げたり「ステップバイステップ」でというと段階を踏んで教えてくれる。

  2. タイプミスや文法のミスを一発で修正してくれる
    AIなのでそういう修正に関してはかなり得意で、とくに関数名の間違いはすぐに直せる。ただし、すべてをまとめて出せる感じではなさそうなので「スペルミスや文法ミスはありますか?」を何度も通して「文法やスペルミスは見当たりません」と答えてくれるまでやると問題はない。もし場所が分からない場合は「太字にして違いが分かるようにお願いします」と頼めば指摘してくれる。

  3. プログラムの追加が容易である
    指示さえ正しければ、新しい機能を追加してと言ってくれたらすぐに修正されるのでコピペして張りなおせば直ってしまう。

  4. プログラムが動かない原因や提案が得意
    古い本だと動かない理由が初心者には捕まえにくいが、それさえもGPT4はちゃんと教えてくれる。またこうしたほうが動くかもで提案できるのもある。

GPT4の弱点

  1. 自分の置かれてる立場を忘れる
    どうやら確率論で述べてるので過去の尋ねられた情報を参照せずに進める可能性がある

  2. 問題点をすべて出せなかったり(何回も小出しにする)、配慮できない
    このあたりは前段に答えた通り、記憶をもとに回答・配慮するわけではないので確率的に出ないものは扱わないようだ。

  3. 使う人間の技量次第になる
    質問や特性を知らないと絶対に答えにたどり着けないので技量がある程度ないと使えない

こんな感じなのではないかと思った。プログラムの教師役としてはかなり有能だし、スペルミスや文法の確認はGPT4に任せてそういうミスを減らすように使うとか考え方次第なのではないかと思った。

この記事が気に入ったらサポートをしてみませんか?