CloudflareのシステムエンジニアであるAshley Williams氏は、WebAssembly Summitで、WebAssemblyが成功するために必要なことについて理解を深めた。
Williams氏は彼女の動機を次のように述べた:
この話は価値観についての話です。自分たちがどこに向かっているのかを深く考えてほしい。(…) 私は人々が使うものを作ることに動機づけられています。(…) 私は力を与えるテクノロジーに取り組むのが好きです。
Williams氏は、自分が行ったTwitterのアンケート調査の結果についてコメントし、WebAssemblyを選択する理由について質問した。WebAssemblyが多くの言語のコンパイルターゲットであるという事実が最初に来て、WebAssemblyによって促進されるサイズと速度の利点が次に来て、残りの2つの選択肢とは大きな差があった。多言語のコンパイルターゲットを支持する過半数を絞り込んで、その後の調査で2つの主要な動機が特定された。一方の開発者は、JavaScriptが彼らのニーズを満たしていないことに言及した。もう一方の開発者は、他の言語で書かれた既存のライブラリを再利用するためにWebAssemblyによって提供される可能性に魅了された。
Williams氏は、JavaScriptに対する一部の開発者の不満は、JavaScriptが満たそうと設計された元のユースケースを超えてしまったという事実に起因している可能性があると述べた。Webはどこにでもあり、アプリケーションにとって魅力的な配布プラットフォームになる。これにより、多数のユースケースとコンピューティングがWebにプッシュされる。
Williams氏が実施した3回目のTwitterのアンケート調査では、JavaScriptのパフォーマンスが一貫していないか不十分であることが、JavaScriptがニーズを満たしていないという調査を行った人々が最初に挙げた理由であり、2番目の理由としてJavaScriptを理解していない/好きではないことが明らかになった。ただし、Williams氏は、パフォーマンスは予想されるほど大きな問題ではなく、Webをより多くのソース言語に広げることが、人々がWasmを使用するより感情的な理由であるように思われると主張した。
Williams氏はさらに、HTML5仕様の設計原則を引用した:
競合が起こった場合、ユーザ、作成者、実装者、仕様書、理論上の純粋さという順番で考慮してください。
WebAssembly’s design goals, on the other hand, are stated as follows:
一方、WebAssemblyの設計目標は次のように述べられている:
高速、安全、かつポータブルなセマンティクス:
- 高速: […]
- 安全: […]
- 明確な定義: […]
- ハードウェア独立: […]
- 言語独立: […]
- プラットフォーム独立: […]
- オープン: […]
効率的でポータブルな表現:
- コンパクト: […]
- モジュール: […]
- 効率: […]
- ストリーミング化: […]
- 並列化: […]
- ポータブル: […]
Williams氏は、述べられた目標のいくつかが互いに対立する可能性があり、そのような対立が起こったときに何をすべきか、ビジョンの輪郭を明確にしたいと主張した:
優先順位付けは難しい […] が重要です。[…] たくさんの聴衆がいて、WebAssemblyの魅力的なユースケースがたくさんあり、それらについてのコミュニケーションと共有のビジョンが欠けています。
Williams氏は、多くの人がまだWebAssemblyを試したことがないという事実を振り返った。Williams氏は、WebAssemblyは依然としてやや脅迫的であり、ツールを重視して、言語を使用する人間工学に取り組む必要があると主張した。Williams氏は、FlashとExcelの成功を利用して、次のように結論付けた:
WebAssemblyは十分に使用できません。[…] 開発者の経験には大きなギャップがあります。そして私の最大の懸念は、私たちが現在それらに投資しているとは思わないということです。[…] 今こそ、WebAssemblyを私たちが作っている人々の手に渡らせるためのツールやプログラムに投資する必要がある時だと思います。私たちはたくさん学ぶと思います。
WebAssembly Summitは、2020年2月10日にシリコンバレーで開催された。WebAssembly Summitは、WebAssemblyに関するすべてのことに関する1日の単一トラック会議である。