概要
プログラミング言語Zigの作者Andrew Kelley氏へのインタビューが9月23日に公開され、同氏がAIによるコード貢献を正式に禁止した経緯と、ZigプロジェクトをGitHubからCodebergへ移行した背景が明らかになった。Kelley氏はAI生成のコードを「負の価値を持つ」と断言し、レビュアーの貴重な時間を浪費するだけでなく、初心者がコードを書きながら成長していくというプロジェクトの教育的使命そのものに反すると説明している。
AIコード貢献を禁止した理由
Kelley氏によれば、AIを使った貢献者の多くはツールの使用を隠しながら、生成された出力をあたかも自分自身の成果であるかのように提出してくるという。プロジェクトのレビュー体制には限られたリソースしかなく、Kelley氏はそのリソースを、将来コアチームに加わりうるエンジニアの育成に振り向けたいと考えている。同氏は「AIを使っている人たちは、常に後者のカテゴリに入る。彼らは何も学んでいないし、後でコアチームに加わることもない」と述べ、AI利用がプロジェクトの教育的使命と根本的に相容れないとの立場を示した。この方針は、ZigからRustへの全面書き換えをAIエージェントを用いて行った最近のBunの事例とは対照的であり、Kelley氏はこれを「価値観の相違」を象徴する出来事だと評している。
GitHubからCodebergへの移行
技術面では、GitHub Actions上での継続的インテグレーションが繰り返し停止するなど、CI/CD基盤の不具合が開発の障害になっていたことが移行の直接的なきっかけとなった。加えてKelley氏は、非営利団体であるCodebergの組織構造がZigの価値観により合致すると判断した。同氏は「企業は常に次の収益源を追い求めているが、非営利団体はただ今やっていることを続けようとしているだけだ」と述べ、四半期ごとの収益成長を追い求める営利企業よりも、長期的な安定性を重視する非営利モデルを選好する理由を説明した。今回の移行は、技術的な信頼性の問題と、組織のあり方に関するイデオロギー的な一致という二つの側面を併せ持つ決断だったといえる。
背景と今後
ZigはGhostty(ターミナルエミュレータ)やTigerBeetle(金融向けデータベース)、UberのARM64クロスコンパイル基盤など、実運用のプロジェクトで採用が進んでいる言語である。Kelley氏は2018年に職を辞してZigの開発に専念しており、JavaScriptの低レベルアクセスの欠如、Goのストップ・ザ・ワールド型ガベージコレクション、Rust(1.0以前)の借用チェッカーによる制約、C++のメモリ破壊バグといった既存言語の限界を踏まえてZigを設計した経緯も語られている。AIコード貢献の禁止という方針は、こうしたZigの設計哲学や教育的な運営方針の延長線上にあるものであり、AIエージェントによる開発が急速に広がる中で、オープンソースプロジェクトの人材育成のあり方を問う事例として注目される。