ソフトウェアエンジニアとしてこれだけは知っておくべきこと

MMaximilian Schwarzmüller
Computing/SoftwareManagementInternet Technology

Transcript

00:00:00Linuxの生みの親であるリーナスが、AIの利用に関して興味深い主張をしました。
00:00:06Linuxカーネル内でのAI利用についてです。この話は多くの人に聞いてほしいと思います。というのも、
00:00:13私もこの数年間の動画でずっと言ってきたことですが、AIの存在を認めず、その有用性を無視するなら、
00:00:20プロのソフトウェアエンジニアとしての未来はありません。
00:00:26AIについて議論することはできます。確かに欠点もありますし、私自身、ソフトウェアエンジニアリングにおいてAIのせいで
00:00:33楽しさが奪われたと感じることもありました。その思いは以前も共有しましたね。最近はまた
00:00:37新たな楽しさを見出してもいますが、AIを無視することはできません。悪い面ばかりだとか、
00:00:44利点がないかのように振る舞うべきではありません。だからこそ、これは本当に興味深い話なのです。
00:00:49AIを心底嫌う人がいることは理解していますが、Linuxのトップメンテナとして、
00:00:54ここだけは断言しておきます。Linuxは反AIプロジェクトではありません。
00:01:00反AIの顕著な例としてSIGプロジェクトなどがありますが、Linuxはそうではありません。
00:01:05もし不満があるなら、オープンソースの流儀に従ってフォークすればいいのです。はっきり言っておきますが、
00:01:11私はAIがオープンソースのメンテナにとって多くの負の影響をもたらすことを十分に理解しています。
00:01:18粗悪なプルリクエストやIssueが殺到して、対応に追われるのは大変なことです。
00:01:25無限に送られてくるゴミのような内容を処理させられていると感じてしまい、
00:01:31全部無視したくなる気持ちもわかります。もちろん、それこそがオープンソースの本来の姿ではありません。
00:01:37ですが、だからといってAIを全面的に無視するのが答えというわけではありません。Issueやプルリクエストを無視するのは個人の自由かもしれませんが、
00:01:47それはあなた自身がAIを使うべきではない、あるいは主要な貢献者が使うべきではないということではありません。
00:01:54例えば、SIGプロジェクトには非常に厳格な反AIポリシーがあり、AI生成コードを含む
00:02:03プルリクエストを一切受け付けていません。
00:02:10世の中には非常に厳格な方針を持つプロジェクトも存在します。メンテナがそうしたいなら、それはそれで構いません。
00:02:17ですが、私はそれが今後の道だとは思いません。メンテナにとっても、ソフトウェアエンジニア全般にとってもです。
00:02:23AIはツールとして利用しなければなりません。効率的に使えるようになるためには学習が必要ですし、進化も速いです。使い方も変化し続けるでしょう。1、2年前にAIを使った人や、社内の制限された古いモデル環境でしか使ったことがない人は、AIがそれほど有能だと感じられないかもしれません。その気持ちはわかります。
00:02:51ですが、自分のマシンでいろいろ試して、開かれた心でいてください。学習プロセスとしてAIを取り入れましょう。誰もがどう使いこなすかを見つけなければならないツールなのです。
00:03:02コードそのものには無関心な「バイブコーディング(気分でコードを書く)」もあれば、コードを重視しつつAIを使って仕様書や計画を立てたり、レビューしたり、あるいは自動化に組み込んだりと、エンジニアリングを能動的に行うやり方もあります。
00:03:21白か黒かではありません。0か1でもありません。一部の人はそうしたがりますが、現実は違います。AIは広大なスペクトルの一部であり、急速に進化しており、私たちは学び続ける必要があります。
00:03:34すべてを自動化するようなループを作る必要はありませんが、ただのオートコンプリートとしてAIを使うだけでもいけません。
00:03:44真剣にAIと向き合い、実際にいろいろ試して、失敗を恐れず学び、プロセスを改善し続けるべきです。
00:03:54AIエージェントのスキルを試して、それが自分のワークフローにどう適応すれば効率化できるか模索してください。
00:04:02これこそ私がやっていることであり、AIに関わっている多くの人がやっていることです。
00:04:07彼らはAIを効果的に使いこなす方法を模索しています。リーナスの主張が素晴らしいのは、Linuxは今後AIの助けを借りて構築、維持されていくという姿勢を明確に示した点です。
00:04:21それを望まない人は去ればいい、ということです。
00:04:25AIは他のツールと同じく、ただの便利な道具にすぎません。
00:04:29私も先ほどそう言いましたね。
00:04:31AIを効率的に使っている人のほとんどが言うように、私はAIがツールの代替になるような「バイブコーディング」の話をしているわけではありません。
00:04:44AIは非常に有用で強力な、進化し続けるツールなのです。
00:04:491年前はそれほど明確ではなかったかもしれませんが、今は疑う余地がありません。
00:04:53これも非常に重要なポイントだと思います。
00:04:55新しいモデルを使っていれば、誰もが実感できることです。1年前に使っていたのなら尚更ですね。
00:05:032025年の夏、当時のツールやモデルは明らかに、今よりずっと劣っていました。
00:05:10私は2025年末から26年にかけて、少し間違った予測をしました。
00:05:171月初旬、私は「これ以上、モデルはそれほど大きく進化しないだろう」と予測したのです。
00:05:22それは明らかに間違っていました。
00:05:23モデルは指示に従う能力、ツールやスキルを呼び出す能力、長時間作業を継続する能力において、劇的に向上しました。
00:05:36AI企業によるポストトレーニングは非常に効果的でしたし、今もなお続いています。
00:05:41もちろん、さらに向上し続けています。
00:05:43そして当時言ったように、モデルを使うためのツール環境も大幅に良くなりました。
00:05:48素晴らしいコーディング環境が揃っています。
00:05:52Cloud CodeやCodecsなど、多くの素晴らしいツールがあり、そのほとんどが非常に優秀です。
00:05:56こうした環境も進化しており、モデルが効率的に動けるようになり、サブエージェントやエージェントスキルなどを活用できるようになっています。
00:06:101年前と比較すると、明らかに状況が変わりました。
00:06:13できることは1年前より確実に増えています。
00:06:18AIの経済が最終的にどうなるかなど、疑問は他にもあります。
00:06:23しかし「AIは有益か?」という問いは、もはや議論の余地がありません。
00:06:25これを疑う人は、明らかに一度も使ったことがないのでしょう。
00:06:28その点については完全に同意します。
00:06:29しつこいようですが、ただの煽り目的でAIを否定している人もいますが、それもインターネットの一部として理解しています。
00:06:35それは知っています。
00:06:36分かっています。
00:06:37しかし、本気でAIを無視すべきだと信じているなら、考え直したほうがいい。
00:06:44この分野にとどまりたいのであれば、それは非常に危険な姿勢であり考え方です。
00:06:50個々の人間がソフトウェアエンジニアリングから離れるかどうかはどうでもいいことです。
00:06:56私は常に人々の役に立つコンテンツを作ろうと努めてきましたし、これからもそうするつもりです。
00:07:02しかし、私の意見を伝えることもその一部です。
00:07:05もしAIに対して非常に懐疑的であれば、どうかお願いですから、試して、使い方を学び、オープンな姿勢で向き合ってみてください。
00:07:13これは本当に重要なことです。
00:07:15これこそがソフトウェアエンジニアリングの未来なのですから。
00:07:17念のため言っておきますが、コメントが来るのはわかっています。
00:07:20これは新しい意見ではありません。
00:07:21これまでもすべてのエピソードで同じことを言っています。
00:07:25AIはツールです。
00:07:26使い方を学ばなければなりません。
00:07:28確かに、AIツールはときに面倒なこともあります。メンテナの負担の面でも、恥ずかしいバグを見つけ続けてくれる面でもそうです。
00:07:37ええ、メンテナがAI関連の雑務に追われている件については先ほど触れました。
00:07:42しかし、解決策は砂の中に頭を突っ込んで「ラララ」と歌うことではありません。
00:07:45一部の人々がやっているように、耳を塞ぐことではありません。
00:07:48完全に同意します。
00:07:49解決策は、LLMツールがメンテナに苦痛を与えるのではなく、支援するようにすることです。
00:07:53それについては議論の余地がありません。
00:07:55それこそが私が言いたかったことです。
00:07:57オープンでいる必要があります。
00:07:58そのツールを使いこなすことを学ぶのです。
00:08:00今後、Academyチャンネルという別のチャンネルでも、私がツールをどう使っているのか、より多くの情報を無料で共有していくつもりです。
00:08:12それが皆さんの一部にとって助けになるかもしれません。
00:08:15誰にでも使うことを強要するつもりはありませんが、他人が使おうとするのを止めようとする人たちは、全力で無視します。
00:08:20AIは完璧ではありませんが、AIの問題点を指摘する人は、同時に鏡を見て自分自身を振り返るべきです。
00:08:27自然知能だって、常に素晴らしいわけではないのですから。
00:08:31それは良い指摘だと思います。
00:08:34私たちは人間よりもAIに対して過剰な期待を寄せているようです。
00:08:41同時に、AIよりも人間の方を信頼しがちです。
00:08:45もちろん人間もエラーを犯すものなのに、ですよね?
00:08:50誰も完璧ではありません。
00:08:51私たちだって、ひどいコードを書いたりバグを作り込んだりした経験があるはずです。
00:08:56大きな違いは、主体性(エージェンシー)です。
00:08:59人間はコードを所有する主体です。
00:09:01そのコードには人間が責任を負います。
00:09:03AIの場合はそうではありません。
00:09:05AIはコードを所有しません。
00:09:06AIは責任を負いません。
00:09:08責任を負うのは、人間であるあなたです。
00:09:09私たちがAIに過度な期待をするのは、おそらくそのためでしょう。
00:09:13AIにコードを書かせても、責任は自分にある。だからこそ、AIのコードがひどいと腹が立つのかもしれません。
00:09:22それに加えて、AIに仕事を奪われるという脅威を感じるからでしょう。
00:09:27そう感じる理由は十分にあります。
00:09:30だからこそ一層、
00:09:32「私の仕事を奪うなら、ちゃんとやり遂げろ」と思ってしまうのでしょう。
00:09:35分かりませんが。
00:09:36人間よりAIに多くを期待してしまうその気持ちは、確かによく分かります。
00:09:40ですが、人間だって完璧ではないという、良いリマインダーでもあります。
00:09:44繰り返しますが、結局は「組み合わせ」なのです。
00:09:46私はそう強く信じています。
00:09:48それは組み合わせの問題なのです。
00:09:50この40、50、60年というテクノロジーと人間の組み合わせが、素晴らしい成果を生み出してきました。
00:09:59ですから、これは非常に重要なポイントだと私は思います。
00:10:04カーネルプロジェクトは、これまでもこれからも、テクノロジーに関するものです。
00:10:07オープンソースに取り組むという社会的側面も重要ですし、プロジェクトのモチベーションになることは多いです。
00:10:12しかし結局のところ、それは付随的なものです。
00:10:13もしそれがプロジェクトの主眼でないのなら、これは社会活動家プロジェクトではありませんし、今までもこれからも、そうなることはありません。
00:10:21そのような意図があったのかは分かりませんが、
00:10:24SIGプロジェクトのような他のプロジェクトに対して、少し毒づいたように聞こえるかもしれません。
00:10:32他にも、有益な技術やツールを構築しようとするよりも、使命感を感じさせるような非常に反AI的なプロジェクトがあります。
00:10:43もしかすると私の勘違いかもしれませんが。
00:10:45成果や結果よりも、コードを書く芸術性を重んじるような姿勢で、ある程度までは理解できますが、
00:10:55プロとしてやるなら話は別です。
00:10:57それが私の見解です。
00:10:59以前の動画でも言いましたが、確かにAIによって奪われた喜びというものはあります。
00:11:06手作業でコードを書く技術は好きでした。しかし今の私にとって、それは本当に「芸術」でしかありません。
00:11:13趣味でやるならいいですが、プロとしては違います。
00:11:17手作業でコードを書き続けることが、プロの未来だとは到底思えません。
00:11:21プロとしてです。
00:11:22同じことを何度も言うようですが。
00:11:26カーネルコミュニティがオープンソースを行うのは、より良い技術を生むためであり、宗教的な理由ではありません。
00:11:32私たちは新しいツールを恐れるのではなく、技術的価値に基づいて判断を下しています。
00:11:37一部の人には、この言葉をぜひ読んでほしいです。
00:11:39多くの人がすでに気づいているか、同じような意見を持っているでしょうが、本当に必要な人は、
00:11:47この分野にとどまりたいなら、AIに対する自身のスタンスを問い直し、もう少しオープンになるべきです。
00:11:54単に煽り目的でここにいるのなら、あるいは趣味でやっているだけなら、それはそれで構いません。
00:12:01それなら無視していてもいいでしょう。ですが、これは一過性の流行ではありません。
00:12:04消え去るものではありません。
00:12:05これもずっと前から言い続けてきたことです。
00:12:09ですから、少しでも心を開いて、AIをツールとして使ってみてください。
00:12:16本当に役立つ道具なのですから。
00:12:19リーナスの主張は、本当に素晴らしいと思います。

