AIエージェント以降の理想的なプログラマ像
This content is a draft and will not be included in production builds.
学習や理解について
Section titled “学習や理解について”どうやって行うかは別として、理解をするために苦労をしなければならない側面は残るだろう。
この辺りはAIと知識でまとめてある。
コードを書くという行為について
Section titled “コードを書くという行為について”自分で書く機会は減っていくだろうとは思う。
- モックアップ等の目的が果たせれば捨てるもの
- 結果が分かりきっているコードの記述
- 自分だけまたは小規模な人数だけで使うような壊れても困らないもの
- 多少壊れてもいい画面のデザイン等(これは各々のポリシーによる)
この辺りであれは、自分で書いても得られるものがほとんどないのでAIエージェントで生成すればいいと思う。しかし設計だけでは良いフィードバックを得られないとか、書くことで脳が整理されるなどもあるので、全てが消えるとは思わない。具体的には、
- 知識のないコードベースやライブラリなどを学ぶため
- 将来に渡って長期間メンテナンスし続けなければならないが理解の浅い領域
こういった場合は自分で書くほうがいいと思う。例えば何も知らないコードベースでもAIエージェントで動くものは生成できるだろうが、追加したコードが全体からみてどのように作用するかを理解できていない。もしくは理解した気になっている1だけで知識として使える状態には到達していない。最も困るのは障害などの対応が必要になったときで、理解が及んでいないため当たりをつけることも困難であろうし、AIエージェントで調べるにしても出力が正しいのか判断ができない。そうなると、分からないものを早く直せと圧がかかっている状態になり、これは少なくとも自分自身は良くないストレスになる。なので理解した気になっているが実はしていない状態は絶対に避けたい。
ここまで書いていて気づいたが、何をどこまで見逃せるか次第なのだろう。例えば自分自身は画面のデザインなどは多少壊れても使えればいいと思うが、おそらくそこだけみてもデザイナ視点では価値感が異なるだろうし、メンテナンスに労力を割かない、もしくは苦労が分からない人はメンテするかによらずAIエージェントで生成しても何とも思わないのだろう。
エンジニアの役割
Section titled “エンジニアの役割”したがって、エンジニアというロールから「コードを書く」ことが全く無くなるとは思わないけれど、間違いなく比率は下がっていくだろう。では設計だけすればいいのかというとそんなことはなく、A.I. Should Elevate Your Thinking, Not Replace Itによれば判断や決断を伴う部分は依然として必要になるとのことだった。
真に価値のあるエンジニアとは、障害が発生する前に隠れた制約要因を見抜ける人です。チームが誤った問題に取り組んでいることに気付ける人です。曖昧な議論を明確なトレードオフに落とし込める人です。欠けている抽象化レイヤーを特定できる人です。 コードを読むだけでなく、現実そのものをデバッグできる人。周囲が混乱と捉える状況に明確な理解をもたらすことができる人です。
例えばAIエージェントは今の時点では新たな抽象化を行う比率が有意に低いので、機能を実装するにあたってどのような抽象化を行うか、もしくはその問いは妥当なのか、そもそもコードの肥大化を伴ってでも解く価値があるのかなどの決断が求められる。このようなセンスは一足飛びで得られるものではない。
これらのセンスをどのように得るのかについては、倫理観もそうだが、脳は苦労しなければ記憶しないらしいので、悩んだり考え続けたりといったプロセスが重要なものを育むのだろう。megamouth氏の記事、お前らの正義の話をしようを引用する。
ところがAIは、免許なしで車のキーを渡してくれる。ClaudeCodeに「スクレイパー書いて」と頼めば、動くコードが出てくる。そのコードがどういう力を持っていて、相手のサーバーに何をしているのか、なぜそれが問題になりうるのか、サービス提供側がどういう論理で動いているのか。そういうことを知らないまま、エンジンだけが手に入る。
君に欠けているのは、そもそも倫理ではない。もっと手前の話だ。何しろ自分が何を動かしているのかを知らないんだ。無免許でアクセルを踏んでいるのと同じだ。そして、無免許の人間に交通倫理を説いても、あんまり意味がない。まずはそもそも車がどう動いていて、なぜ人を轢くのかを理解するのが先だ。
Footnotes
Section titled “Footnotes”-
脳は苦労しないと記憶しないらしい、と同時に、人間の理解は書く速度に律速するらしい ↩