はじめに
ChatGPTの登場 2022年11月30日 から約3年半
動画生成や画像生成、AIコーディングエージェント等々、とても便利なツールが次々登場しました。
AIはとても身近で当たり前になってきたと感じます。
しかしその反面、AIに頼りすぎるデメリットも大いにあると思っています。
今回はその危険性について触れてみます。
AIに頼り過ぎた過去
実際に私もAIに頼りすぎて失敗した過去があります。
失敗する使い方にはパターンがあります。
失敗する活用方法
- 丸投げ:とにかく生成AIに丸投げして何でもさせる
- 検索:google検索を使用せず全て生成AIとの対話で済ませてしまう
- 錯覚:これを続ける事により、生産性が上がった。効率化できた。と勘違いしてしまう
確かに自分で考える時間をなくし全て生成AIにさせる事で楽にはなりました。
ただ、これは ひらめきを失う という大きな代償に気付いてないだけだったんです。
失敗しない活用方法
-
添削:文章等は一通り作成してから添削してもらう。
1から生成ではない - リファクタリング:まずは動くコードを書きAIにリファクタリングしてもらう
-
抜け漏れ確認:設計書も
1から生成させるのではなく、箇条書きでもいいので構成や機能などを列挙した後、内容を確認してもらう - 検索の拡張:google検索をしてもなかなか得たい情報が得られない。時間をあまりかけられない。そういった時に生成AIに確認
こうして思考の外注をやめた後、ようやく自分の頭で考えるという努力が大事!だと気付きました。
AIコーディングエージェントに当てはめると
上記の失敗例をAIコーディングエージェントに当てはめると下記のようになります。
- ソースコードを読み込んで設計書を書いてもらう
- 設計書の内容をソースコードに落とし込んでもらう
- テストコードを書いてもらう
- 作成したテストコードの実行
- コードレビューをしてもらう
等など、プロンプトで制御して開発のほとんどをやってくれるツールとして使っている方が多いように感じます。
最近の研究で明らかになってきた事ですが、 AIがそれらしいバグ(嘘)を含む ことがある。
AIは動くコードを書くのは得意でも 保守性の高い コードを書く事は苦手。
人がつくるより バグの混入率が高い リスクがあると言われています。
こういった 技術的負債 を抱えている企業が多いと推測されています。
ただ、私は真の 技術的負債 はそこではなく別の所にあると思っています。
真の技術的負債
まさに 思考力の低下 や 脳の衰え 等のように人の技術力そのものが奪われる!です。
なぜか人はAIに仕事をさせると 生産性が上がった! と勘違いしてしまいがちです。
短期的に見るとそうかも知れないですが、ひらめきを失うと保守ができないどころかAIがないと開発できない状態になってしまいます。
私は失ったひらめきを取り戻してからそれに気づきました。
Kiroを使った個人開発の結末[
個人開発でKiroを使ってみて、最後は オペレーター化 してしまいました。
AIにさせるから実務で使わない環境にしよう!と決めた私が悪かったかもしれません。
しかし振り返ってみると、最初は楽しかったしわからないなりにコードの差分も確認していました。
修正箇所の稼働確認も最初はきちんとしていました。
でも、成功体験が続きすぎた後半は何も見ずただ指示を出すだけになってしまいました。
プロンプトでAIを制御する からこそ陥りがちな状態だと感じました。
おわりに
プロンプトでAIを制御している つもりが、いつの間にか AIに思考を制御されている。 そんな状態に陥っていたのだと痛感しました。
道具が進化しても、それを使う人間の脳が退化しては本末転倒です。
「AIにコードを書かせる」のではなく、「AIと共に、より深くコードを理解する」。
そんな、思考を止めない開発スタイルこそが、これからのエンジニアに求められる最も重要なスキルなのかもしれません。