元々の機能にFという機能を追加しようとしました。
ソースコードが難しかったため、元々の機能のメインの処理を担っているAPIについて、AIに質問しました。
「このAPIを使って、Fという機能はできますか?」
AIからは、
「このAPIには、そう言った機能はありません。」
と回答が来ました。代わりに、別のAPIを使う方法を提案してくれました。かなり説得力があるものでしたが、ほぼ一から作り直す形になるので、一旦別のタスクを行う事にしました。
⸻
別のタスクが片付き、改めてこの開発に取り組みました。
AIが提案してくれたように、一から作り始めようかな…。
ただそれだと時間がかかりそうだし、現状の機能を維持できなくなるかもしれない…。
前に急いで機能Fを作ったときは、元々の機能に不具合を出してしまいました。
何か良いアプローチはないかな…その時気持ちに少し余裕のあった私は一回ソースコードを読んでみようと思いました。
しかし、普段使わない言語で、やっている処理も複雑だったので、一つのファイルをAIに共有して質問していくことにしました。
いくつか質問していくうちに、ソースコードへの理解が深まりましたが、面白い事に気がつきました。
それは、実装したい機能と似ている機能がソースコードに書かれていることです。
⸻
私はAIに聞きました。
「機能Fはできませんか?」
するとAIは、
「はい、できます。」
とあっさり答えました。信じられませんでした。
過去何度もAPIについて質問して、確かソースコードも共有していました。
間違えて回答しているのかと思い、AIが提示してくれた通り実装すると、一度エラーは出たものの、それをクリアすると動きました。
驚きと同時に少し怒りの感情もありました。
AIを詰めました。
「あなたは過去に、このAPIは機能Fを持っていないと回答しました。しかし、今回はなぜできたのでしょうか?」
それに対するAIの回答は、
「APIには機能Fを持っていないというのは事実です。しかし、ソースコードのAPIの設定部分に注目すると、その機能を実装できることが分かりました。結果的にAPIによって機能Fを実現できていますが、APIのメインの機能ではありません。」
⸻
私は何か新しいことを発見したような、幸せな気持ちになりました。
(万能でないAIに少し苛立ちも残りました。)
急いで実装しようとしてもできなかったことが、遠回りをする(人間がわざわざソースコードを理解しようとする)行動によって得られたからです。
この行動の結果から、次のような事を学びました。
• 急がば回れ
• AIの回答は万能ではない
• AIは使う人のスキルによって結果が大きく異なる
• 余裕が大事
• 楽しむ気持ちが大事
• ソースコードを理解することが大事
読んでいただき、ありがとうございます。