この動画は、AI懐疑論者から一転してAI支持者となった開発者による、現在のLLM(大規模言語モデル)を使った開発ツールの実情と価値について語った議論である。作者は過去のGraphQLやWeb3などの技術バブルと比較しながら、AIが実際に開発者の生産性を大幅に向上させていることを具体例とともに説明している。特にCursorなどのAI支援エディタやコード生成エージェントの実用性について詳しく論じ、知的財産権への懸念や仕事の代替への不安に対しても率直な見解を示している。技術者として30年以上のキャリアを持つFly.ioの開発者による記事を基に、AI技術の現実的な価値と限界について建設的な議論を展開している。
- AI支持者への転向
- 劇的な変化
- 真剣な検討の開始
- Fly.ioの記事について
- Code Rabbitのスポンサー紹介
- Code Rabbitの価値
- 記事の本題に入る前に
- AI支援プログラミングに関する心からの挑発
- バブルとの比較
- GraphQLの興亡
- GraphQLバブルの問題
- バブルの教訓
- AIの真の価値
- Web3との比較
- AIの実際の価値
- ハイプの問題
- 実際の体験談
- 著者の大胆な声明
- 開発への影響
- レベル設定
- エージェントの実態
- エージェントの定義
- ツールコールの仕組み
- 技術的実装
- 異なるアプローチの重要性
- 重要性と楽しさの軸
- 理想的な作業配分
- プロジェクトの実現
- LLMの可能性
- 問題解決の瞬間
- AIの支援効果
- 注意点
- 欠点も存在
- 実際の問題
- 職の未来
- よくある反論への回答
- コードレビューの重要性
- 確率的な懸念について
- テストの重要性
- タイプセーフの利点
- システム的な保護
- コードを読む重要性
- 最新の体験談
- チームとの協働パターン
- 幻覚について
- 実用性の観点
- AIと人間の比較
- シニア開発者の役割
- 個人的な体験談
- アーキテクチャの改善
- 未来への展望
- 真のシニア開発者とは
- エージェント使用のスキル
- 現在の分業
- 現実的な評価
- 複雑なプロジェクトでの採用
- スマートな人々の採用
- コードの分析
- 他の例
- 言語とLLMの関係
- Go言語の利点
- 職人とエンジニア
- 実用的な問題解決
- ヤクシェービングの危険
- LLMの真の価値
- 凡庸さの価値
- 実際の比較
- 複雑さへの対応
- AGIへの懸念
- 仕事の代替について
- 知的財産への懸念
- 実用性の現実
- 芸術と実用性
- 知的財産権の議論
- 開発者の偽善
- スポンサーブロックについて
- 知的財産の議論の続き
- 変換の問題
- 最新の開発状況
- 実際の体験談
- 保守的な立場から
- 記事の結論
- 将来への展望
- 最終的な感謝
AI支持者への転向
皆さんもお気づきかもしれませんが、私はなんとAIブロになってしまいました。こんな日が来るとは思いませんでした。私の過去の動画を見れば分かりますが、私はこういった技術の最大の懐疑論者の一人でした。価値が見えなかったのです。
実際、初めてCopilotを試した時は、私がより正確で信頼できると思っていたTypeScriptの自動補完を上書きしてしまうので、むしろ迷惑に感じました。
劇的な変化
しかし、時間が経つにつれて状況は大きく変わりました。Cursorとその強力なタブ自動補完機能、そしてCommand I、Command Kなどの優れた機能に魅力を感じるようになりました。T3 Chatを構築し、これらの新しいエージェントやモデルがいかに有用であるかを実感し、このチャンネルで話している内容すべてに至るまで。
AIは私の物事の考え方、そしてより重要なことに、物事の構築方法を本当に変えました。今、私がAIに懐疑的な友人たちと会話すると、ほとんど自分が正気を失ったような気分になります。私も皆さんと同じ立場にいました。これらの技術を見て、それほど大したことではないと感じ、試してみても大したことはなく、そのまま放置していました。
真剣な検討の開始
そして、ツールが良くなった時により真剣に取り組んでみました。今では、未来が私たちが以前考えていたものとは大きく異なることが明らかです。AIがすべてを置き換えに来ると言っているわけではありません。ただ、開発者としての私たちの仕事を意味のある形で調整することになるでしょうし、それについて話し合うべきだと思います。
これは私がしばらく感じていたことです。そんな時、HackerNewsでこの記事を見つけて、どうしても話したくなりました。読み始めてすぐに、これを皆さんと共有しなければならないと気づきました。
Fly.ioの記事について
この記事はFly.ioのブログに投稿されました。私はFlyが大好きで、サーバーをデプロイする最も好きな方法の一つです。ただし、彼らはこの動画をいかなる形でもスポンサーしていません。私たちにも支払うべき請求書があるので、今日のスポンサーから簡単に紹介した後、私のAI懐疑論者の友人たちがなぜ正気を失っているかについて話しましょう。
Code Rabbitのスポンサー紹介
良いコードをレビューするより悪いことは何でしょうか?悪いコードをレビューすることです。悪いコードをレビューするより悪いことは何でしょうか?自分のコードをレビューすることです。だからこそ、今日のスポンサーであるCode Rabbitに感謝しています。
これは私が作成したPRです。T3 Chatでストリームを再開する際のストリームエラー処理に関するもので、非常にシンプルな説明を書きました。「長いタイムアウトが発生しないようにする」と。
Code RabbitはPRを要約し、変更がどのように機能するか、どのファイルに影響するか、さらにはイベントの順序を説明するシーケンス図まで作成してくれました。これらのより複雑なワークフロー変更には非常に便利です。
しかし、より重要なのは、コードを調べて実際に変更すべき点にコメントを残してくれることです。私のエディタでバグも見つけてくれます。現在作業している変更では、PRを提出する前に新しいVS Code拡張機能を使ってレビューしたところ、2つのミスを発見してくれました。これは非常に有用です。
Code Rabbitの価値
私が話すスポンサーのほとんどは、皆さんのやり方をわずかに改善するものです。しかし、Code Rabbitは実際にコードレビューに対する私の考え方を変えました。AIがますます多くのコードを生成する世界では、ミスを出荷しないようにしてくれるCode Rabbitのようなツールがあることは非常に有益です。
Code Rabbitは恐らくT3 Chatに40以上のバグを出荷することを防いでくれました。だから、T3 Chatが好きなら、彼らに感謝すべきです。今日、swordv.link/coderrabbitでチェックしてみてください。
記事の本題に入る前に
先に進む前に、これを書いたThomasに敬意を表したいと思います。この記事で彼を批判する人たちが何人かいました。それが実際に私がこの記事を見た理由の一部です。
彼はデータ界で非常に尊敬されている人物ですが、今AIに傾倒しているため、多くのデータ関係者(面白いことに反AI傾向がある)から批判されています。しかし、彼らが批判してくれたおかげで、私がこの投稿を見つけてすぐに夢中になり、これらのポイントを皆さんと共有したくなりました。
AI支援プログラミングに関する心からの挑発
技術幹部がLLM採用を義務付けています。それは悪い戦略ですが、彼らがどこから来ているかは理解できます。これは私がますます目にしているもので、「すべてのチームがワークロードにエージェントを導入する必要がある」と言う企業のようなものです。
私が知っている最も賢い人たちの何人かは、AIは一時的な流行だという骨の髄からの信念を共有しています。それはNFT狂騒の次の反復だと。私は彼らに反論することを躊躇してきました。なぜなら、彼らは私より賢いからです。しかし、彼らの議論は真剣ではなく、向き合う価値があります。
バブルとの比較
私はmania(狂騒)の部分について最初に話したいと思います。なぜなら、それは非常に現実的だからです。皆さんのうち何人がWeb3の件でオンラインにいたか分かりませんが、GraphQLバブルまで遡ってみましょう。これはあまり話題にならないので大したことではなかったように見えますが、当時は非常に現実的でした。
GraphQLは、APIの構造やさまざまなデバイスやクライアント(通常はユーザー側のクライアント)からのデータアクセスの方法について考える代替手段でした。Facebookのような複雑なアプリケーションがあり、コメント付きの投稿、コメント投稿者、そして投稿者との友人関係の有無など、本当に複雑な関係が必要な場合、従来のRESTエンドポイントは非常に柔軟性がなく、クライアントが恩恵を受ける方法でデータを公開するのが下手でした。
GraphQLの興亡
GraphQLはFacebookで構築され、APIをグラフとして定義し、クライアントがそのデータにアクセスしやすくするものでした。これにより、UIをわずかに変更するたびに新しいエンドポイントを定義しなくても、クライアントが必要なデータを理解できるようになりました。
数千人のエンジニアと本当に複雑なグラフデータ問題を持つ企業にとっては革命的でした。しかし、それは非常にユビキタスになり、数年間、アプリケーションが構築される方法の基本的な標準となりました。
そこから、GraphQLブログ用のGatsbyを含む多くの異なるスタートアップが生まれました。冗談ではありません。それは実際にはReact用の静的サイトビルダーでしたが、実装上は静的ページを定義するためのGraphQL APIでした。ナンセンスです。
ブログ用のGatsby、既存のデータベースをGraphQLエンドポイントに変換するデータベースからGraphQLへのツール(これが最終的にPrismaになり、内部的にはまだGraphQLだったため、Prismaがしばらく遅かった理由でもあります)、WunderGraphがありました。私は今でも彼らが何をしているのか本当に説明できませんし、彼ら自身も説明できないと思います。
GraphQLバブルの問題
GraphQLモジュールフェデレーションと呼んでいるので、GraphQLのものを異なるものに分割できます。5つの企業にとっては問題のように見えますが、その5つの企業にとっては非常に合法的でしょう。私が嫌いだったAuroraもありました。私は図表を持っています:GraphQLはここに行く、ここではない、人々がデータベースの前に置こうとしていた場所。これらの多くがありました。
GraphQLに焦点を当てたスタートアップの巨大な窓がありました。なぜなら、私たちが従来のAPIからGraphQLに移行しているように見えたからです。だから、GraphQLのPostgreSQLが必要になるでしょう。GraphQLのAWSが必要になるでしょう。GraphQLのDataDogが必要になるでしょう。GraphQL世界のためのこれらすべての異なるものが必要になるでしょう。
しかし、GraphQLは実際には世界の非常に小さなサブセットにのみ有用であることが判明しました。これらの本当に大きなFortune 50企業で、複雑なデータアーキテクチャを持っているところ。そのため、これらの企業のほとんどにとって最良のケースは、20の顧客を持つことでした。これらがVCの資金提供を受け、これほど巨大になるべき世界はありませんでした。
バブルの教訓
これらのバブル(GraphQL、Web3、NFT、さらには昔のドットコムバブル)のいずれかを経験したことがあれば、私たちが慣れていたものよりもはるかに優れているか、非常に大きな可能性を持っているため、過剰反応して将来すべての人がこれを使うだろうと装ったバブルがあったなら、本質的に懐疑的になるでしょう。
私もこれに巻き込まれました。NFTの波の間にY Combinatorにいて、私たちのバッチの多くの企業がすべて奇妙なWeb3のことをやっていました。Web3用のOAuthをやっている4つの異なる企業を知っていましたが、Web3用のOAuthの潜在的な消費者となる企業は1つしか知りませんでした。存在しない製品のために誰も必要としないものを発明していました。
AIの真の価値
これらの異なるバブルを経験したことがあれば、そのような匂いがするものには懐疑的になるでしょう。コードを書いてくれるエージェントをサービスとして提供し、エージェントをホストしてくれる10の企業を挙げることができるという事実、これらはすべてCloudflare上で比較的簡単に自分でできることをやっているだけです。
Vercelが悪いビジネスだと言っているわけではありません。50のVercelを持つのは悪いことだと言っているのです。そして、ほとんど始まったばかりの市場のために同じことをする数百の企業があるという事実は、確実にここにバブルがあることを示しています。
しかし、問題はAIが実際に本当に有用だということです。バブルであるという事実にもかかわらず、本当の価値があります。
価値をチャートとして持ち、人々がそれについてどれだけ話しているか、どれだけの企業がそれについて作っているかという別のバーとしてハイプを持っているとします。あなたのハイプ対価値比。GraphQLはこのようなものだったと言えるでしょう。価値は本当に大企業にとってはそこにありましたが、それほど多くはありませんでした。そして、相対的なハイプは巨大でした。これは起こった時点で失敗する運命にありました。
Web3との比較
Web3はどうでしょうか?NFTをこれに含めます。GraphQLと比較してWeb3のものの価値を測定するのは難しいです。論争的になりますが、私は概念的にBitcoinが本当に好きなので、わずかに高く置きます。数学的に証明され、政府によって規制されていない通貨のアイデアは本当にクールで素晴らしいと思います。
すべてのBitcoinを通貨として使う代わりに保持していたら、YouTuberにはならず、どこか人里離れた場所に住む億万長者になっていたでしょう。しかし、通貨として好きだったのでBitcoinを使っていました。それが通貨であることをやめ、保持して取引し、くだらないJPEGを入れるものになった時、すべてが非常に速く崩壊しました。
Web3のハイプは不条理でした。価値がわずかに高くても、ハイプは理解できないレベルで、明らかに非常に悪く、人々が望むものに決して応えることはできませんでした。
AIの実際の価値
では、AIはどうでしょうか?ここに問題があります。AIは少なくともWeb3であると装った価値と同じくらい価値があります。そして、ハイプレベルがWeb3と同じだったとしたら、実際にこのもののどれだけ有用かに対して合理的だと言うでしょう。
NFTとは異なり、私の母は実際にAIを使って質問をしたり、彼女のために物事に答えたりしています。TwitterでNFTが機能だったのはうんざりで愚かでした。GoogleサーチでAIがより良い答えを提供するのは実際に便利です。
来年末までに、ほとんどのインターネットユーザーが平均的な日にAIを何らかの意味のある方法で使用すると論じるでしょう。ほとんどの人が決して遭遇することのないWeb3やNFTとは異なり。
ハイプの問題
しかし、これが問題です。AIが実際に有用であるため、ハイプは私のチャートが表現できる範囲を超えています。だから、これらのことをハイプの不条理な大きさに基づいて判断しているなら、見逃すことになります。なぜなら、以前のハイプバブルが追加された価値よりもはるかに大きかったのは悪いことでした。
問題は、これらの場所から実際に本当に価値のあるものが最終的に出てきたことです。しかし、ハイプマシンが信念を超えて進んでいるため、多くの人々が以前のものと同じように扱っています。そして、それは最悪です。
実際の体験談
私がここでやりたいことは、12のエージェントがすべてのコードを書いていると主張する人々をからかうと同時に、Cursorのタブコンプリートがあなたの仕事をはるかに効果的にすることを指摘することです。あなたがやっている仕事により多くのコンテキストを与えるためのものを使用し、DevonやCodexのようなもので何かバックグラウンドで作業させる時々のバックグラウンドエージェント。
これらのことは実際に私たちをエンジニアとしてより効果的にすることができます。私たちがする作業の多くは退屈で面倒です。これは退屈で面倒な作業の多くをなくすことができます。または、怒りのためにそれを続けることもできます。これが記事で言われたことです。
著者の大胆な声明
すべてのLLMの進歩が今日停止しても、LLMは依然として私のキャリアの過程で起こった2番目に重要なことであり続けるでしょう。大胆な声明です。
ただし、この注意書きが好きです。これは本当に重要だと思います。彼は開発者に対するLLMの含意についてのみ議論しています。芸術、音楽、執筆については正直に言って、私も同じ場所にいます。これらの分野での影響がどうなるかわかりません。
開発への影響
記事の著者はここで自分の資格を少し説明します。1990年代からソフトウェアを出荷しています。私は1990年代半ばに生まれたので、その点では彼よりもはるかに資格が劣ります。彼は箱詰めの縮小包装されたCコードベースから始めました。不適切なC++フェーズを生き延び、多くのRubyとPythonツール、いくつかのカーネル作業、多くのサーバーサイドC、Go、Rustを経験しました。
真剣な開発者をどのように定義しても、彼は資格があります。下位ティアの一つでしかないとしても。かなり高位ティアの開発者のように聞こえます、特に今Fly.ioにいるなら。そのチームは優秀です。彼は自分のことを知っています。
レベル設定
まず、同じページにいる必要があります。6ヶ月前にコード用のLLMを使おうとして失敗していたなら、現在最も真剣なLLM支援開発者がやっていることはやっていません。
2年前にco-pilot使っていたなら、それはAIが何ができるかを代表するものではありませんでした。これは私にとっても驚きです。数日前にStitchBenchのものに取り組んでいた時、最初のパスは私とClaude 4/タブコンプリート/他のすべてのAIのもので50/50だったと言えるでしょう。
すべてのチャットを実行するスクリプトのために。2番目の部分、これはGeminiを使ってすべてのスクリプトを分析することでしたが、そのファイルは正確に500行です。このファイルで一行のコードも書きませんでした。このファイル全体は、Command Iによって書かれました。
エージェントの実態
今日LLMでコーディングしている人々はエージェントを使っています。エージェントは自分でコードベースを突き回すことができます。ファイルを直接作成します。ツールを実行します。コードをコンパイルし、テストを実行し、結果を反復します。
また、ツリーから、または他のオンラインツリーから任意のコードをコンテキストウィンドウに引き込むことができます。標準のUnixツールを実行してツリーをナビゲートし、情報を抽出できます。gitとやり取りできます。リンター、フォーマッター、モデルチェッカーなどの既存のツールを実行でき、最も重要なのは、MCPを通じて設定する本質的に任意のツール呼び出しを行うことができます。
エージェントの定義
エージェントという言葉はまだあまりにも曖昧で、特定のものを何も記述していません。概念は自律的に実行して物事を行うAIですが、それは効果的に一つ以上のリクエストを行うツール呼び出しを持つAIです。
私がこれを考え、人々に説明する方法は、リクエストを与えて、レスポンスとしてテキストを生成する代わりに、今はプロンプトを与えて、それが自分自身を呼び出すことです。ツールを呼び出します。複数のことを実行します。複数のステップを実行します。物事を完了するために一つ以上のことを行います。
実際にコードで作業するエージェント、コードエージェントは、それ自体AIではありません。これは人々が理解していないようです重要な部分です。コードベースにあなたが物事を実装した方法を幻覚しているわけではありません。ファイルにアクセスするための本当のコードであるツールを呼び出しています。
ツールコールの仕組み
関数がどこで使われているかを知りたい時、TypeScriptのIntelliSenseを使って参照がどこにあるかを見つけるツールを呼び出しています。または、その形状に一致するすべてのものをコードベース全体でgrep呼び出しして、関連するすべてのファイルを見つけるかもしれません。しかし、LLMがツール呼び出し形状を使ってトリガーしている本当のコードを使っています。
ツール呼び出しは、AIをより効果的にするために人間が書いた本当のコードです。AIがコードベースのすべてのファイルを魔法のように追跡する方法を学んだわけではありません。AIには適切なファイルにアクセスするためのツールがあります。私たち人間と同じように、探しているものを見つけるためにCommand Shift Fをしたり、ターミナルでgrepを使ったり、文書を読みに行ったりするのと同じように。
技術的実装
その強みは、03やSonnetがどれだけ進歩したかというよりも、ビルドやリンティング、テストハーネスについてどのように考え、指示するかにもっと関係があります。週末で効果的なコードエージェントを書くことができます。
大部分の改善は、Claude 3.5以降、LLMにアクセスできるように構築したツールがより良くなったためです。3.5がそれらのツールを呼び出すのがはるかに上手になったので、突然それらをより良くするインセンティブが生まれました。
異なるアプローチの重要性
ChatGPTページやT3 Chatでリクエストを作成し、壊れたコードの結果をエディタに貼り付けるなら、AIブースターがやっていることはやっていません。これらの人々がAIで作業方法を変えたと言っているのを見て、彼らがCursorでClaudeやChatGPTやこれらすべてを使って、エンジニアとしてはるかに効果的になっているなら。
そして、あなたがChatGPTやT3 Chatに行って「これを実装して」と言い、あなたのセットアップでは全然動かないコードをくれて、試してみたら壊れていて「わあ、なぜ誰も気にするんだ?」となったら。なぜこれが最悪だと思うのか理解できます。しかし、一部の人々がCursorのMCPでこれらすべてのツールを使って文書呼び出しをしているのに、あなたはChatGPTで簡単なクエリを書いているだけだという事実。
あなたは同じことをやっていません。同じことをやっているように話しているのに、会話が起こっていません。
重要性と楽しさの軸
私はこのチャートが大好きです。記事でこれを見たとき、頭に深く焼き付いて、今日全く関係のない別の会話でほとんど使いそうになりました。これは重要性と楽しさに基づいた物事の象限です。楽しくて重要なものがあります。退屈で重要なものがあります。楽しくて無意味なものと退屈で無意味なものがあります。
私の詐欺ベンチマークは楽しいが無意味にぴったりと当てはまると論じるでしょう。しかし、楽しい部分をブロックしている退屈な部分もありました。しかし、T3 ChatのConvexに同期エンジンを変更するような、実際に本当に楽しい作業もあります。
理想的な作業配分
理想的には、私たちは右上の象限で時間を過ごし、楽しくて重要なことをします。そして、退屈なものを片付けることができれば、人生ははるかに良くなります。LLMは、あなたが書く必要がある退屈なコードの大部分を書くことができます。ほとんどのプロジェクトのほとんどのコードは退屈です。LLMはGoogle検索する必要があるものの数を劇的に減らします。彼ら自身で調べてくれます。
最も重要なことは、彼らは疲れません。慣性に免疫があります。退屈な変更に深く没頭して5時間後に、怠惰になってクソコードを書いている私がどれだけ間違いを犯したか数えきれません。エージェントの品質は、一日のうちのどの時間帯かによって上下しません。それは大きなことです。
プロジェクトの実現
これまでに構築したかったが構築しなかったすべてのことを考えてみてください。最初のステップに焦点を当てようとしました。新しいプログラミング言語の学習段階にいたら、書き始めていたでしょう。新しい言語に夢中になって、サイドプロジェクトのアイデアがあって、プログラミング言語がとても好きだから、またはもっと学びたいから飛び込むという、私たち全員が経験したことがあります。
しかし、そうでなければ、それを先延ばしにして、ゆっくりと押し戻されて、決して起こらなくなります。私も自分でそのようなプロジェクトの長いリストを持っています。新しいプロジェクトの記録、Google検索、依存関係のドラマを考えるだけで、血圧が上がるのを感じます。
この部分は私には関係ありません。これは私にとって楽しい部分です。足場を組んで、すべての部分を正しく組み合わせるのが好きです。それが私の性質です。しかし、他の人はそれを嫌います。だからCreate T3 Appのようなものがうまくいったのです。人々はスタックが十分に良いことを知って、ものごとを始めたいだけだからです。
LLMの可能性
LLMは、そのすべてを理解するように指示できます。しばしば、ほとんど動作する黄金の瞬間に正確にあなたをドロップしてくれます。開発とは、コードを調整してすぐに物事がより良く動作するのを見ることを意味します。
そのドーパミンヒットが私がコーディングする理由です。LLMベンチマークの私のインデックスファイルに愚かな例があります。このLLMベンチマークは、4つのマークダウンファイルを取り、最初のもの、次に2番目と3番目と4番目をモデルに実行し、レスポンスを取得し、その与えられたモデルでフェイクメッセージチェーンを作成することによって実行されます。
問題解決の瞬間
どこかにこれら4つのプロンプトがあります。これらをすべてマークダウンファイルから読み取ります。Claude によって書かれたこの関数全体。この関数はディレクトリからすべてのファイルを取得し、フィルタリングし、ソートし、出力します。最初はそれらが正しい順序で来ていませんでした。4321で来ていました。そこで私はClaudeに「ファイル名の番号でソートして」と言いました。
そうしたのですが、まだ4321で来ていました。結局、これは実際に私の悪いコードでした。message.popの代わりにshiftを使っていました。しかし、それに気づいて修正して実行したら動いた瞬間、それが私たちがこれをする理由です。
この不条理なことをやっているべきではない巨大なコードの山を持っている感覚。動作にとても近いが、まだそこにない。そして、部分を見つけて修正すると動作し、笑顔になる。スケートボードで本当に難しいトリックを決めた時と同じ感覚です。ただ良い気分になります。
AIの支援効果
AIは、時々その上に行って、あなたのためにそのものを動作させることができるので、その地点に到達するのをはるかに簡単にすることができます。しかし、彼らがあなたをそこに、物事が動作する直前にドロップしてくれて、あなたがまだエンジニアとしての経験を使ってその最後の部分をすることができるという事実、それはとても良い気分です。
本当にそうです。以前よりも多くの「ああ、今動作した」瞬間を得ているように感じます。なぜなら、その瞬間に至るすべてのものが、大部分は今自動化できるからです。すべてではありませんが、その作業の大部分、重要な部分は今これらのツールで行うことができます。
注意点
私が持っている懸念は、人々がそれを見逃して、AIに彼らのためにそれを修正することを期待する時です。私がいつも言うことは、AIにバグを修正するように頼む代わりに、バグについて、またはバグを引き起こしている可能性があることについて尋ねることです。
しかし、この場合、私はバグだと思った部分を修正してもらい、読んでいる時にミスに気づいたので、コードを読みました。しかし、理想的には、AIに間違っているすべてのことを見つけてもらうのではなく、AIにものが間違いうる環境を足場することを手伝ってもらい、その中でものを修正するのです。
欠点も存在
しかし、欠点もあります。時々厄介なことをする必要がありますが、やりたくありません。だから、ユニットテストをリファクタリングし、実際の仕事をしているという嘘で自分をなだめます。しかし、LLMにすべてのユニットテストをリファクタリングするように言うことができます。エージェントはVMであなたのテストでいじくり回して数時間自分を占有し、後でPRで戻ってくることができます。
私の話を聞けば、私がより多くのヤクシェービングを感じるだろうと知っているでしょう。結局、本当の仕事をすることになります。AIがそのすべてをやっている時に残されるのは、本当の難しい仕事です。
実際の問題
私がDevonの人たちとよく話すことがありますが、Devonを使う多くの人(これはSlackで「この問題を修正して」と言うとそれを行ってPRを出すAIエージェントです)がいます。私たちはまだT3 Chatでは使用していません。なぜなら、テストの修正のような信頼できることは、今ではCursorで自分でやるのがとても簡単だからです。Command Iでそのことをやってと言えば、通常最初の試行で正しくやってくれます。読んで、ローカルで実行して、プッシュします。
私たちはおそらくDevonでそれを始めることができる時点にいますが、今では以前に自分ですべてをやっていたら4時間かかっていたであろう代わりに、10分の作業を節約してくれています。そして、その作業をやることで本当に良い気分になっていたでしょう。これは重要です。コードベースを pristine に保つことです。いいえ、そうではありません。そうですが、そうではありません。
職の未来
そして今、これらのツールは、忙しい仕事をする代わりに忙しい仕事を生成することを私たちにとって簡単にします。これは職に関しても本当のリスクになるでしょう。ユニットテストの維持だけをやっていて、今AIがそれを修正しているので多くの人が解雇されるとは思いません。
しかし、平均的な従業員がはるかに多くの仕事をできるなら、チームが雇用する可能性は低いと思います。
よくある反論への回答
そして今、皆のお気に入りのカウンター。コードが実際に何であるかわからない。ここで呼び出されるとは思いませんでした。あなたはバイブコーディングのYouTuberですか?コードが読めませんか?もしそうなら、鋭い指摘です。そうでなければ、何が間違っているのですか?
この著者が大好きです。これがとても好きです。あなたは常にMainにマージしたもの対して責任を負ってきました。5年前もそうでしたし、LLMを使っているかどうかに関係なく、明日もそうです。人々が依存するものをLLMで構築するなら、コードを読んでください。
実際、それ以上のことをするでしょう。5から10分かけて、それを自分のスタイルにノックバックするでしょう。LLMはローカルな慣用句に適応する兆候を示していますが、まだそこには到達していません。
コードレビューの重要性
アンチコードレビューの人々がいて、私は彼らを常に正気でないと思ってきました。しかし、もしあなたがアンチコードレビューなら、チームの誰もが誰かが変更を見ることなくMainにマージできるべきだと思うなら、AIを使わないでください。私はあなたがあなたの仕事でより効果的になることを望みません。私はあなたがユーザーのいない隅で静かに苦しみ続けることを望みます。
それらの人々は不条理です。彼らは私がコードレビューカルチャーの話をする時、いつも私のリプライに現れます。なぜなら、私はコードレビューが非常に重要だと思うからです。私のキャリアで今まで行ったすべてのことが実行される方法にとって不可欠です。
すべてを脇に置いて、あなたのコードをレビューしてください。同僚が作ったものでも、あなたが作ったものでも、LLMが作ったものでも、コードレビューは重要です。やるべきです。
確率的な懸念について
人々がLLM生成コードが確率的であることについて文句を言います。それはそうではありません。それはコードです。Yak出力ではありません。それは知識できるものです。LLM自体は確率的かもしれませんが、LLM自体は重要ではありません。重要なのは、結果を理解できるかどうか、そしてガードレールが保持されるかどうかです。
これまで以上に、TypeScriptや良い型定義などが重要です。なぜなら、LMがあなたの型定義に一致しないコードを生成する場合、コードが正しくない可能性が高いことがわかり、おそらくそれを理解して修正しようとするからです。
テストの重要性
また、認めたくないのですが、ユニットテストとテスト駆動開発も以前より意味があるかもしれません。認めるのは嫌ですが、基本的な入力と出力を持つ10行のコードテストがあり、それが通過すればコードが正しいと確信できるなら、特に彼らがテストを実行して出力が正しいかどうかを確認し、正しくない時はコードを変更した時に再実行できるこれらのエージェントにとって、それは本当に有用です。
タイプセーフの利点
誰かがTanstack StartとTanstack Routerがまだ非常に新しいTypeScript体験である中で、Cursorやあなたが使っているIDでタブを離れるのがどれだけ素晴らしいかを指摘しました。まだかなり新しいのに、LMがなぜそれにとても優れているのでしょうか?それは型とTypeScriptで設計されているからです。それは巨大です。
型定義がすべて上から下に推論され、エディタのIntelliSenseのようなシステムでこの情報を提供するという事実は、AIエージェントがそれを見て作業中に使用でき、出力がより正しい可能性が高いか、少なくとも間違っている時にそれを見て変更を行うことができることを意味します。
システム的な保護
コードでこれらのことが壊れている時を特定するシステムを持つべきです。それを最初に修正し、それを修正したら、AIツールを再試行してください。驚くかもしれません。
変数jQueryコードベースで、あらゆるものとの奇妙なバインディングで生活していたら、正しく動作しないかもしれませんし、気づくのがはるかに難しいので、Cursorやその他のツールにCommand Iして大量のコードを書いてもらうことには快適ではないでしょう。しかし、適切なテストや、より良いには、本当に良い型があるなら、これらのガードレールは、そのコードが機能しているかどうかを知るのに非常に有用でしょう。
コードを読む重要性
他の人のコードを読むことは仕事の一部です。平均して書くより多くのコードを読むべきだと論じます。それがそうでないという事実は私を恐怖に陥れます。なぜなら、本質的にコードの大部分がレビューされていないことを意味するからです。
あなたが一日に書くよりも多くのコードを読んでおらず、あなたの同僚全員が同じ状況にあるなら、それは読まれていないコードがマージされていることを意味し、それは恐ろしいことです。それを修正してください。コードをレビューしてください。多くのコードをレビューしてください。あまりにも多くのコードをレビューするように心がけてください。
レビューしているすべてのコードにうんざりするべきです。そうでないなら、十分にレビューしていません。LMが生成する退屈で反復的なコードを代謝できないなら、それはあなたのスキルの問題です。締切が迫っている時に人間の開発者が産出する混乱をどのように処理していますか?
最新の体験談
ここ1ヶ月ほど、Gemini 2.5が私の主力になっています。彼らの主力。私は今Claude 4にいます。編集なしでマージするために吐き出すものはほとんどありません。最先端のモデルに機能プラスマージをワンショットで取得するのはスキルの問題だと確信していますが、気にしません。コードを動かして、愚かなコメントをすべて削除する時に自分に笑ってしまうのが好きです。
とにかくコードを一行ずつ読まなければなりません。非常に現実的です。私が本当のコードベースで作業していて、AIに最初のパスを生成させる時、それはただの最初のパスです。しばしば実際に動作する出発点で、入って物事を修正しています。
チームとの協働パターン
面白いことに、私は実際にしばらくの間、チームとこのように作業してきました。私が何を期待し、どのように動作することを期待するかを示すために、本当にくだらない最初のパスをして、チームが見るためにドラフトPRを出します。時々彼らはコードを取り、いくつかの変更を加えて、マージします。時々彼らは私がやっていることを見て、私のPRを閉じて、実際に物事をやっているより良いものを作りに行きます。
これらはすべて素晴らしいです。これらすべてのワークフローをサポートします。そして、AIを同じように扱うなら、本当に良い時間を過ごすでしょう。そうしないなら、すべてをやってくれることを期待するなら、あなたはただ怠惰です。
幻覚について
幻覚はどうですか?幻覚があなたにとって重要なら、あなたのプログラミング言語があなたを失望させました。この著者が大好きです。エージェントはリント、コンパイル、テストを実行します。彼らのLLMが新しい関数シグネチャを発明した場合、エージェントはエラーを見るべきです。
それをLLMにフィードバックでき、LLMは「ああ、そうです。それを完全に作り上げました」と言い、もう一度試します。これが起こっているのに気づくのは、エージェントが生成する思考の連鎖ログを見ている場合だけです。それをしないでください。
これがZedのエージェントモードが好きな理由です。タブを離れて作業させるように懇願し、完了したらデスクトップ通知でpingしてくれます。それをするとは知りませんでした。それは実際に本当にクールです。
実用性の観点
幻覚が重要な環境がまだあると確信していますが、幻覚は誰かがLLMを使うことを提案した時に開発者が最初に持ち出すものです。それはほぼ解決された問題であるにもかかわらず。
しかし、コードはジュニア開発者のようにクソです。インターンは月20ドルかかりますか?なぜなら、それがCursorの料金だからです。義務的に。私はCursorの投資家です。そこでバイアスを考慮してください。
しかし、Cursor、Windsurf、Zedとそのエージェントモード、VS Code内のco-pilotとそれでできるすべてのクレイジーなこと。これらすべてが本当に本当に良くなりました。
AIと人間の比較
私には月20ドル以上を支払っているインターンがいて、彼は信じられないことをしますが、これらのツールを使ってそれらの信じられないことをしています。だから、ジュニア開発者と同じバーのコードを取得できるという事実、しかし最も重要なのは、それが吸う時に彼らに怒鳴っても悪い気がしないことです。それがジュニア開発者の最悪の部分だからです。一日に5回目に愚かなことをされた時。
「それは十分に良くないです。もう一度試してください。それをマージできません」と言って、彼らを士気を阻喪させているとわかって悪い気がします。彼らが十分に良くないのでPRを閉じるのは非常に悪い気がします。AIはあなたがPRを閉じても気にしません。AIはもう一度試すように言っても気にしません。AIはそれについて個人的に思いません。そして、それは素晴らしいです。
シニア開発者の役割
シニア開発者であることの大きな部分は、より能力の低いコーダーを生産的にすることです。それが肉体的であろうと代数的であろうと。この記事が大好きです。私はこれをよく話します、特に私がアドバイスしている企業と。
彼らはしばしば、ジュニアエンジニアは悪いコードを書いて物事を停止させるので、シニアエンジニアしか雇えないと主張します。あなたがそれを言う時、あなたはジュニアエンジニアだと言っているのです。経験豊富なエンジニアは、ジュニアよりも良いコードを書いているのではありません。彼らは、ジュニアよりも良いシステムを構築しています。彼らは、これらの経験の少ないエンジニアが行うであろう変更に対して弾力性のあるシステムを構築しています。
個人的な体験談
大胆なことを言いますが、この件で影響を受けるすべての人に申し訳ありません。私はまだPingで最高の開発者です。Juliusは私に手強い勝負を挑んでいます。その点で彼に敬意を表します。しかし、私はまだ、upload thing以外のすべての部分がどのように組み合わさり、T3 Chatや私たちが構築する他のすべてのものを機能させるシステム設計を最も理解している人です。
私はJuliusがそれを完全に引き継いだことを知りません。しかし、T3 Chatについては、私がそれがどのように機能するかを理解している人です。これは自慢ではないことを理解してください。実際には逆です。
Convexポートまで、データレイヤーや同期エンジンへの変更は私がやらなければならなかったことを恥ずかしく思います。なぜなら、他の誰かがそれに触れると壊れるからです。私がそれをひどく設計したからです。
私はそれを動作させ、解決するのが本当に困難だった問題を解決しました。そこから得た利益を誇りに思っていましたが、それらの同期エンジンの複雑さに深く経験していない限り、作業するのが吸うものを設計しました。そして、私は一つの企業を買収することに近づいていました。なぜなら、そこの一人がとても同期エンジン設計のことが得意で、彼らを買収すれば、彼が私のためにそれを引き継いでくれるとわかっていたからです。
アーキテクチャの改善
そして、私は現実を受け入れました。それは、私たちはLLMをラップするチャットアプリを構築しているということです。私たちのデータレイヤーを維持するために世界で3人の最高のエンジニアのうちの一人は必要ありません。私は自分の部分を修正し、成長し、良いエンジニアになり、私ほど不条理でない人々がこの品質のものを作ることができ、本番環境を停止させることなく変更を行うことができるようにする必要がありました。
私は、単に有能で、単に機能的で、単に問題を解決できるだけでなく、チームの残りが自信を持って変更を行えるアーキテクチャが必要でした。そして、Convexの変更で今それを持っています。私は多くの自分のエゴを食べなければなりませんでした。なぜなら、私の同期エンジンでConvexができるよりも良くやったことがあると自分を説得していたからです。
そして、私は間違っていて、それを乗り越えました。そして、深く掘り下げるほど、このアーキテクチャがはるかに良く、理解しやすいだけでなく、今チームの誰もがそれに貢献できることがわかりました。今、誰もが新しい機能を追加でき、今私たちが出荷したいすべてのクールなことからブロック解除されています。もうTheoが作業をする必要はありません。
未来への展望
それはまた、他の従業員も必要ないことを意味します。コードが十分にシンプルなので、今エージェントによって実装された機能全体を持つことができます。すべてのインフラは convexという名前のディレクトリに住んでいます。そして、ドキュメントへの単一のリンクで、そのために必要なすべてがそこにあります。
それはとてもクールです。会社を100万ドルで買収する代わりに、私たちがやっていることに意味をなす、より良いアーキテクチャに移行し、維持がより簡単で、今私は高校生のインターンを雇い、彼らは信じられないほど素晴らしいことを出荷しています。
公平に言えば、そのインターンは特に優秀です。彼は6ヶ月で私より良い開発者になるでしょう。それは別として、今チーム全体が貢献できるという事実は、私にとってレベルアップです。私が構築したアーキテクチャにとどまることは逃げでしょう。
真のシニア開発者とは
私が素晴らしいエンジニアでこれにはそのタイプのエンジニアリングが必要だと装うのは、現実にはそれが本当にシニア開発者、つまり経験チェーンでより高い誰か、会社でスタッフポジションを持つような誰かは、本当に複雑なコードを書いているのではありません。
彼らは複雑な問題を考え抜いているので、他の皆が貢献できるほど十分にシンプルなコードを書くことができるのです。
エージェント使用のスキル
記事に戻ります。なぜなら、どの一文も私を接線に送り込むことができるからです。これは非常に良いです。エージェントをうまく使うことは、プロンプト、インデックス、そして特にツーリングの、スキルとエンジニアリングプロジェクトの両方です。
LMSは、あなたがそれらに許可した場合にのみ、クソコードを生成するべきです。はい、絶対にはい。
現在の分業
今日、LMSは多くのタイピング、Google検索、テストケース、編集コンパイルテストデバッグサイクルを行います。また、あなたが今後作成するべきbashコードの100%も。bash警察には申し訳ありませんが、今私たちのためにbashを書いてくれる誰かがいます。
私は長い間、複雑なbashコマンドを書いていません。今は毎回AIにやってもらっています。しかし、世界で最もClaude中毒の深刻な開発者でさえ、キュレーション、判断、ガイダンス、方向性を所有しています。
現実的な評価
私たちの人間ファーストカットが実際にどれだけ良いかについて、自分たちを騙すのはやめましょう。私は最初のパスでコードが良いとは決して装いません。最初の試行で出すものが実際に動くことに定期的に感動しています。かなりナッツですが、Rustは苦手です。脳のツールチェーンも取得するのが困難です。アルミニウムサイディング事業では人生は厳しいです。
複雑なプロジェクトでの採用
私が本当に驚いたことの一つは、これらの深い、厄介で複雑なことに取り組んでいる人々がCursorのようなツールに恋に落ちていることです。すぐに頭に浮かぶ2つの例があります。なぜなら、これらは十分なデータがないと私が直接思ったものだからです。これらのツールがAIのもので作業することは決してないでしょう。
その2つは、具体的にはZigコードベースのBunでした。私がよく考えたもう一つは、WomjsランタイムのPorferです。これらは私が最高の敬意を払っている2つのプロジェクトです。それらは両方ともJSランタイムです。Bunはもっと多くのものです。しかし、これら2つは私が今まで読んだ最も恐ろしいコードベースのいくつかです。
これらのコードベースは、通常の開発者が決して書くべきではない不条理なことをやっています。現在オンラインに参照がまったくない。それでも本当にうまくやっています。Bunの多くの人々が彼らの作業の80%をタブコンプリートしていると言っているのを知っています。全体の機能を生成させるためにCommand Iして試すときは、まだそれほど良くありませんが、ファイルのコンテキスト内で進む時のオートコンプリートには非常に優れています。
スマートな人々の採用
Porferは、クレイジーなwomアセンブリブラウザコードをやっているこれらの超複雑なもののもう一つです。そして、私は開発者とよく話します。Canada honkは私が知っている最も賢い人の一人です。そして、彼らがゆっくりとAIピルを得るのを見ることは、私にとって巨大なoh瞬間でした。
正直に言って、私が持った最大のものの一つは、彼らが「この新しいモデルについてのあなたの考えを聞きたいです。Cursorで使っていて、私の作業に多く助けてくれています」のように手を差し伸べてくれたことでした。待って、今あなたの作業にCursorを使っているのですか?何?
私が知っている最も賢い人々がすべて飛び込んでいます。そして、そんな日が来るとは思いませんでした。私の仮定は、BoltやV0で愛らしくバイブコーディングしている多くの人々と、舞台裏で困難な部分を書いている賢い人々の束を見るだろうというものでした。
明確にするために、それは起こっています。しかし、それらの同じ賢い人々は今、舞台裏でCursorとClaude Code、Codex、そしてこのすべてのものを使って、彼らの作業の忙しい部分もやっています。なぜなら、最高の開発者でさえも、主に忙しい作業をやっているからです。なぜなら、ほとんどのコードは退屈で愚かだからです。
コードの分析
私のスティッチベンチコードベースをざっと見て、何が退屈で何がそうでないかを読んでみると。インポート、世界で最も退屈なもの。それは22行です。型定義、有用ですが、退屈極まりない。もっと多く。実際のコードにさえ到達していないのに、60行になっています。これは5分の1以上の道のりです。
実行するテスト。これは私が実行したいテストの巨大なJSONブロブです。そして、これをemailからcontactに変更したい場合、どうなるか見てください。タブ。そのものは欲しくありません。ここに下がります。ああ、そのものは変更したいです。それを見てください。それはとても良いです。
これらのタイプの変更をする時、退屈な部分ははるかに速いです。だから、これはすべてまだ退屈なコードです。ここでマークダウンをフィルタリングして、ソートして、この入力メッセージフィールドに追加して、それから返しています。
他の例
さらに、別の楽しいもの、私が使うターミナルのGhostyは、すべてZigg機械コードです。どうやらMitchellは彼が書いているコードのほとんどを自動補完していると言いました。これらのエディタが、タブコンプリートされた、またはそうでないコードの割合を追跡する機能を出荷することを本当に愛するでしょう。なぜなら、自分の数字が欲しいからです。私は少なくとも60から70%の範囲にいると推測するでしょう。タブコンプリートが一度何かをやって、それから残りをタブコンプリートするところ。
とても良いです。私たちは今そこにいます。Gabrielもこれに驚いており、私も同じでした。これらの賢い人々がこれをやっていることを理解するのに時間がかかりました。
言語とLLMの関係
また、年末のCursor。本当に欲しいです。私たちは絶対にある種のT3 Chatラップをやるでしょう。私はそのために多くのコードを書かなければなりません。エージェントはそのために多くのコードを書かなければならないでしょうが、アイデアは理解できます。
多くの懐疑論は実際にはLLMについてではないでしょう。それは投影です。人々はLMはコーディングできないと言います。彼らが本当に意味するのは、LMはRustを書けないということです。確かに。しかし、人々はLLMがどれだけうまく動作するかに基づいて、部分的に言語を選択します。だから、Rust人々はそれに取り組むべきです。そして、確実にそうするでしょう。
Rustコミュニティはツーリングを真剣に考えています。また、私がこれについて話し始めてからチャットで人々が、実際にRustを書くのも本当に良いと言っています。
Go言語の利点
とは言え、著者は主にGoで書いています。Go プログラミング言語の設計者が業界で最もLLM可読性の高い言語を作ろうとしたとは確信していません。それにもかかわらず、彼らは成功しました。なぜなら、Goは十分な型安全性、広範な標準ライブラリ、しばしば反復的な慣用句を重視する文化を持っているからです。LLMはそれを生成するのにとても優れています。
これはすべて、私はいくつかのRustを書く、それは好きだと言うことです。LMとRustがあなたのために機能していないなら、あなたの気持ちがわかります。しかし、それがあなたの全てなら、私たちは同じ議論をしていません。
職人とエンジニア
職人技はどうですか?繊細な日本の木工が好きですか?すべての手工具とさしがねjoinery。私も好きです。自分の時間でやってください。私の地下室には基本的な木工ショップがあります。テーブルを作ることから多くの満足を得ることができます。そして、そのテーブルが作業台やグリルテーブルなら、確実に作るでしょう。
しかし、私のオフィスで人々が座るためのテーブルが必要なら、テーブルを買います。これはとても良いです。この記事がとても好きです。
実用的な問題解決
プロのソフトウェア開発者は、コードで人々のための実用的な問題を解決するビジネスにいます。私たちは日常の仕事では職人ではありません。スティーブ・ジョブズは間違っていました。彫刻に見えない足を彫る必要はありません。誰もロジックボードのトレースが楽しくルーティングされているかを気にしません。
私たちが構築するものが永続するとしても、それはコードベースが美しかったからではないでしょう。多くのスタートアップを取って、コードベースがどれだけ美しいかと成功する可能性を相対的に測定したとしたら、何でもそれは逆比率だと賭けるでしょう。恐らく相関はありませんが、私の推測は逆です。
ヤクシェービングの危険
その上、それは実際に起こることではありません。関数を優雅で流暢で最小限の関数表現にゴルフして慎重に削っている時間を取っているなら、警報ベルが鳴るべきです。あなたはヤクシェービングをしています。
私のCTO Markは、Advent of Codeでコードゴルフをするのをとても楽しんでいると言うでしょう。彼は解決策全体をどのように効果的に1行のコードに絞り込むかを見て、それは本当に楽しくてクールですが、彼はAdvent of Codeのためにそれをやっているのであって、私たちがユーザーに出荷しているもののためではありません。
楽しいコードを楽しいものにしてください。作業コードを作業にしてください。作業コードを、それをやって楽しめるほど簡単にしてください。本当の作業があなたの焦点を枯渇させました。あなたは構築していません。自分をなだめています。
それは私を言葉を失わせました。私はそれを多くやってきました。それが深く傷つくのでそのまま続けます。ちょっと待って。それはLMが得意なことです。彼らはschleを貪り、あなたの判断と価値が実際に重要な重要なものへの道を切り開きます。
LLMの真の価値
これは私がとても体験したことです。アイデアを得るとすぐにプロジェクトを開始して、問題に遭遇して、それを修正しようとして1週間過ごす代わりに。最初により多くの思考を入れるなら、どのようにこれを設計したいか?パーツをどのように組み合わせたいか?頭の中でアイデアを前進させます。
始める前に3倍多くの時間を考えることに費やすかもしれませんが、その後LLMは私の思考、どのように動作させたいかについての私のプロンプトを取り、70%のところまで比較的早く物事を得ることができ、その後私は3時間の思考と1時間の作業でできます。以前は1時間の思考、10時間の作業、その後さらに10時間の思考だったものを。
私の頭と実践で作業を構造化する方法を完全に反転させました。そして、それは正直に私にとってより楽しいものにもっと時間を費やすことができることを意味します。それはすべての部分がどのように組み合わさるかを構造化し、設計することです。
私は私のストリームでエディタよりもExalidrawでより多くの時間を過ごします。そして、それはショーのためだけではありません。それが私の作業と思考の方法です。私は一日の仕事でそこよりもここでより多くのコードを書きます。
凡庸さの価値
しかし、平凡さ、中後期のキャリアのコーダーとして、私は平凡さを評価するようになりました。あなたは蛇口からほとんど努力なく流れることができるほど幸運であるべきです。私たちは皆、平凡なコードを書きます。平凡なコードはしばしば良いです。すべてのコードが等しく重要ではありません。いくつかのコードは平凡であるべきです。
ランダムなユニットテストに最大の努力。あなたは何か間違ったことをしています。あなたのチームリーダーがあなたを修正するべきです。開発者は皆、コードについて愚痴を言うのが大好きです。LLMが品質の天井を下げることを心配しています。多分ですが、彼らは床も上げています。
実際の比較
Geminiの床は私自身よりも高いです。私のコードは見た目が良いですが、それほど徹底的ではありません。LMコードは反復的ですが、私のものは私がものをdryにしようとして賢くなりすぎた愚かな歪みを含んでいます。私はpopの代わりにshiftを使っていた一つを示しました。
それはエージェントが恐らく犯さなかったであろうミスです。LMSは、すべての軸で平凡ではありません。彼らは恐らくあなたよりも大きなアルゴリズムトリックの袋を持っています。基数の試行、トポロジカルソート、グラフリダクション、LDPCコード。
私は大きな関数型プログラミングの兄弟だと言うでしょう。JavaScriptでレデューサーを書く時、物事の特定の順序をまだ忘れます。それが自分で書けるという事実は、私にはまだとても魔法的です。とても良いです。
複雑さへの対応
人間は非同期をロマン化します。Andrewはそれについて論文さえ書きました。LLMにとって、それはSQL joinよりもそれほど興味深くないかもしれません。しかし、私は自分の前に出ています。それは重要ではありません。真に平凡なコードがLLMから得られるすべてだとしても、それは依然として巨大です。人間が書かなければならない平凡なコードがそれだけ少なくなります。
私はそこで絶対に同意します。ほとんどのコードは平凡であるか、恐らくそうあるべきです。しかし、それはほとんどの人間が常に平凡なコードを書いていることを意味します。そして、AIがそれを私たちから取ることができるなら、それは巨大です。そして、はるかに大量のコードを維持することをより快適にしてくれました。なぜなら、私がそれをやっているのではないからです。素晴らしいです。
AGIへの懸念
しかし、それは決してAGIにはならないでしょう。私は気にしません。スマートな実践者はAIとVCのハイプサイクルに巻き込まれます。私は彼らを責めることはできませんが、それは議論ではありません。物事は動作するか、しないかのどちらかです。Jensen Hangが何を言おうとも関係ありません。
仕事の代替について
しかし、彼らは私たちの仕事を奪っています。オープンソースもそうです。以前はデータベースに良いお金を払っていました。それは実際に陽気なポイントです。それは実際に本当に面白いポイントです。
私たちは他の人の仕事を自動化することを前提とした分野です。生産性の向上、と経済学者は言います。それが何を意味するかわかりますか?同じことをより少ない人でやることです。最近旅行代理店や床ブローカーや レコード店の店員や暗室技術者と話しましたか?
知的財産への懸念
しかし、それは盗作です。人工知能は視覚芸術家にとって深刻で恐らく不公平に脅威的です。芸術で働いていなければ理解するのが困難かもしれない方法で。私たちは芸術家が働く時間を表現の限界を押し上げることに費やしていると想像しています。しかし、平均的な芸術家はギャラリー作品を制作していません。彼らはブリーフで制作しています。
雑誌の表紙、博物館の展示、モーショングラフィックス、ゲームアセット用のコンポーネントイラストと構成を作り出しています。
実用性の現実
私の編集者Fazeについても少しバルトを取るでしょう。彼は一生懸命働き、信じられないほど才能のあるビデオエディターです。このチャンネルを運営することで彼の才能をあまり見せることができません。イントロで多くの楽しみを持つでしょう。なぜなら、イントロは本当に重要だからです。
そして、皆さんが見たことがあると確信しているように、最初の30から60秒で、彼は実際にスキルを発揮し、より魅力的にするために余分な努力をします。しかし、残りは私のナンセンスな暴言をより短い、わずかに少ないナンセンスな暴言に変えることです。
芸術と実用性
だから、芸術が芸術についてであると装いたいのですが、しばしばそうではありません。芸術の大部分は、心を満たすのではなく、スペースを満たすことを意図しています。そして、心からの作品を作ることに人生を捧げている人々がそれでお金を稼ぐ道がないのは最悪です。
しかし、私は音楽の世界から来ています。私が探索していて、まだ音楽の世界に深く関わっている間ずっと、これは事実でした。この動画を見ているほとんどの人は、Spotifyで聞いているミュージシャンよりも多くのお金を稼いでいます。
最大のものではありませんが、中規模のものです。本当に大きく見えるたくさんのラッパーが私のチームよりもはるかに少ないお金を稼いでいることを知っています。そして、それは最悪です。芸術が彼らの作品に対して適切に補償されていないことは、非常に長い間クソなことでした。
知的財産権の議論
AIはそれをより見えるようにしますが、必ずしもそれを新しい問題にするわけではありません。問題は常に存在していました。私たちは、怒りたいものに怒るためにこの既存の問題を使っているだけです。そして、それは最悪ですが、それが現実です。
LMSは、人間の創造的作業のちょうど十分に良いvicimilesをかき出すのが最も得意なことの一つであることに、警鐘を鳴らすほど簡単です。私は視覚芸術に家族がいます、著者は、私ではありません。彼はLMについて彼らと話すことができません。しかし、彼らを責めません。これは彼らの世界に大きな有害な影響だからです。
一方、ソフトウェア開発者はGitHubのパブリックリポジトリから持ち上げられたように見えるコードフラグメントを見つけて、正気を失います。ライセンスはどうですか?あなたは弁護士です。私は延期します。しかし、もしあなたがこのカードを使っているソフトウェア開発者なら、私がこの懸念をあなたのお尻に突っ込むように頼むので、少し余裕をください。
開発者の偽善
知的財産にこれほど軽蔑を示した職業は他にありません。バリ。平均的な開発者は、スター・ウォーズとダフト・パンクはパブリックコメントだと思っています。開発者の偉大な文化的プロジェクトは、収益化可能なメディア共有サイトを不便にするかもしれない保護に反対することでした。
私たちは、クリエイターが何をして、何を支払われるに値しないかを決めるのが本当に奇妙です。映画監督、彼らは数百万に値する。著者とミュージシャン、まあ。無料であるべきです。望むならサポートします。YouTuber、彼らをクソ。広告をスキップしています。
これについてのリプライは主に「YouTuberとして支払われることを当然と思うなんて、どうですか?誰も広告が好きではありません。それはすべて無料であるべきです」と言う人々です。それはすべて、本は常に無料であるべきだ、なぜなら情報は無料であるべきだと文句を言っていた別の元の投稿から来ました。
スポンサーブロックについて
私の新しい動画は7分間上がっています。スポンサーブロックの人々はすでにタイムスタンプを提出しました。これらの人々は正気ではありません。誰かが「それらの勤勉な人々に敬意を表します。本当に大変な2つのタイムスタンプを提出する作業。彼らはとても一生懸命働いています」と言いました。
私はあなたたちが彼らの作業を、コンテンツを作っているクリエイターよりも価値を置いていることを誓います。私は「はい」と言っている誰かにレシオされました。あなたは知的財産を気にしません。私はそれを事実として知っています。だから、AIが良いからといって今装うのはやめてください。
私はスポンサーブロックのことに深入りしたくありません。別の時にやります。私の簡単なTLDRは、私の広告の最初の5秒を見て、あなたに関係ないと思って、それをスキップするなら、私はそれで大丈夫です。それを自動化しても大丈夫です。
YouTubeに現れるスキップボタンが好きです。そして、関係ないと思って、それをクリックするなら、クールです。広告をあなたに関係するものにするのは私の仕事です。そして、それに失敗したら、素晴らしい。スキップしてください。
しかし、関係があるかどうかを知る前に自動的にスキップするツールをインストールするなら、あなたは盗んでいます。それは窃盗です。私と私のチームが投入した数百時間と、それらのスポンサーがチャンネルを実行できる唯一の理由であるという事実を気にしません。
知的財産の議論の続き
とにかく、この記事に戻ります。なぜなら、これは私たちがここにいる世界で非常に多くのことだからです。開発者の偉大な文化的プロジェクトは、収益化可能なメディア共有サイトを不便にするかもしれない保護に反対することでした。
または、より重要なことに、視聴者として、広告があなたに関係があるかどうかを決めるのに5秒費やす必要があるために不便になるかもしれない保護。彼らがポリシーで失敗した時、彼らは強制でそれを回避します。彼らはグローバルスケールの海賊ネットワークを立ち上げ、TV番組の新しいリリースウィンドウを保とうとする誰にでも冷笑します。
これのいずれかを指摘しますか?LiberwolfでThe Expanseをストリーミングするのがいかに困難かについてのTEDトークを見たいなら。わかった、私たちは理解しています。あなたはIPRを信じていません。それなら、IPRについて黙ってください。嵐を刈り取ってください。今まで知的財産について全く気にしなかったなら、黙ってください。ほとんどの人がそうしないことを知っているからです。だから、それについて黙ってください。
変換の問題
それはとにかくすべて特別な嘆願です。LMはあなたよりもコードをさらに消化します。これは別のポイントです。変換されたものがどれだけ遠いかについて話しているなら、もし私がいくつかのソースコードを読んで、それが私の頭のどこか深くに入って、後で偶然全く同じコードを書いたら、LLMは私がしたよりもそれを変更しました。
そして、LLMは私よりもコピーしていると見なされます。書体デザイナーが文字形式のターミナルとカウンターに道徳的な主張を賭けることができると信じないなら、赤黒木について絶対に所有的になることはできません。
最新の開発状況
私が数日前に書き始めた時、私はLLM支援プログラミングの最先端をレベルセットするためのセクションを書きました。青い魚のフィレはLLMテイクよりも長い賞味期限を持ちます。あなたがこれを読むのにかかった時間で、すべてが変わりました。
今日の子どもたちはエージェントを使いません。彼らは非同期エージェントを使います。起きて、LMSから13の異なることを自由連想で作業させ、コーヒーを作り、TPSレポートを記入し、火星チーズ城に運転し、それから通知をチェックします。
彼らは13のPRを見直すために得ました。3つは投げ捨てられ、再プロンプトされます。5つはジュニア開発者が受けるのと同じフィードバックを受け、5つはマージされます。私は今ロケット燃料を飲んでいます。
実際の体験談
友人が私に、私のチームでAIを受け入れていない人々について教えてくれます。彼らはまるで立ち止まっているようだと。彼は私にでたらめを言っていません。SFBAで働いていません。嘘をつく理由がありません。
LLMに信頼できないことがたくさんあります。ここではLLMがprodにアクセスすることはありません。しかし、私はインシデントで最初のレスポンダーとなり、o4にではなく、o4 miniにでもなく、よりスマートな推論モデルでもなく、ただの標準的なo4に40のログトランスクリプトを与えて、私たちが数ヶ月間文句を言っていたホストのLVMメタデータ破損問題を数秒で発見するのを見ました。
私は、オープンソースログやHoneycombトレースの尋問においてLLMエージェントよりも優れていますか?いいえ。私は優れていません。
保守的な立場から
私の多くの友人の当惑に対して、私は急進派でも未来主義者でもありません。私は保守主義者です。彼は奇妙な言葉を使います。複雑なシステム、制度、平均への回帰の場当たり的な堅忍を信じています。私はGoとPythonコードを書きます。私はクールエイド飲みではありませんが、何か本当のことが起こっています。
私の最も賢い友人たちはそれを軽んじています。多分私はあなたを説得するでしょう。恐らくしないでしょうが、悪い議論のための場所を作るのは終わりにする必要があります。同意します。AIの反対派の人々が現実の問題ではないことについて話しているので、私がそれらの会話をしたいのにできないことが常にとても欲求不満です。なぜなら、会話が人々がそれについて間違っているためにとても腐敗しているからです。
とても欲求不満です。チャットの誰かが「ただ彼らを愚かと呼べ」と言いました。そうしたいです。そうします。しかし、まだこのように考える本当に賢い人々がいます。彼らはただ惑わされているだけで、それは異なります。それは本当に異なります。まだこのように考える賢い人々がたくさんいるので、その違いを認識する必要があります。
彼らのうちより多くが回心しています。しかし、まだこのように考える多くの人々がいます。彼らが回心するのにどれくらい時間がかかるかによります。私はほとんどの人がそうなると思います。私が心配していた多くの人がしないと思っていましたが、私は残りもそうなるだろうと思います。
記事の結論
この記事を終わらせましょう。これは驚異的でしたが、それについて聞くのに疲れました。そして、ここで私はあなたたちの会社に再び加わります。Simon Willisの投稿を読みます。それで十分です。素晴らしい。
それなら、彼は私が誰かをすでに知っています。なぜなら、Simonは最近私のことについて投稿をしたからです。それは、Simonが私のLMスニッチベンチマークについて記事を書いてくれた時、私が本当にスペースに本当の影響を与えているohという瞬間でした。私が本当に興奮したのはそれでした。とてもクールでした。私は彼のブログが大好きです。
知らない人のために、Simon Willisは Djangoのクリエイターの一人で、業界で最高のAI研究者の一人になりました。そして、それは最新の状況を追うのに十分です。または多分私の動画を見てください。楽しいと思います。
しかし、ハイプバブルは最悪で、私はそれを理解します。もしあなたがその一部になりたくないなら、ならないでください。しかし、ハイプバブルがこれらのツールを試すことからあなたを妨げないようにしてください。
将来への展望
しかし、一日中、毎日、HackerNewsのフロントページのかなりの部分がLLM、段階的なモデル更新、エージェントでことをやっているスタートアップ、LLMチュートリアル、LLMに対する暴言に割り当てられています。それは迷惑です。
しかし、AIもまた信じられないほど、私が慎重に使う言葉ですが、重要です。2008年のスマートフォンが受けたのと同種の注目を受けていて、インターネットが受けたほどではありません。それは正しいようです。
これは来年にかけてより明確になると思います。皮肉なオウムとバイブコーディングについてのクールキッドの熱狂は、現実ともうそれほど接触に耐えることはできません。
私はこれらの人々について話していますが、私が言ったことを意味していました。彼らは私より賢いです。そして、彼らがこの恍惚から抜け出した時、彼らは今日よりもコーディングエージェントを深く効果的にするでしょう。
それは、私が今まで読んだ最高のブログ投稿の一つの素晴らしい終わりです。最初の段落を読んだ時、これはビデオにする必要があると感じました。Thomasのおかげで、ありがとう。あなたは、私がしばらく感じていたことをより具体的に、明確に、そして楽しく表現し、私が言うのを恐れていたことを言ってくれました。
最終的な感謝
具体的には、これらの人々はあなたより賢く、この機会を逃していると言うことです。私は自分でそれを言うのは正気でないと感じていただろうし、あなたがそうしてくれたので一人でそれを言わなくて済むことをとても感謝しています。
一方で、私は彼のブログ投稿をコンテンツのために盗んでいます。しかし、他方で、彼は私に最終的にこれを言う自信を与えてくれ、以前は持っていませんでした。だから、Thomasに大きな敬意を表します。皆さんに彼をフォローすることを懇願します。
私たちが彼のTwitterリンクをこの記事へのリンクの上に説明文に置いているのには理由があります。これを書くことができる誰かは、世界に提供するもっと多くのものを持っています。そして、彼がこれをまとめた方法に対して私は彼に多大な敬意を払っています。
これを私と一緒に見てくれた皆さん、ありがとうございました。なんという旅だったことでしょう。私と同じくらい楽しんでもらえたことを願っています。次回まで、平和です。


コメント