00:00:00今日、VercelのCEOであるGuillermo Rauch氏による興味深い投稿を目にしました。
00:00:06それについてお話ししたいのと、コードの役割や、実際のコードがどれほど重要なのか、
00:00:11現在と未来における私の考えやその影響についてもお伝えしたいと思います。
00:00:16さて、この投稿の中でGuillermo氏は「コードは出力であり、自然は癒やされている」と述べています。
00:00:21「長い間、私たちはコードを入力として扱ってきた。
00:00:23コードを美化し、手作業でフォーマットし、整え、それに執着してきた。
00:00:28コードを書くために洗練されたGUI、つまりIDEを構築した。
00:00:31構文ハイライト、Tree-sitter、ミニマップ、キーボードトリガー、インライン補完、
00:00:37ゴーストテキスト。
00:00:38『そのカラーースキームは何?』といった具合に。
00:00:40APIや関数本体の理想的な長さについて議論し、夜を明かした。
00:00:44『このAPIは、他の人間が読むのに十分美しく見えるだろうか?』
00:00:48今、私たちの関心は、真の入力である要件、仕様、フィードバック、デザインのインスピレーション、
00:00:54そして極めて重要な本番環境の入力へと向いている。
00:00:58コーディングエージェントは、ユーザーがアプリケーションをどのように体験しているか、
00:01:04どのようなエラーが発生しているかを理解し、それをコードに変換する必要がある。
00:01:07必然的に、コードもコーダーも以前ほど崇められることはなくなるだろう。
00:01:12私が一緒に働いてきた最高のエンジニアたちは、常にコードを目的のための手段、
00:01:17つまり、すぐにまた変換される運命にある出力として見ていたのだ」
00:01:20わあ、この投稿には多くの内容が詰まっていますね!
00:01:23これについて、私にはたくさんの考えがあります。
00:01:27今、明らかに、そして皆さんも感じている通り、プログラミングの役割、
00:01:35あるいはプログラミングの世界全体が急速に変化しています。
00:01:38多くのことが起きていますが、特に私や、おそらくこの業界の多くの人々が感じているのは、
00:01:4612月以降、Opus 4.5やClaude Code、そして今回のCodexの登場で再び加速したということです。
00:01:53ほぼ毎週のように新しいモデルや新しいツールが登場しています。
00:01:58物事は素早く変化しています。
00:02:01個人的なことですが、もちろん私も、作成するコンテンツや
00:02:06制作するコース、そして何より全ての基盤となる私自身の働き方において、それに追いつこうとしています。
00:02:10だからこそ、Claude CodeやCodexに関する新しいコースをリリースしました。ちなみに、
00:02:16現在、年間メンバーシップが超低価格で全コースにアクセスできる
00:02:21大規模なプロモーションを実施中です。
00:02:24しかし、これは私たち全員に影響を与えています。
00:02:27それがここでの私のポイントです。
00:02:28私たちの活動内容、作るコンテンツ、そしてソフトウエアの構築方法が変わってきています。
00:02:35ですが、私たちが本当にコードから離れていくのかどうかは疑問です。
00:02:42この投稿は「コードはもう重要ではない」と読めますが、私はそれにはかなり反対です。
00:02:50確かに、過去において私たちがAPIデザインや
00:02:58変数や関数の命名、コードの美しさに執着してきたのは事実です。
00:03:07しかし、それらの一部は今日でも依然として重要であり、
00:03:15おそらく将来的にも重要であり続けるだろうと私は主張します。
00:03:17なぜなら、たとえ人間の役割がコードを書くことからレビューすることへと移ったとしても、
00:03:24一部が冗長だったり不必要に複雑だったりする、変な名前の付いた1万行の
00:03:33乱雑なコードベースと、クリーンなコードベース、どちらがレビューしやすいでしょうか?
00:03:41どちらの方がレビューが楽でしょうか?
00:03:44将来的にそのレビュープロセスの大部分がマシンやAIに移行したとしても、
00:03:50その世界でコードの品質が全く重要ではなくなるとは
00:03:59私には思えません。
00:04:02生成されレビューされる全てのトークンに対して支払いが発生することを考えても、
00:04:09よりクリーンに構築できれば、コードの生成においてもレビューにおいても、
00:04:17消費されるトークンは少なくなるはずです。
00:04:19トークンコストは将来的に非常に重要になると予想されます。というのも、
00:04:25現在はAnthropicやOpenAIによる助成されたプランを利用しているからです。
00:04:30私たちは実際のトークンコストを支払っているわけではありません。皆さんも私も持っている
00:04:3720ドルや200ドルのサブスクリプションですが、
00:04:39ベンダーがこれらのサブスクリプションで必ずしも利益を上げているわけではありません。
00:04:44実際のトークンコストはもっと高いのです。
00:04:47そして、これらの企業がどこかの時点で利益を上げなければならなくなったとき、
00:04:54支払額が上がる可能性は十分にあります。
00:04:57もちろん、技術の進歩によってトークンコスト全体が下がった時点から
00:05:02その段階が始まるかもしれませんが、まだ確かなことは分かりません。
00:05:07将来その市場がどうなるかは未知数です。
00:05:10たとえ理論上コストが下がったとしても、企業がもし実質的なコストを
00:05:16大幅に上回る価格を請求できるのであれば、
00:05:22彼らは喜んでそのマージンを取るでしょう。
00:05:23まあ、それはまた別のトピックですね。
00:05:25しかし、トークンとその効率性は現在も、そしておそらく将来的にも重要です。
00:05:31それはコードの品質に関係しています。なぜなら一般的に、良いコード、クリーンなコードとは、
00:05:39際限なく肥大化したり、果てしなく複雑になったりしないコードのことだからです。
00:05:47さて、過去のプログラマーも時として、ある特定の箇所で
00:05:55少しコードを書きすぎてしまう傾向があったという議論はあるでしょう。
00:06:02クリーンなAPIや、実装した時点では必ずしも必要ではなかった
00:06:08不要な抽象化を導入したりすることです。
00:06:09ユーザーがゼロのサイドプロジェクトで、将来データベースを簡単に
00:06:15交換できるようにデータベースアクセスを実装しようと決めた、
00:06:22なんて経験は誰にでもあるでしょう。実際にはそんな予定はないのに。
00:06:24その結果、必要以上に複雑な
00:06:29アダプターを書いてしまうことになります。
00:06:30誰しも経験があることです。
00:06:31それは素晴らしいことだったでしょうか?
00:06:32いいえ。それは今日でも将来でも、それが自分自身で書いたコードであろうと
00:06:37AIが書いたものであろうと同じです。
00:06:39今のところ、そして今後変わる可能性はありますが、私の経験上、これらのAIモデルや
00:06:45Codex、Claude Codeのようなツールは、物事を複雑にしすぎたり、不要な複雑さを導入したり、
00:06:54あまり意味のない変更を提案したりする傾向があります。
00:07:02特に現在のCodexはコードを決して削除せず、ただひたすらコードを追加し続け、
00:07:10フォールバックコードやレガシー対応を増やす傾向があります。
00:07:15明示的に、ほぼ強制的にコードを削除させたり古いAPIを捨てさせたりしなければなりません。
00:07:22これらは全て変わる可能性がありますが、現時点で向き合わなければならない課題です。
00:07:30そして、これこそが元の投稿が「もう重要ではない」と言っている部分です。
00:07:35しかし、私は「いいえ、重要です」と言いたいのです。
00:07:37開発者として、そうした戦いに挑み、実際のコードやコードの品質に
00:07:43今日、そしておそらく将来的にも気を配る必要があります。
00:07:49明らかに未来のことは誰にも分かりませんが、多くの理由から、
00:07:56コードベースが不必要に複雑にならないようにすることは常に重要です。
00:08:01トークン効率もその一つです。
00:08:02もちろん、レビューのしやすさも理由ですし、
00:08:08コードがアプリケーションのパフォーマンスに影響を与えるということも理由です。
00:08:18今、私は画期的な真実やニュースを共有しているわけではありませんが、
00:08:26これは見落とされがちな点です。
00:08:28AIがコードを生成するようになれば、実際のコードはリファクタリングも再生成も
00:08:34置換も簡単なので、あまり重要ではないと言うこともできるでしょう。
00:08:38トークンコストを無視すれば、それは事実です。
00:08:43しかし、生成されたコードはアプリケーションの
00:08:51パフォーマンスに確実に影響を与えます。
00:08:53データベースへのクエリ一つをとっても複数の方法があります。
00:08:56「結果が同じだから」と、ネストしたクエリや不必要に多くのクエリを
00:09:03実行することもできます。
00:09:04必要なデータは手に入りますからね。
00:09:05しかし、最適化されていないデータベースクエリの真のコストは、
00:09:12かなりの数のユーザーを抱えた途端に露呈します。
00:09:15同じことは、ネストしたループや、コードベースに忍び込み
00:09:20パフォーマンスを低下させるあらゆる要素にも言えます。
00:09:23だからこそ、依然としてコードの品質やコードの最適化は重要なのです。
00:09:30将来のAIモデルやツールはそうしたことが非常に得意になり、
00:09:37最初からより良いコードを生成し、評価し、
00:09:43さらに改善できるようになると言えるでしょう。
00:09:47それは十分にあり得ることです。
00:09:50それでも、将来のモデルが生成しようが、開発者であるあなたが書こうが、
00:09:55コードの品質が重要であるという私の主張は変わりません。
00:09:58もちろん、大きな違いは、AIがこれら全てを
00:10:04こなせる世界では、人間がそのループから外れるということです。
00:10:08Guillermo氏がここで言いたいのは、そういうことなのだと思います。
00:10:13しかし、その未来が具体的にどうなるかはまだ分かりません。
00:10:16この投稿について言えるのは、最近のインターネットのあり方
00:10:23そのままを反映しているということです。
00:10:24挑発的でなければなりません。
00:10:25私のような人間が動画を作るように、少し過激である必要があります。
00:10:30それはよく分かっています。
00:10:31ただ、この投稿では、私たちが過去にやってきたことが
00:10:37まるですごく愚かだったかのように聞こえますよね?
00:10:38そう思いませんか?
00:10:39専用のツールや、コードを書きやすくするGUIを作り、APIデザインを議論する。
00:10:45それは愚かなことだったのでしょうか。
00:10:46いいえ、それはあなたが自分の仕事を大切に思っている証拠です。
00:10:51人間として、自分の技能や仕事にこだわりを持ちたいと思うのは当然です。
00:10:56それは、「デザイナーがかつて紙にスケッチをして、
00:11:02Photoshopのような専用ソフトを使ってデジタルアートに仕上げていたのは
00:11:07愚かだ」と言っているようなものです。
00:11:08いいえ、愚かではありません。
00:11:10それこそが、自分の技術や仕事を大切にする人間と、
00:11:17そうでない人間を分けるものなのです。
00:11:19これを愚かだとか、奇妙だとか、あるいは過去の遺物だとか
00:11:29決めつけるのは、あまりに偏った見方です。
00:11:30全くクールな意見ではありません。
00:11:32そしてもちろん、私たちは今、新しいソフトウエアを構築しています。
00:11:36エージェント・エンジニアリングの世界に向けた新しいソフトウエア、例えばCodex
00:11:43アプリや、最近登場しているあらゆるAIエージェント、エージェントアプリ、GUIなどです。
00:11:49それが私たちが今作っている新しい種類のソフトウエアであり、今後も続けていくでしょう。
00:11:54そして、「エージェントにとって適切に書かれたスキルとは何か」や、
00:12:01「良いagents.mdファイルの作り方」といった新しい議論の種も生まれるでしょう。
00:12:07私たちは、人間が完全にループから外れて、何もする必要が
00:12:14なくなるまで議論し続けるでしょう。
00:12:16そんな時は来ないと思いますし、そうなってほしくもありません。
00:12:22しかし、その時までは、取り組んでいることに意見を持ち、
00:12:29自分の仕事を大切に思うことが重要です。
00:12:31それは本当に大切なことだと思います。
00:12:33ですから、コードやその構造は、今後も重要であり続けるでしょう。
00:12:41唯一の疑問は、AIが自力で全てを行い、完璧なコードを出力できるかどうかです。
00:12:47それは私にも分かりませんし、現時点では誰にも分かりません。
00:12:50未来を見通すことは不可能ですから。
00:12:53しかし一般的に、人間として、自分がやっていることにこだわりを持つべきです。
00:12:57それこそが、大成功を収めて仕事を全力で楽しめる人と、
00:13:03そうでない人を分けるのだと私は考えています。