オープンな優先順位付けによるクラウドファンディングWebプラットフォーム機能
公開: 2022-03-10前回の投稿では、いくつかの興味深いCSS機能について説明しました。そのうちのいくつかは1つのブラウザーでのみ使用できます。 ほとんどのWeb開発者は、もっと広く利用できるようにしたい、またはまったく利用できなかったと思う機能をいくつか持っています。 開発者には、ブラウザーで実装バグを使用し、話し合い、提起して、機能を実装しようとすることをお勧めしますが、もっと直接的な方法があったとしたらどうでしょうか。 Web開発者が集まり、これらの機能の開発に資金を提供できるとしたらどうでしょうか。
これは、オープンソースコンサルタント会社IgaliaがOpenPriorityization実験で立ち上げたモデルです。 基本的な考え方は、Webプラットフォーム機能のクラウドファンディングモデルです。 機能を実装したい場合は、その作業に資金を提供するために少額の資金を投入することができます。 目標が達成された場合、機能を実装できます。 この記事は、Igaliaの開発者アドボケイトであるBrianKardellへのインタビューに基づいています。
オープン優先順位付けとは何ですか?
オープンな優先順位付けの考え方は、コミュニティが機能開発の資金を選択して支援できるようになることです。 Igaliaは、ターゲット機能のリストを選択しました。これらはすべて、少なくとも1つのエンジンに実装されているか、現在実装されています。 したがって、機能に資金を提供することで、クロスブラウザーで利用できるようになり、開発者としてより使いやすくなります。 最初のリストは次のとおりです。
- Firefoxの
lab( )
の色 :focus-visible
- WebKit / Safariで
inert
HTML - Chromeの
:not( )
のセレクターリスト引数 - WebKit / SafariでのCSS封じ込めのサポート
- Firefoxでの
d
(SVGパス)のサポート
Webサイトには、各機能の詳細と、資金調達の仕組みに関するすべての詳細が記載されています。 Igaliaは、OpenCollectiveと協力して誓約を管理しています。
イガリアは誰ですか?
あなたはイガリアのことを聞いたことがないかもしれませんが、あなたは彼らの仕事から恩恵を受けているでしょう。 Igaliaはブラウザエンジンで動作し、すべてのエンジンに関する専門知識を持っています。 2019年にはChromeとWebKitのソースへのコミット数が2番目に多かった。CSSグリッドレイアウトが好きなら、ChromeとWebKitでの実装に感謝するIgaliaがいる。 これらのブラウザーに機能を追加する作業は、ブラウザー会社の社内で働くエンジニアではなく、Igaliaのチームによって行われました。
これが、このアイデアを非常に説得力のあるものにしている理由です。 それは、いくらかのお金を集めて、誰かに仕事をするように説得しようとする場合ではありません。 イガリアはその仕事をした実績があります。 開発者は支払いを受ける必要があるので、お金をクラウドソーシングすることで、次に取り組むものを選択することができます。 Igaliaは、提案された機能が成功する可能性を高めるために、エンジンとの関係もすでに持っています。
私たちがそれらに資金を提供した場合、ブラウザはこれらの機能を受け入れますか?
Igaliaはすでにブラウザエンジンチーム内で関係を持っており、選択した機能についてすでに彼らと話し合っているという事実は、資金があれば、ブラウザで機能を確認する必要があることを意味します。 そして、サードパーティによって資金提供され、Igaliaによって開発された主要な機能の前例がすでにあります。 ChromeとWebKitでのグリッドレイアウトの実装は、BloombergTechによって資金提供されました。 彼らはグリッドレイアウトの実装がないことに不満を感じていました。数年にわたってその機能を開発するための資金を提供したのはBloombergTechでした。
ChromeとWebKitは実装を喜んで受け入れました。 機能の追加については論争はありませんでした。 むしろ、それは優先順位の問題でした。 ブラウザには、より優先度が高いと見なされた他の作業があったため、財政的コミットメントと開発者の時間は他の場所に向けられました。 この最初のクラウドファンディングの試みのために選択された機能も、それらの実装に関して議論の余地はありません。 作業を行うことができれば、エンジンはそれを受け入れる可能性があります。 相互運用性(ブラウザー間で同じように機能するもの)は、すべてのブラウザーベンダーが気にかけていることです。 エンジンが遅れるメリットはありません。 基本的に、機能の内部優先順位付けプロセスをバイパスするだけです。
なぜブラウザはこのようなことをしないのですか?
私はブライアンに、なぜブラウザ会社がこれらのものに資金を提供しないのかを尋ねました。 彼が説明しました、
「人々は、たとえば、「アップルは世界にすべてのお金を持っている」と思うかもしれませんが、これは複雑な現実を無視しています。 Appleのビジネスは彼らのWebブラウザではありません。 実際、Webブラウザ自体は誰にとっても金儲けの努力ではありません。 ブラウザと標準は任意であり、コモンズです。 ただし、コスト面では、ブラウザはかなりのものです。 それらは、私たちのほとんどが認識しているよりもはるかに複雑です。 今日、レンダリングエンジンプロジェクトを進化させ維持するために必要な何年も何百万ドルも投資している組織は3つだけです。 それらのいずれかがすでにコモンズに大規模で比類のない投資を行っています。」
ブライアンはさらに、FirefoxがServoに、GoogleがLayoutNGにかなりの投資をしていることを指摘しました。これらのプロジェクトは、ブラウザーエクスペリエンスを改善し、プラットフォームの新機能の実装も可能にします。 どのブラウザでもエンジンに実装できるものはたくさんありますが、これらの機能を内部的に優先する方法は、開発者としてのニーズに必ずしも対応しているとは限りません。
ブラウザの実装に資金を提供することで、私たちが使用している他の製品と同じことをしていることに気づきました。 私たちの多くは、CMSで必要な機能のプラグインを開発するか、それを提供するためにサードパーティに支払いをします。 CMS開発者は、コア製品の開発に時間を費やし、堅牢で安全な最新の製品であることを確認します。 コア製品がなければ、プラグインを追加することは不可能です。 ただし、サードパーティはそのプラットフォームにパーツを提供できます。ある意味では、オープンな優先順位付けによって実行できます。 機能がラインを超えるためにいくらかの現金を約束するのに十分価値があることを示してください。
これは、私たちが望むWebなどのプロジェクトにどのように適合しますか?
SmashingConfは、Web We Wantプロジェクトをサポートしており、開発者はWebプラットフォームのアイデアを提案して、会議のステージで議論し、投票しました。 私はホストとして、そしてパネルでこれらのイベントのいくつかに参加しました。 オープンな優先順位付けがこれらの既存の取り組みにどのように適合するのか疑問に思いました。 ブライアンは、これらはまったく異なることを言っていると説明しました、
「...私の家をもっと良くするために何ができるかと聞かれたら、何百万もの名前を付けることができます。 それらのいくつかは、リモートでさえ実用的ではありません、それらは本当にきちんとしているでしょう。 しかし、それぞれの費用の予算でできることのリストを作成すると言った場合、私のリストはかなり実用的であり、私が知っている現実に縛られます。
月末に「あなたのリストがあり、ここに100ドルあるとしたら、それをどうしますか?」と言った場合。 それは私が何か実用的なことを成し遂げるのに役立つ非常に直接的な質問です。 多分私はペイントします。 たぶん私はいくつかの新しい照明を購入します。 または、もっと費用のかかるものに向けて、数か月間保存するかもしれません。」
Web We Wantプロジェクトは、オープンな質問をします。それは、プラットフォームに何が欲しいかを尋ねます。 欲求の多くは、仕様としてすでに存在するものではありません。 これらのいずれかを実際に実装し始めるということは、仕様の段階から正しく実行する必要があるという考えを持って、最初から開始することを意味します。 確実性はほとんどなく、価格を付けるのは非常に難しいでしょう。
この最初のオープン優先順位付け実験で選択された機能は、意図的に範囲が制限されています。 それらにはすでにいくつかの実装があります。 それらには仕様があり、Igaliaはすでにブラウザのメンテナに話しかけて、機能が動作する準備ができているが、当面の優先順位で機能しないことを確認しています。
このプロジェクトをサポートするということは、開発の具体的なチャンクをサポートすることを意味します。これは、かなり短い時間枠内で発生する可能性があります。 Web We Wantにアイデアを投稿したり、ブログにアイデアを書き込んだり、CSSWG GitHubリポジトリにまったく新しい機能を説明する問題を追加したりすると、新しいアイデアが議論に取り入れられる可能性があります。 しかし、それらのアイデアは現実になるまでに長い道のりがあるかもしれません。 そして、標準の議論の性質を考えると、おそらくあなたが想像した通りには起こらないでしょう。 これらを提案することは価値がありますが、最終的な実装までの時間とコストを見積もることは非常に困難です。
同じ問題がコンテナクエリの待望の機能にも当てはまります。IgaliaはFAQでコンテナクエリについて言及しています。 コンテナクエリは、標準プロセスに関係する多くの人々やブラウザベンダーが検討しているものですが、これらの議論は初期段階にあります。 この時点で金銭的価値を置くことは可能ではありません。
参加しましょう!
Open Prioritizationサイトには、他の質問に答える詳細なFAQとともに、より多くの情報があります。 私は常にデザイナーや開発者がWebプラットフォームに参加する方法を見つける手助けをしたいと思っているので、これに興奮しています。 それが私たちのプラットフォームです。 ブラウザベンダーによる使用が許可されるのを待つことも、アイデア、バグレポート、Open Prioritizationを使って少しの現金で積極的に貢献し、改善に役立てることもできます。