Key Takeaway

ソフトウェアエンジニアはAIを単なる一過性の流行として無視せず、プロフェッショナルな業務における必須ツールとして能動的に学び使いこなすべきである。

Highlights

  • Linuxは反AIプロジェクトではなく、AIを活用して構築および維持される方針である。

  • 反AIポリシーを掲げるプロジェクトが存在する一方で、Linuxは技術的価値に基づいてAIツールを受け入れている。

  • AIモデルは指示への追従能力、スキルの呼び出し、長時間タスクの継続能力において劇的に向上している。

  • プロのソフトウェアエンジニアとして生き残るためには、AIを無視せずツールとして学び続ける必要がある。

  • AI生成コードの不備に対する責任は常にAIではなく、人間であるエンジニアが負うものである。

Timeline

Linuxカーネル開発とAIへのスタンス

  • LinuxはAIを排除するプロジェクトではない。
  • AIの利用を拒むオープンソースプロジェクトにはフォークという選択肢がある。
  • AIツールを効率的に利用するには、継続的な学習と開かれた姿勢が必要である。

LinuxプロジェクトはAIの有用性を認め、開発プロセスに取り入れる方針を明確にしている。AIの活用に不満を持つ開発者に対しては、オープンソースの流儀に従ってフォークすることを推奨する。AIがメンテナの負担になる側面も理解されているが、ツールを全面的に無視することが解決策にはならない。

