jeyseni's diary

「ジェイセニ」と呼んでください。批判ではなく提案をするのが生き甲斐です。

「ChatGPTでプログラミング」はアリ--記号1文字の間違いでバグになるような世界こそ,コンピュータにやらせよう

学生時代に、コンピュータプログラムをFORTRAN言語で書いた。社会人になって、パソコンのプログラムをBASIC言語で書いた。その後は、ビジネスの自動化のためにLOTUS 1-2-3Excel、Word、ファイルメーカーなどではスクリプトで処理をしていた。

   スマホでアプリを作ってみたいという気持ちがあり、定年後にプログラム言語をもう一度ゆっくり勉強するつもりだった。なにしろC言語などの本格的なプログラム言語は筆者にとっては異次元の世界で,何度見てもあの記号だらけのプログラムが理解できない。定年年齢を過ぎたが,平の契約社員などでだらだらと仕事を続けているうちに、2022年末に登場したのがChatGPTである。

   機械翻訳には興味を持っており,複数の翻訳ソフトを試したり,果ては自分で辞書を作って部分置き換えによる翻訳サポートプログラムをファイルメーカーで作ったりしてきた。プロの翻訳家の世界で使われているという翻訳システムについても話を聞いたことはある。しかしすでに、機械翻訳の分野ではGoogleビッグデータを使ってほぼ満足の行く翻訳結果を出していたし、さらに高度なAIを使ったDeep-Lという翻訳システムも登場した。これらの登場で,今のところ英文を素直に読もうという気持ちは薄れてしまった。

 さて,そこに登場したのがChatGPTという対話型のAIチャットボットである。書き物を商売にしている筆者のような者にとっては,脅威であり,「触らぬ神に祟りなし」と登録そのものを拒絶し,もちろん使用もしていない。おそらく,ある点においては筆者の文章よりも優れたモノを書くであろうことは容易に想像できるからである。

 一方,各界の話が出てくる中に,プログラミングがかなり正確に短時間で作成できる,という効果が紹介されている。

 うん,「ChatGPTでプログラミング」はアリだと思う。というのも,FORTRANもBASICも,基本的には「英語で命令する」ということなので,あとでプログラムを読み返しても,何をさせようとしているのか,ほとんど簡単に理解できる。

 ところが,世の中の主流となっているC言語やその派生言語,JAVARubyなどのプログラミング言語は,独特の書式を持っている。また,ピリオドを含むさまざまな記号が重要な意味を持っており,その1つを間違えただけでもエラー構文になってしまう。正直,何度かトライしたが挫折しているし,ExcelなどのVisual Basicですら,カッコ1つが意味を持ち,もはや英語とは思えない構文である。

 AIチャットボットが,目的に合わせたプログラミングを一瞬で書いてくれるのであれば,これはプログラマーにとっては朗報である。というのも,先の1文字違いは,タイピングミスでいつでも発生しうるからであり,プログラマーが常にそのバグ取りに多大なる時間を取られてしまうのは無駄だなと思っていたからである。

 もっとも,1つ1つの処理をつないで全体でまとめた動きをさせるには,プログラミングそのものを知っている必要があり,そこはAIではまだできないところだと思われる。プログラマーは,チャットボットもうまく使って,効率よく仕事をすればいいと思う。

 筆者が考えているような簡単な動作なら,ChatGPTでプログラミングが簡単にできるだろう。それを見ているうちに,いろいろなルールも覚えて行けるかもしれない。

 使い慣れたファイルメーカーでも,ときどき関数の使い方がわからなくなることがある。ここ20年ぐらいは,google検索してみると,たいてい同じような悩みとそれに対する解答を見つけることができた。しかしWeb上の解答は解決法ではあっても,そのままコピーして使えるものではなく,自分で考えて組み込む必要があった。おそらくChatGPTによるプログラミングは,ほぼそのままコピペすれば使えるものになっているだろう。プログラミングそのものの著作権は保護されているので,ChatGPTが作成したプログラムが著作権に抵触する可能性は否定できない。しかし,よほどの組み込みソフト以外は,最適な解が存在し,それは1つの形に集約されていくから,やむを得ないのではないかと思われる。

 いずれにしても,筆者にとっては「こんなアプリを作りたい」という欲望がまだ明確に生まれているわけではないので,やはりChatGPTへの登録にはもう少し時間がかかるだろうと思われる。

【追記】ChatGPTでプログラミングOK,と書いたが,世の中には厄介な人たちもいるようで,なんとウイルスプログラミングをAIで簡単に書かせようとする試みがあることを知った。ChatGPTの場合,すでにこのような不穏な使い方については回答を拒否するようにセットされているということだが,なんとそのブロックを破る裏技も存在することを知った。悪いヤツはとことん悪い方向に知恵が働くのだなと,改めて愕然としている。