DUICUO

Twitterがオープンソースを放棄

Twitterの技術スタッフの大半を解雇したことに加え、新オーナー兼CEOのイーロン・マスク氏はTwitterのオープンソースへの取り組みのサポートも停止した。

イーロン・マスク氏がツイッターの経営を引き継いだ後、最初にとった行動は、ソーシャルネットワークの従業員の半数を解雇することだった。

これが実は失敗の種を蒔いたのです。

マスク氏の経営や政策の失敗はさておき、ソーシャルネットワークが前進するには経験豊富な開発者が必要だ。

残った従業員は「極めてハードコア」である必要があると叫んだり主張したりしても、役には立ちません。

さらに悪いことに、マスク氏はツイッターのオープンソースプロジェクトの多くも放棄した。

ほとんどすべての現代のソフトウェア企業と同様に、Twitter はオープンソース プログラムに依存しています。

ネットワーク自体は CentOS 7 上で実行されており、この無料の Red Hat Enterprise Linux (RHEL) クローンも 2024 年 6 月末に廃止される予定です。

Twitterの情報筋によると、同社はCentOS Streamへの移行を計画しているとのこと。現在、このOS移行の詳細な計画に携わっている人はほとんどおらず、ましてや監督する人などほとんどいない。

しかし、Twitter のオープンソース ソフトウェアへの依存は、その基盤となるオペレーティング システムをはるかに超えています。

Twitterのオープンソースプロジェクトの元責任者ウィル・ノリス氏はインタビューでこう語っている。「私は当時TwitterのCEOだったパラグ・アグラワル氏と、主要なオープンソースプロジェクトへのTwitterの投資をどのように改善するかについて、詳細な議論を重ねました。」

彼は続けた。「私がTwitterに入社した当時、既に多くの大規模なモダナイゼーションプロジェクトが進行中で、膨大な数のオープンソースコンポーネントが関わっていました。PantsビルドシステムはBazelに置き換えられつつあり、Apache AuroraとMesosをKubernetesに最終的に置き換える準備も進められていました。また、私たちはApache Kafka、Hadoop、Scalaの最大のユーザーの一つでもありました。Java仮想マシン(JVM)のカスタムフォークも開発しており、最終的にはオープンソース化されることを期待していました。素晴らしい取り組みが数多く行われ、Twitterはこれらのコミュニティから非常に優秀な人材を招き入れ、これらのプロジェクトに携わらせることに成功しました。」

しかし、今年は物事がこのようになるとは予想していませんでした:-\

まず、マスク氏はツイッターの買収と買収断念を交互に行うというドラマチックな演出を披露した。

そのため、Twitterの幹部は、明確な道筋が見えるまでオープンソース計画と投資を凍結しました。予想外にも、マスク氏は幹部全員を解雇し、その後すぐに開発者の大半も解雇しました。現在、Twitterの従業員の半数以上が解雇されるか、他社に移籍しています。

ノリス氏は「Twitterでオープンソースに取り組んでいた主要人物のほとんどが去った。私と一緒にオープンソースに取り組んでいたエンジニアも全員去った」と語った。

ノリス氏は、これはTwitterが短期的に成功する可能性が低いことを意味すると考えている。Twitterにとって、意味のあるコードを一切提供せずに、単にオープンソースの消費者になるという道に戻る方が楽だ。多くの企業が既にそうしている。CentOS、Scala、Kafka、そして過去に使ってきた他のツールを使い続けることができる。BazelやKubernetesなど、移行中のプロジェクトについては、プロジェクトの具体的な状況によっては、停止させるのはより苦痛を伴うかもしれない。サービスを継続させ、マスク氏が望む製品変更を加えることに重点を置くべきだと私は考えている。

Twitterの現従業員たちは、会社を存続させるためにはこれが精一杯だと述べている。また、月額8ドルのBlueサービスの立ち上げをTwitterが遅らせた本当の理由は、ブランドや著名人のなりすましによる悪用だけでなく、開発者がそのような悪用を自動的に防止する方法をまだ見つけられていなかったからだと主張する者もいる。

