ここ最近少しWebのプログラムコードを眺めています。
20年以上前には、筆者もローカルや社内DBサーバーと接続するようなアプリケーションプログラムを組んでいた時期がありました。
今ではプログラムと言えば、Web上で動かす「Java」や「PHP」、「Python」に「Ruby」などが主流で、あの頃のプログラミング経験が多少なりとも生きるとは言え、自分でWebプログラムを組むのはまったくできません。
当サイトもWordPressで作成していますけど、サイトの構成を動的に作成するために裏側では「PHP」と言うプログラムが動いています。
もちろん普段のWordPressでサイトのデザインを変えたり、文章を書いたりするのにプログラムコードを読む場面はありません。
裏側の「PHP」を意識しなくてもいいように、WordPressの管理画面などで設定したい内容を文字や数値、チェックボタンなどで指定するだけで簡単にサイトを構成できるようになっているわけです。
そう、それなのに最近眺めているプログラムコードというのは、そのWordPress関連なのです。
「WP-Members」というものをご存じのかたは多いでしょう。
WordPressでちょっとした会員制サイトを作る際には、定番のプラグインとなります。
プラグインが分からないかたに少し説明しておくと、WordPress本体が持っていない機能に後付けで様々な機能を付けたしできるものです。
元々WordPressには、会員制サイトを作る機能が備わっていなかったので、機能拡張のために後からプラグインとして開発されたものが「WP-Members」になるのです。
この「WP-Members」は、ユーザーとパスワード、その他必要な情報を入力するためのユーザー登録画面やそれらの情報を使ったログイン画面などが簡単に作成できます。
しかし、ちょっとしたデザインや画面内容や配置の変更をするためには、どうしても裏側のコードを覗く必要があったのです。
元々WordPressには「フィルターフック」と呼ばれる「定義を後から変更できる」関数が用意されていて、プラグインである「WP-Members」も同様に、「WP-Members」のオリジナルコードを一切改変しなくてもフィルターフックによって、関数の結果を変更できる、つまりサイトの構成内容やデザインを変更できる機能があるのです。
ただし「フィルターフック」を使うにしても、ある程度「WP-Members」のPHPファイルにどのような関数が用意されていて、どのように画面を構成しているかは把握しておかなければなりません。
そこで、筆者のようにコードを書けない人でも頼りたいのがAIとなるわけですね。
例えば自分が結果として欲しい処理をAIに伝えても、最初は中々正確な回答が得られないかもしれません。
ただ、AIがうまく答えを返せなくてもAIの方からも「こういう情報をください」と返してくる場合もあります。
上のように、AIはとりあえずプラグインのバージョンを教えてくれと言います。
筆者の方でも自分が求めている処理に該当する部分で分かっているところがあれば、それも合わせて知らせてあげます。
「class-wp-members-forms.php」というファイルに書かれているオリジナルの関数からフィルターフックができそうだと分かり、その部分のコードを丸々コピーしてAIに伝えているわけです。
AIとの会話を続けていくと、一つのトピック内ではそれまでの会話が無駄にならず、やり取り全てから総合的にAIは手順を示してくれます。
一回の検索で見つからなければ、次に新たな検索をしなければならない「ググる」との違いを改めて痛感しましたね。
また、PHPのコードがよく分かっていないですから、コードの解析の合間に関連する質問などもぶつけられます。
コード内の「global」がよく分からず質問すると、詳細に説明してくれました。
筆者の分かる言語に置き換えた時に、Basic言語で言う「Private(限定)」と「Public(公開)」の違いでPHPでの「Public」であると理解できました。
関数が載っているオリジナルファイル(phpファイル)をそのまま添付してもいいですし、phpファイルに書かれている関数群の中からピックアップして一つの関数だけを新たにテキストファイルなどにコピペしてそれを添付してもいいです。
当然ですけどコードの詳細が分かると、AIの答えも抜群に精度が上がります。
これまではユーザーのログインフォームや新規登録フォームの画面構成の変更や文字追加などに関して相談していました。
上の画面のように途中から作成したフォームのデザインについても相談できます。
これまでAIに見せてきたPHPのコードをAIが覚えていますし、さらに現在までのやり取りで画面がどのような構成となったかをスクショで画像添付し、オリジナルのCSSファイルも添付してあげれば、デザイン面についても詳細なアドバイスをくれます。
例え自分がコードを書けなくても、根気強くAIとの対話を続け、時には見せる価値のある資料・・になるかどうかは分からないけど、「こういうオリジナルコードがある」というファイルを添付しながら、目的の処理が完結できるように対話ができれば、期待通りに動くPHPやCSSのコードなんかもコピペすれば済むような詳細なものを作ってくれます。
これまで筆者がAIを相談相手のように使えていたのは、文章の執筆時だけでした。
今回初めてコーディングについて、1つのトピックで30回から40回ほどのやり取りを行ってみて、正に教えを乞う相談形式で進んでいきましたね。
コードが分からない分、「質問が少しあいまいで分かりづらいかな」と思っても、AIは蓄積された対話からゴールまで導いてくれました。
同時に、コーディングのように自分が何も分からず、どのように説明すればAIが理解して答えを導き出してくれるかという「分からない部分の説明」をじっくり考えた時には、自分のAIへの質問力も上がる気がしています。
これまでもAIに関するお話やプロンプトの使い方は当サイトでも色々書いてきました。
とは言え、あくまで「自分の作業の補助的な感覚で利用してみては」というスタンスを崩してきませんでした。
今回じっくりAIと向き合ってみて、とうとう「頼もしすぎて手放せない」という感情が湧いてしまいましたね。
つまりはこれまで色々AIについて”あーだこーだ”と書いておきながら、自分がAIをうまく使いこなせていなかったのだと思います。
コーディングの相談は、AIからの返答が正しいのか正しくないのかという結果がすぐ画面上で確認できます。
AIとの対話のレベルアップができる場として、コードの作成や確認は有効に活用した方がいいかもしれませんね。






