見方によっては、Vivaldi ブラウザのソースコードをオープンソースライセンスの下でリリースするのは、とても簡単なことのように思えるかもしれません。
Vivaldi は無料で提供されており、検索やパートナーとの提携で収益を得ています。そう考えると、Vivaldi の開発に役立つ可能性があるのに、なぜソースコードにアクセスできるようにしないのか?という疑問がわきますよね。
Vivaldi としては、そのような観点があることも理解していますし、Vivaldi 社内でもオープンソースやオープンソースのソフトウェアの使用を支持する人が多くいるのは事実です。この点は社内でもよく議論されています。
しかし、よくあることですが、実際に掘り下げていくと、考えているより複雑だということがわかってきます。
実はご想像よりも、オープンソースなんです
Vivaldi とオープンソースについての論議を念頭において、まずは、Vivaldi ブラウザがどのように構築されているかを見てみましょう。
ざっくり言うと、Vivaldi は以下の 3 つのレイヤーから成り立っています。
- ブラウザの基盤となる Chromium
- 広告ブロッカーやメモのようなユニークな機能をサポートする C++ バックエンドコード
- デスクトップ版の UI は HTML + CSS + JS を使用、Android 版の UI は Java で実装(そのほとんどは Chromium に含まれる BSD ライセンスの Java UI から派生したもの)
Chromium 自体にはオープンソースライセンスがあり、UI レイヤーや機能をサポートするために加えたすべての変更は公開されています。また、C++ 機能バックエンドコードについても、Chromium の変更の一部として、すべて公開されています。
Vivaldi ブラウザのオープンソースコードのコピーは、vivaldi.com から入手可能です。変更に関しては、オープンソースの BSD ライセンスに従って公開されています。詳細に関しては、パッケージ内の README ファイルと LICENSE ファイルをご確認ください。
Vivaldi にはサードパーティのコードも含まれています。それらのライセンスは、ソースパッケージ、あるいはインストールしたブラウザで「vivaldi://credits」にアクセスして確認することができます。
まとめると、上の 3 つのレイヤーのうち、UI レイヤーのみがクローズドソースです。ブラウザのコードの約 92% が Chromium からのオープンソース、3% が Vivaldi のオープンソース、残りの 5% のコードが UI のクローズドソースです。
Vivaldi を「Vivaldi」にしているもの
Vivaldi ブラウザはオープンソースライセンスの下でリリースされてもよさそうなのに、なぜ、しないのか?
それは、ブラウザにとって最もコアな部分、実際にブラウザをユニークなものにしている Vivaldi の UI を保護するためです。コードはVivaldi にとって、最も貴重な資産です。
Vivaldi はオープンソースライセンスで公開することはせずに、難読化されたバージョンのみを公開しています。難読化である理由はパフォーマンスを改善するためですが、同時に、防衛の最前線の役割も担っています。これがなければ、第三者がコードを使って同じようなブラウザ(基本的にはフォーク(複製))を構築できてしまうからです。
でも、そもそも、なぜフォークを恐れる必要があるのか?
オープンソースの観点から言うと、フォークには良い面があります。他の人のプロジェクトをフォークして、それを基に新しくて優れたものを作り、作ったものに対してのクレジットを受け取る。提供元のプロジェクトもクレジットを受け取り、場合によっては、追加されたものを取り入れたり・・・というような、「ウィンウィンの関係」が成り立ちます。
しかし、私たちは、Vivaldi は単なるコードではなく、保護すべき商標を持つブランドだと考えています。つまり、フォークは異なる製品としてブランド化すべきだということです。
派生した新しい製品は、テクニカルな作業を大して行うこともなく一定のステータスに達し、簡単に競合相手となってしまう可能性もあります。
そこに昔からある、聞き慣れた名前が付いていたらなおさら、人々はそれがフォークされたものだということに気づかないかもしれません。Vivaldi はまだ規模も小さく、存在感も薄いので、ブランドも脆弱になりやすいのです。そして、収益だけでなく、倫理的なアイデンティティなどの要因も関わってきます。
私たちのコードに基づいて派生した新しいプロジェクトに、根本的に Vivaldi の倫理に反する機能(例えば、プライバシー、人権、環境などに悪影響を与えるもの)が搭載される可能性があります。たとえ Vivaldi がそのプロジェクトに関わっていなくても、人々の Vivaldi に対する認識(そして、Vivaldi の自身に対する見方)に大きな影響を与え、私たちが苦労して築いた評判を害する可能性があるのです。
Vivaldi の UI レイヤーをクローズドソース、そして難読化すれば、このような懸念を払拭し、目の前にある作業に専念することができます。完璧な解決法とは言えませんが、ビジネスとして、不確定要素を最小限に抑えるように決定しなくてはなりません。それが単に、従業員、そして、従業員によって所有されている会社としての誇りのためだとしてもです。
オープンソースのプロセスは代償が大きい
Vivaldi ブラウザがオープンソースライセンスを採用しない理由には、もっと現実的なものもあります。オープンソースにすれば、Vivaldi を支持する多くの優秀な人々が貢献してくれるのではないかという期待もなくはありません。しかし、私たちのチームの規模を考慮すると、良い解決法とは言えません。オープンソースのプロセスでは、パッチ(修正)を提出したコミッタ―(ソースコードに変更を行った人)とやり取りする必要が生じるからです。
このプロセスには時間がかかるだけでなく、リソースも限られているため、投資する時間を超えるメリットがそこにあるとは言えません。今のところ、カスタマイズ可能な優れたブラウザの構築に力を注いだ方が、より生産的であると感じています。
安全性を保つためには?
Vivaldi ブラウザのセキュリティ関連のコードのほとんどは Chromium にありますが、UI にも一部含まれています。もし、UI の特定のセキュリティ関連の部分をオープンソースにすれば、Vivaldi の信頼性を向上できるというようなご意見がありましたら、お知らせください。その場合、ユーザー自身で確認できるようにコードのバンドルの一部として公開することを検討したいと思います。
もし Vivaldi が無くなったら?
こう心配されるのはもっともだと思います。Vivaldi で働く多くのスタッフは、Opera Software が Presto ベースから Chromium ベースのブラウザに切り替えた際に受けたストレスをいまだに抱えています。私も個人的に、Presto ベースの Opera の開発と修正に多くの時間を費やしました。もしオープンソースであったなら、今でも存続していたのかもしれませんし、開発に費やした労力が無駄になることも無かったかもしれません。
過去の苦い経験は、Vivaldi をオープンソースにする十分な理由になり得るのでは? と思われるでしょう。 現時点では、Vivaldi のほとんど誰もが、この点について同感しています。一方、Vivaldi は成長しつつあり、私たちは将来について前向きにとらえています。なので、取り組むべき課題ではありますが、差し迫ったものというわけでもありません。
後戻りはできない
さて、最も難しい問題に入りましょう。
オープンソースを試してみた後に、上手くいかないからと言って後戻りすることはできません。オープンソースライセンスの下でリリースされたコードは永久にオープンのままなのです。唯一の回避方法は、リリースしたコードを廃止することですが、これにはかなりの時間がかかります。ビジネスの観点から言うと、「確信が持てないのなら、やめておく」というケースです。オープンソースライセンスは素晴らしいものであると同時に、残念な、そして、避けられない側面もあるのです。
Vivaldi を改造してみる
もしオープンソースの議論にはあまり興味が無く、単にコードを編集して Vivaldi ブラウザを自分好みにカスタマイズしたい(かつ、スキルがある)のであれば、デスクトップ版で行うことは可能です。
圧縮された JavaScript コードを直接編集することで、難読化されたコードを理解して、個人用に改造できます。変更の適用に完全なコンパイル手順を必要とする他のブラウザと比べ、Vivaldi では簡単に行えます。
厳格に言うと、ライセンスではこの方法を許可していませんが、Vivaldi では歓迎しており、ユーザーにはフォーラムでコードの変更箇所を共有するように呼びかけています。
要するに、Vivaldi はオープンソースになる可能性はあるの?
賛否両論はありますが、私たちは現在の提供方法に満足しています。その大部分がオープンソースで、一部限られた部分は非公開であるものの、コードの変更が可能な無料のソフトウェアです。
今のところ、Vivaldi のイメージとブランド・アイデンティティの保護が重要だと考える限り、この立場を変えることはありません。しかし、協力しあって働くそれぞれの立場の主張もあり、議論は今後も続くことでしょう。
以下のコメント欄から、皆さんのご意見をお寄せください。
原文 – Why isn’t Vivaldi browser open-source?
訳 – Mayumi Ozawa
Team Vivaldi
Twitter | Facebook | Instagram | note