週明け早々、とんでもない持論から始めよう!

MMaximilian Schwarzmüller
Computing/SoftwareSmall Business/StartupsManagementInternet Technology

Transcript

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そうでない人を分けるのだと私は考えています。

Key Takeaway

AIがコードを生成する時代においても、コスト効率、パフォーマンス、そして開発者のプライドという観点から、コードの品質と構造へのこだわりは捨ててはならない重要な要素です。

Highlights

VercelのCEOであるGuillermo Rauch氏の「コードは入力ではなく出力である」という主張への考察

AI時代の進展により、プログラミングの役割がコード記述から要件定義やレビューへと移行している現状

「コードの品質」はトークンコストの削減やレビューの効率化の観点から、将来も依然として重要であるという反論

AIモデル(CodexやClaude Code等)がコードを複雑化させたり、不要なコードを蓄積させたりする傾向への指摘

最適化されていないコードがアプリケーションのパフォーマンスに与える実質的な悪影響とコストの懸念

自身の仕事や技術に対してこだわりを持つという「職人魂」が、AI時代においても人間とAIを分ける鍵であるという見解

Timeline

Guillermo Rauch氏の投稿とコードの役割の変化

スピーカーはVercelのCEOによる「コードはもはや入力ではなく、単なる出力である」という挑発的な投稿を紹介します。かつて開発者はIDEやシンタックスハイライト、APIデザインの美しさに執着してきましたが、現在は要件やデザイン、フィードバックといった「真の入力」に焦点が移っています。Claude CodeやCodexといったAIツールの急速な進化により、開発者の働き方そのものが根本から変わりつつある現状が強調されています。この変化は教育コンテンツやソフトウエア構築のプロセス全体に大きな影響を与えており、業界全体が適応を迫られています。スピーカーはこの急激な変化を認めつつも、今後の議論の土台としてこの投稿を引用しています。

なぜAI時代でも「クリーンなコード」が重要なのか

「コードはもう重要ではない」という極論に対し、スピーカーはレビューの容易さとコストの観点から強い反論を試みます。人間がコードをレビューするにせよ、将来的にAIがそれを行うにせよ、乱雑な1万行のコードよりもクリーンなコードの方が圧倒的に効率的です。また、APIの利用料(トークンコスト)が将来的に企業の利益追求によって上昇する可能性を考慮すると、冗長なコードは直接的な金銭的損失につながります。現在は各ベンダーの助成により低価格で利用できていますが、トークン効率を高めることは持続可能な開発において不可欠なスキルとなります。したがって、コードの品質を無視することは、運用コストの増大を招くリスクがあることを指摘しています。

AIの傾向と不必要な複雑さへの警戒

過去のプログラマーが陥りやすかった「過剰な抽象化」という問題は、現代のAIモデルにおいても形を変えて存在しています。CodexやClaude Codeなどのツールは、時に物事を複雑にしすぎたり、削除すべき古いAPIを保持したままコードを増殖させたりする傾向があります。スピーカー自身の経験から、AIは放っておくと「コードを削除する」ことよりも「追加する」ことを優先するため、人間が明示的に管理しなければなりません。このような不要な複雑さは、コードベースを肥大化させ、長期的なメンテナンスを困難にする要因となります。そのため、開発者はAIが生成したコードに対して、依然として厳しい品質管理の目を持つ必要があると説いています。

パフォーマンスへの影響と最適化の真の価値

コードの品質が軽視されがちな理由の一つに「AIがいつでも再生成できる」という考えがありますが、これは実行時のパフォーマンスを無視しています。例えば、データベースクエリ一つをとっても、非効率なネストされたクエリはユーザー数が増えた瞬間に致命的なパフォーマンス低下を招きます。結果が同じであっても、そのプロセスにおけるリソース消費量はコードの書き方次第で大きく変動するのです。将来のAIがより賢くなり、最初から最適化されたコードを書くようになる可能性は否定しませんが、現時点では人間による監視が不可欠です。アプリケーションの真の価値を守るためには、目に見えない部分でのコード最適化を疎かにしてはならないと結論づけています。

プロフェッショナルとしてのこだわりと結論

最後に、スピーカーは技術への「こだわり」が持つ人間的な価値について熱く語ります。Guillermo氏の投稿が過去の開発手法を否定的に捉えているように聞こえる点に対し、それは自分の仕事を愛するプロフェッショナルとしての証であったと擁護します。デザイナーがツールを使いこなすように、エンジニアがAPIデザインに情熱を注ぐことは、決して愚かなことではなく優れた成果を生む源泉です。エージェント・エンジニアリングという新しい領域においても、新しい形の「良い書き方」に関する議論は必ず生まれるはずです。最終的に人間が完全にループから外れる日が来るかは不透明ですが、それまでは自分の仕事に誇りを持ち、細部にまで責任を持つ姿勢こそが、AIに代替されない成功者への道であると締めくくっています。

Community Posts

View all posts