エンジニアリングにおけるAIの進化と活用

  • AI利用は、ただのオートコンプリートを超えたエンジニアリングプロセスへ進化している。
  • 2025年から2026年にかけてAIモデルの指示追従能力やツール呼び出し能力は劇的に向上した。
  • Cloud Codeなどのコーディング環境が進化し、AIエージェントのスキルを実務に適用しやすくなっている。

AIの活用範囲は、仕様検討、レビュー、自動化などの幅広い領域に及ぶ。1年前と比較して、AIツール環境は明らかに効率的になっており、疑う余地のない実用的な価値を提供している。AIの能力を過小評価する人は、最新のモデルを十分に試していない可能性が高い。

責任の所在とプロとしての技術評価

  • コードの責任は常に主体である人間が負うものであり、AIには責任がない。
  • 手作業でのコーディングにこだわることは、プロの現場では単なる芸術活動となりつつある。
  • Linuxカーネルコミュニティは宗教的信念ではなく、より良い技術を生み出すことを目的としている。

AIに対する過剰な期待と不信感は、AIに仕事が奪われるという脅威から生じている。しかし、AIは他のツールと同様、目的達成のための補助手段にすぎない。プロとしてプロジェクトに関わり続けるためには、効率性を追求し、技術的価値に基づいた判断を下すことが求められる。

Community Posts

View all posts