- Webブラウザエンジンが少数の企業に集中している状況の中で、Ladybird は既存エンジンをフォークせず、新しいエンジンをゼロから作る独立プロジェクト
- 最初の Alpha は 2026 年に Linux と macOS を対象としており、現在は開発者とアーリーアダプターを念頭に置いた活発な開発段階にある
- プロジェクトは Web 標準ベースのエンジンという目標に集中しており、デフォルト検索契約・暗号資産トークン・ユーザー収益化なしで運営されている点を差別化要素として掲げている
- 公開オープンソースとして開発されており、バグ報告、最小再現ケース、Web サイトのテスト、セキュリティ問題の報告、技術的フィードバックで参加できる
- 寄付とスポンサーシップが唯一の資金源であり、スポンサーは技術ロードマップや製品方針に影響力を持たない
Ladybird の目標と現状
- Ladybird は Web ブラウザエンジンをゼロから新たに作るプロジェクト
- 現在は 活発に開発中 で、Linux と macOS 向けの最初の Alpha を 2026 年に出すことを目標としている
- Web はコンピューティングにおける重要なプラットフォームだが、Web 全体を動かすブラウザエンジンは少数しかなく、それぞれ特定の企業によりコントロールされている
- Ladybird は Web 標準を中心に据えた 独立エンジン を作ろうとするプロジェクト
プロジェクトが掲げる差別化要素
-
完全な独立性
- Blink、WebKit、Gecko など既存ブラウザエンジンのコードを使わずに新しいエンジンを構築している
-
単一の焦点
- プロジェクトの焦点は Web ブラウザを作ること、その一点にある
-
ユーザー収益化なし
- デフォルト検索契約、暗号資産トークン、そのほかのユーザー収益化手法を使わない
最近の開発動向
参加方法とビルド
- Ladybird は公開で開発されている オープンソース プロジェクトであり、小規模なチームが開発している
- コントリビューターは、バグ報告、最小再現ケースの作成、Web サイトのテスト、セキュリティ問題の報告、技術的フィードバックの共有で参加できる
- ローカルでコードをクローンして実行できる
$ git clone https://github.com/LadybirdBrowser/ladybird.git
$ cd ladybird
$ ./Meta/ladybird.py run
資金調達とスポンサー方針
- Ladybird は全面的に 寄付とスポンサーシップ により運営されている
- スポンサーは Web サイトとプロジェクト更新に表示され、スポンサー期間は 1 年間
- スポンサーシップ金額は次のとおり
- Platinum: $100,000
- Gold: $50,000
- Silver: $10,000
- Bronze: $5,000
- Copper: $1,000
- スポンサーシップの問い合わせは contact@ladybird.org で受け付けている
- 個人寄付は Donorbox を通じて、単発または月次の継続寄付が可能
- 大口寄付は処理手数料を避けるため、直接連絡 するよう案内している
FAQ の制約と今後の計画
- 最初の Alpha は 2026 年に Linux と macOS を対象とし、開発者とアーリーアダプター向けとなる
- 現在の Ladybird には小規模な正規エンジニアリングチームがあり、コミュニティからのテスト・バグ報告・セキュリティ報告・技術的フィードバックを受けている
- チーム規模は安定しており、プロジェクトの必要性が変われば採用計画を再検討する
- プロジェクトは常に 18 か月のランウェイ を維持しようとしている
- 既存エンジンのフォークではないというのは、Blink、WebKit、Gecko、または他のブラウザエンジンのコードを使っていないという意味
- 歴史的な理由から SerenityOS プロジェクトの複数のライブラリを使っている
- Ladybird が SerenityOS からフォークされた後は、すべてをゼロから書く文化に縛られてはいない
- 画像・音声・動画フォーマット、暗号化、グラフィックスのような共通機能にはサードパーティライブラリを使っており、他のブラウザが使うライブラリの一部も含まれる
- Windows 対応は段階的に進められている
- CI ではすでに Windows 上で JavaScript エンジンをビルドしてテストしている
- フルブラウザエンジンの Windows 対応はその後の段階で進められる
- 正規エンジニアは現在 macOS と Linux に集中している
- モバイルプラットフォームは現在の重点ではない
- デスクトップ版の状態が良くなった後に Android と iOS へより多くの労力を投入する
- スポンサーシップは使途制限のない寄付の形を取る
- 理事会の席やその他の影響力は販売対象ではない
- スポンサーには技術ロードマップや製品方針に対する発言権はない
- Ladybird は SerenityOS の一部として始まった C++ プロジェクトだったため、コードベースは C++ で始まり、その大部分は今も C++ のまま
- その後 Rust を C++ の後継言語として採用した
- サブシステムを段階的に Rust へ移植している
- 詳細は Rust 採用の発表 で確認できる
1件のコメント
Hacker Newsのコメント
彼とハッカー仲間たちが新しい独立系ブラウザをゼロから作っているのを見るのは本当に励みになる。
人員や資金の規模を考えると、実現できるとは思っていなかった。
一方で、ブラウザが人気機能の「95%+」あたりでよりうまく標準化された結果が今になって出てきているのか、そしてそのおかげで今日ブラウザを書くことは、10年前にブラウザを作って保守していた頃よりも簡単になっているのかも気になる。
Webは今でも進化しているが、10〜15年前よりは安定している感じがあり、昔の開発者たちはブラウザ設計を始める時点で今のような完成度の高いロードマップを持っていなかった。
今では膨大なWeb標準がすでに存在し、時間がたつ中で何が人気だったかも分かっているので、現代のWeb対応で優先順位を付けやすい。
見た目にはあらゆるものが増えたように思えるが、捨てられるアイデアも増えたと思う。Internet ExplorerがXSLTをサポートし、FTPが一般的だった時代もあった。
修正: XSLTは今でも主要ブラウザすべてが対応しているが、ほとんど使われずXSLT 1.0のままなので、かなり長い間安全に省略できる部類に入りそうだ
2006年から断続的にブラウザ開発をしてきたが、今の環境はまったく違う。
仕様書はかつてないほど良くなっていて、使えるテストも宝の山のようにある
誰かがGoogleの地位を脅かせば、Googleは資金をつぎ込み、過度に複雑な標準を作り、Blinkに実装して競合に追随させることができる。
W3Cを通す必要すらない。Chromeで動けばWeb開発者が採用し、小さなエンジンは残りの市場シェアを失わないために結局対応せざるを得ない。
今のインターネットを支配することの戦略的重要性は、Microsoftが頂点にいた20〜30年前よりも大きい
https://www.ietf.org/rfc/rfc1866.txt と https://html.spec.whatwg.org/multipage/ を比べれば分かる。
昔もWebブラウザを書くのはさまざまな理由で難しかったが、今日フル機能のブラウザを作るのは巨大な仕事であり、今でも新機能が追加され続け、ブラウザ対応が期待されている
APIの表面積は10〜15年前とは比べものにならないほど大きくなっている: https://developer.mozilla.org/en-US/docs/Web/API
しかもこれにはJavaScript、MathML、SVG、HTTPベースのセキュリティ機能、暗号化、メディア対応の更新は含まれていない
ある人が趣味で、そして面白いことをやろうとしてOS全体をゼロから作り始めた結果、偶然にもここ10〜20年で最も有望な新しいブラウザエンジンの1つを生み出したのは本当に驚きだ。
ここ1〜2年、開発動画を見てきたが、これほど短期間で進んだスピードは信じがたいほどだ。
今では複数のボランティアがいて、1人以上の開発者に報酬を支払えるだけの支援も得ているので、今後がかなり楽しみだ
成功の秘訣の1つは、複数の仕様を直接コードに落とし込むやり方で、今日ではこれが最善に近い。テスト駆動も徹底している。
「ゼロから」というのは、C++標準ライブラリすら使わず独自の文字列クラスまで含むという意味で、良くも悪くも「ただ楽しみのために」「学ぶために」やっているプロジェクトだから成立している。
ライブラリとOSだけでも十分に狂気じみていると思った頃に、ブラウザとJavaScriptエンジンまで載せると発表し、その次はJITコンパイラ、さらにC++もRustも完全には気に入らないということで独自の新言語Jaktまで作った。
専門性以上に尊敬できるのは、その謙虚さと親切さだ。Linusなどと違って自己顕示欲が強くなく、動画のたびに誰が何をしたか1人ずつ名前を挙げて功績をたたえる。オープンソースの素晴らしいロールモデルだ
今でも印象的ではあるが、ブラウザ開発の文脈では完全な新人ではない
日常的に使えるブラウザになってほしい。新しいWebエンジンは素晴らしいし、Servoも成功してほしい。
貢献を検討するかもしれないが、開発の調整が Discord で行われていて、私はプロプライエタリソフトウェアを避けている…。 [1]
残念ではあるが、趣味でやっていることなので責めることはできない。
[1] https://drewdevault.com/2022/03/29/free-software-free-infras...
彼は、オープンソースソフトウェアを Twitter、Hacker News、LinkedIn、GitHub のようなチャネルで宣伝する作者たちを「露骨に利己的で非倫理的」だとしている。
こうした教条主義はしんどいし、ただクールなものを作って世界と共有したい人たち、さらには FOSS でお金を稼ぎたい人たちに対して敵対的な自由・オープンソースの定義を押し付けているように感じる。
それほど強い意見を持っていながら、自分のプログラミング言語 Hare を宣伝するために「Can I be on your podcast」[1] のような記事を投稿しているのは驚きだ。
Spotify や Apple Podcasts のようなプラットフォームで配信されていないポッドキャストだけを探したわけでもなく、実際に複数の出演を通じて Hare を宣伝している。
これは偽善のように感じる。
[1]: https://drewdevault.com/2023/11/09/Can-I-be-on-your-podcast....
FAQ のこの部分が気に入った。
「なぜわざわざやるのですか? 何十億ドルもの資金と何百人もの従業員がいなければ、新しいブラウザエンジンなんて作れないでしょう。」
「作れます。ブラウザを作ったこともない腕組みした敗北主義者たちの言うことは聞かないでください。」
ブラウザエンジン開発でまだ競争が生きているのを見るのはうれしい。Mozilla の一部だった Servo もある: https://servo.org/
ただし Servo も Ladybird も、日常利用のブラウザと比べればまだかなり未熟だ。
Ladybird を試せるナイトリービルドがないのはかなり残念だが、おそらくバグ報告を望んでいないからだろう。まだ何もかも動かない状態なら、無作為なバグが積み上がっても意味がない。
もちろん去年のある時点の話で、今はもっと遅いかもしれないが、それでも 9 時間かかる Chromium ビルドとは大違いだ。
メンテナーの立場ではそのほうが楽になり、プロジェクトが成熟すれば変わる可能性が高い。
この進捗スクリーンショット群は本当に良い: https://serenityos.org/happy/1st/
プログラミングに関しては、まさに何でもできる開発者のように見える。
思考実験として、新しい種類のWebのための新しい種類のブラウザがあるとしたらどうだろうか? CSSの多くは古くなっている。
それなら、特に CSS Grid や Flex を中心にした「モダン」版を作れば、無駄なく同じ機能を提供できるのではないかと思う。
聖杯3段レイアウトのような古い話のことだ。
それに canvas、threejs、react-three-fiber、react-drei についても考えさせられる。特にモバイルでは、canvas のほうがより良いユーザー体験を提供できるのではないか?
モバイルゲームを HTML と CSS で書く人がいるだろうか? 不可能という意味ではないが、canvas の代わりに HTML と CSS を本当に必要としているWebサイトがどれほどあるのか気になる。
ブラウザ競争の大きな障壁は、古くて時代遅れの技術を実装しなければならない点だ。最小限の HTML と canvas だけではだめだろうか?
あまり参考にはならないと思う。
Web API の表面積はカンブリア爆発のように増え、モダンなものが古いものを圧倒している。古かったりあまり使われないメカニズムのサポートを削っても、思ったほどコードや複雑さは減らない。
単純な表面積を超えて、競争力のある水準の「制限付きコアプロファイル」を実装するには、特に性能まで考慮した完全なゼロからの開発では、要求されるエンジニアリング水準が非常に高い。
ロングテール効果も強く、ほとんどのモダンなWebサイトでさえあちこちで古い要素に依存しているため、そうした仮想的なブラウザでまともに動くページはほとんどないかもしれない。
つまり、依然として非常に大きく難しいプロジェクトだということだ。もちろん FOSS コミュニティが大きく難しいプロジェクトをかなり多く成し遂げてきたのも事実なので、不可能という意味ではない
接続されたアプリであれそうでないアプリであれ、アプリを作りたいなら、すでにインターネットとOSがある。ブラウザと格闘してインターフェースをさらに悪くする必要もない。
特にゲームやその他の奥行きのあるソフトウェアでは重要だ。
Web 本来の核心は、ハイパーリンクでつながった文書の集合であり、ときどきマルチメディアがあり、少しのフォームとスクリプトで対話性を加えるものだ。
今の状況がどれほど不自然かを見るには、Google の代わりに Adobe が巨大化し、PDF 内の JavaScript がアプリを作るために乱用されている並行宇宙を想像してみればいい
border-box も 2000年代の苦痛の大半を解決してくれる。良いアイデアのようには思えるが、何を削れるのかは分からない。
表も実際の表形式データには依然として最適だ
関連する進行中のスレッドと過去の投稿
Interview with Andreas Kling of Serenity OS (2022) - https://news.ycombinator.com/item?id=39286638 - 2024年2月、コメント134件
Ladybird browser update (July 2023) [video] - https://news.ycombinator.com/item?id=36939402 - 2023年7月、コメント1件
Chat with Andreas Kling about Ladybird and developing a browser engine - https://news.ycombinator.com/item?id=36620450 - 2023年7月、コメント65件
Shopify Sponsored Ladybird Browser - https://news.ycombinator.com/item?id=36502583 - 2023年6月、コメント1件
I have received a $100k sponsorship for Ladybird browser - https://news.ycombinator.com/item?id=36377805 - 2023年6月、コメント166件
Early stages of Google Docs support in the Ladybird browser - https://news.ycombinator.com/item?id=33511831 - 2022年11月、コメント84件
Github.com on Ladybird, new browser with JavaScript/CSS/SVG engines from scratch - https://news.ycombinator.com/item?id=33273785 - 2022年10月、コメント1件
Ladybird: A new cross-platform browser project - https://news.ycombinator.com/item?id=32809126 - 2022年9月、コメント473件
Ladybird: A truly new Web Browser comes to Linux - https://news.ycombinator.com/item?id=32014061 - 2022年7月、コメント8件
Ladybird Web Browser - https://news.ycombinator.com/item?id=31987506 - 2022年7月、コメント2件
Ladybird Web Browser – SerenityOS LibWeb Engine on Linux - https://news.ycombinator.com/item?id=31976579 - 2022年7月、コメント2件
Mozillaがプライバシー保護サービスを再販している一方で、ほかの人たちはより良いブラウザを作っている
60億ドルも必要ない
Andreas KlingとSerenityOSプロジェクトは良いが、彼がTwitterにしかいないのは嫌だ
Mastodonは彼の読者層にちょうど合っているように見える
Twitterも以前はもっとそうだったが、Elonが買収してから最も怒っていた人たちがMastodonに移った感じがする
Mastodonではその雰囲気が非常に目立ち、避けにくいと思う