r/javaから追放された話
Getting Banned from r/java (sjhannah.com)
要約
著者は、AIを多用して開発したSwing WebViewコンポーネントを投稿したことで、Redditのr/javaコミュニティから永久追放された。これは、AIの使用を禁じる新しいルールに違反したためだが、著者はAIによるコーディングが人間を凌駕した現代において、このルールは時代遅れだと感じている。AIなしでコーディングすることは、もはや生産性よりも個人的な楽しみやスキルの維持のためであり、効率や品質の観点からは非合理的であると論じている。
全文翻訳
r/javaから追放される
本日、私が作成したSwing WebViewコンポーネントを投稿したことで、r/javaから追放されました。永久追放です。
今回の違反は、私が気づいていなかった、そして前回投稿した時から新しくなっていたルール#9に違反したことでした。このルールは、AIを少しでも含むソフトウェアの共有を禁止しています。
私はこのライブラリを開発するためにAIを広範囲に利用しました。そのため、ルールの文言に基づけば、私は間違いなくルールを破ったことになり、その結果は永久追放です。
この件について、私は様々な感情を抱いています。追放されたこと自体はそれほど気にはなっていません。そのフォーラムへの参加・不参加は気づかないだろうと思います。しかし、これは2025年後半から私が感じていた、ソフトウェア開発プロセスの変化に関する内面的な葛藤を表面化させます。2025年後半というのは、基本的にAIが人間よりもコーディングが上手になった時期です。そして、r/javaが「No AI」ポリシーを採用したのがその頃と一致するのは偶然ではないでしょう。
2026年において、もしあなたがまだAIの助けなしで「手書き」でコードを書いているなら、それはAIを使ってみていないか、生産性を目指さずにただ楽しむためにコーディングしているかのどちらかです。しかし、何かを構築するという目標があるなら、それを「手書き」で行うのは愚かでしょう。
誤解しないでください。コーディングのハイ(高揚感)は失いたくありません。アルゴリズムを一行一行吐き出し、時間の経過を気にすることなく、フロー状態に乗って一日を過ごすこと。それは楽しく、爽快ですが、もはやそのようにコーディングする唯一の説得力のある理由は、個人的な楽しみのため、あるいは「コーディング筋」を鍛えるためです。それらは有効な理由ですが、実現したい完成品のビジョンと天秤にかける必要があります。これらの理由でプロジェクトの手書きコーディングを主張することは、筋肉をつけたい、農夫のような日焼けをしたいからといって、ショベルカーよりもシャベルを選ぶようなものです。家の基礎を掘る必要があるなら、ショベルカーを使うべきです。特に、その作業でお金を稼ぐのであれば。シャベルのスキルを鍛えたいなら、それは自分の時間でやればいいのです。
もし私がAIなしでコードを書くとしたら、それは自分の気晴らしと学習のためだけでしょう。AIによるレビューや執筆の助けなしにコードを出荷することは、非効率的で無駄が多く、より悪い結果を生むため、二度としないでしょう。
しかし、このような「No AI」ポリシーにつながる感情は理解できます。AIは、私たちが人生をかけて培ってきたコーディングスキルよりも、今や優れています。私たちのアイデンティティは、開発してきたコーディングスキルを中心に築かれています。そして突然、通りすがりの誰かがAIにプロンプトを入力するだけで、私たちよりも優れたコードを生成できるようになりました。これはフェアではありません。練習、学習、スキルの向上に費やした時間。血と汗を流して得た苦労して勝ち取った教訓。今や12歳の子供が、何の努力も規律もなく、同じスキル、いやそれ以上のスキルを瞬時に手に入れたのです。これはフェアではありません。
だから、AIが歓迎されない安全な空間を作ることで、フィールドを平準化しようとしましょう。そうすれば、私たちはハードワーク、粘り強さ、規律の重要性を理解してくれる人たちと一緒に、手書きコーディングのスキルを練習する自由を得られるかもしれません。そこでは、私の実体験に価値があるのです。
残念ながら、それは徒労です。ジェニーはボトルから出てしまいました。今後、重要なソフトウェアはすべて、人間がガイドし、レビューするエージェントによってコーディングされるでしょう。OpenJDKのようなプロジェクトは、ほぼ間違いなくすでにかなりの量のAI支援コードを含んでいます。そのため、r/javaのようなサブで厳格な「No AI」ポリシーを採用する場合、ルールの文字通りに従えば、OpenJDKへのリンクさえ共有できなくなるはずです。しかし、それは不条理です。
将来のある時点では、この皮肉があまりにも明白になり、無視できなくなるでしょう。その時、彼らはゴールポストを移動させる必要があるでしょう。
私にとっては、少し悲しいことです。1998年からJavaを開発しており、今後もJavaを開発し続けるつもりですが、それは変わりました。もう手書きで書くことはないでしょう。エージェントにやらせ、それらをガイドし、レビューすることになります。そこには何か失われたものがあります。それは、r/javaに参加する私の能力以上のものです。