これは驚くべきことではありません。ソーシャルネットワークにおけるコンテンツモデレーションの自動化に成功した人はこれまで誰もいません。深夜の会議に「コードを書かないとクビになる」と脅迫されて呼び出された開発者が、この厄介な問題を解決できるとは想像しがたいでしょう。

ノリス氏は、長期的にはTwitterがオープンソースコミュニティにおいて無関係になり、脇役に追いやられていると考えている。「Twitterはかつて持っていたプロフェッショナルなエンジニアリング組織としての信頼性をすべて失い、Twitterがどれほど『ハードコア』を標榜しているかは誰も気にしなくなっています。オープンソースコミュニティは人間関係と信頼の上に成り立っていますが、Twitterには今、そのどちらもありません。オープンソースコミュニティに実質的に参加する能力を失ってしまったのです。」

しかし、もうひとつの差し迫った問題があります。それは、Twitter 独自のオープンソース プロジェクトです。

ノリス氏は次のように語った。「これらのプロジェクトの多くは、現在では積極的にメンテナンスされていません (これは Twitter 自体の問題です) が、特に Scala 分野では依然として非常に人気があります (Finagle、Twemoji、Scalding、および Algebird)。」

Twitterは、一部のオープンソースプロジェクト(Finagleなど)が最新の状態に保たれ、社内で作成されたコードが使用されていることを確認するプロセスを導入していますが、これらのプロジェクトはどれも完全に自動化されていません。この作業を現在も行っている人はまずいないでしょう。では、これらのプロジェクトの外部ユーザー(ING Bank、Pinterest、SoundCloudなどの企業を含む)はどうなるのでしょうか?

状況はひどいです。

さらにノリス氏は、「https://github.com/twitter でプロジェクトを管理するというのは奇妙な話です。なぜなら、Twitter には GitHub 上のコードを管理する社内システムがあるからです。このシステムでは、Twitter の従業員が自身の GitHub アカウントを登録して、Twitter のオープンソース プロジェクトにアクセスできます。以前はこのようなことがよくありました。従業員が退職してもアクセスは保持されますが、GitHub 上の Twitter 組織の「メンバー」から「外部協力者」へと役割が変わるのです。」と続けました。

マスク氏がCEOに就任する以前から、Twitterは退職した開発者を独自のTwitter GitHubプロジェクトから削除しないことがありました。ある従業員は、退職から18か月が経過した2022年8月時点でも、TwitterのGitHubとソースコードにアクセスできていました。

今年初め、Twitterのコードへの不正アクセス問題は軽減されましたが、作業はまだ完了していません。そのため、ノリス氏は「プロジェクトのメンテナーは何年も前にTwitterを去りましたが、悪意のある人物は依然としてアクセスし続ける可能性があります」と述べています。

もちろん、最近解雇されたり辞職したりした人、そして「残っている進行中のプロジェクトについて最もよく知っている」人たちは、ほぼ確実にアクセス権を剥奪されるでしょう。そのため、数ヶ月、あるいは数年前にTwitterを退職した元従業員は、依然としてコードにアクセスできる可能性があります。一方、最近退職した元従業員は、コードにアクセスできるべき人物を把握しているものの、問題を解決できる人材を見つけることができなくなっています。

Twitter自身のオープンソースプロジェクト(Finagleなど)については、ノリス氏は「Twitterがこれらのプロジェクトを今後も維持していく、あるいは少なくとも以前と同じだけの労力を費やし続けることはないだろう。そのため、現実的には、これらのプロジェクトはすべてフォークして新しい場所に移す必要があるかもしれないが、これは混乱を招き、破壊的なプロセスとなる可能性がある」と述べている。

オープンソースは、その本質において、破壊から立ち直る力を持っています。Twitterのオープンソース・プロジェクトは今後も継続されます。しかし、オープンソースの積極的な貢献者ではなく、単なる消費者としてのみ存在する限り、Twitterは自社プロジェクトから得られるものははるかに少なくなります。一方、新しいシステムの下では、Twitterは必要なあらゆるプログラミング支援を必要とするでしょう。