投稿されたすべてのトピック

Web アニメーションツール、ネットワークセキュリティの調査、フォントインスペクタの改良など – Firefox 開発ツール エピソード 37

原文: Web Animation tools, Network Security insights, Font Inspector improvements and more – Firefox Developer Tools Episode 37 on January 20, 2015 by Jordan Santell

ひと握りのバグ修正、改良、そしてもちろん新機能も、Firefox 37 に投入しました。Firefox Developer Edition または Nightly ビルドを更新して、これらをお試しください!

アニメーションインスペクタパネル

急速に力を増している新たな API である Web Animations API は、開発者がプロプライエタリのプラグインではなく Web 技術を使用して、複雑なアニメーションを構成することを可能にします。Firefox の開発ツールではアニメーション向けの基盤を備え始めており、まずは再生/一時停止のコントロールとタイムラインスクラバーをリリースしました。アニメーションを持つ要素をインスペクタで選択すると、ルールフォントなどのパネルと並んでアニメーションパネルを利用できます。アニメーションインスペクタの動作を示したビデオをご覧いただくか、Web アニメーションのデモでツールを使用してみてください。

これは Web アニメーションツールの最初のステップであり、私たちはどのようにしていくべきか、またどのようなツールを作るべきかの意見を聞くよう努めています! UserVoice で詳しいフィードバックを共有する、本記事へコメントを投稿する、あるいは @FirefoxDevTools 宛てにツイートを投稿してください。(意見の届け方について詳しくは、最後にご案内します。)

セキュリティパネル

もうひとつの新しいツールであるセキュリティパネルは、ネットワークモニタに収めています。ネットワークパネルで要求を選択すると、要求の詳細情報でセキュリティパネルを表示します。このパネルでは要求で使用した証明書だけでなく、コネクションやホストの情報も表示します。

セキュリティパネルは、POODLEBITE 問題によりサイトが動作しないといった SSL プロトコルバージョンに関する問題のデバッグの助け、あるいは十分に強いセキュリティ対策が実装されていることを保証する助けになります。

本リリースでは、ほかにも新機能や小さな改良点があります:

  • フォントインスペクタで “このページのすべてのフォントを表示” ボタンをクリックすると、(iframe 内のフォントを含む) すべてのフォントを表示するようになりました。(Bug 1097150)
  • アドオンが独自の actor を登録できるようになりました。(Bug 1107888)
  • インスペクタのパフォーマンスを向上させるため、サイドバーの読み込みや更新を遅延させるようになりました。(Bug 1103993)
  • ボックスモデルをハイライト表示する際の色を更新して、よりアクセシブルになっただけでなく、さまざまな背景で見やすくなりました。(Bug 989053)
  • Firefox のデバッグサーバを特定のポートで開始するための、Firefox の新たな CLI オプション –start-debugging-server を追加しました。(Bug 1119894)
  • ツールボックスの縦方向の領域を広げるため、タブバーの高さを削減しました。(Bug 1109288)

前述のとおり、あなたのフィードバックが私たちの優先順位に結びつきます。本記事へのコメント投稿または Twitter で @FirefoxDevTools 宛てに連絡するか、開発ツールのフィードバック手段を使用して変更点を提案してください。開発ツールを支援したい場合は、参加するためのガイドをご覧ください。

Firefox 37 サイト互換性情報

Firefox 36 Beta と Firefox 37 Developer Edition (Aurora) がリリースされました。それぞれのサイト互換性情報を投稿していますので、Web 開発者の皆さんは一読されることをお勧めします。もし一覧に漏れや間違いがあるときは、下のコメント欄でお知らせください。

Firefox 36 アドオン互換性情報

[これは Mozilla Add-ons Blog の記事 Add-on Compatibility for Firefox 36 の翻訳です]

Firefox 36 が 2 月 24 日 [日本時間同日深夜] リリース となります。Firefox 36 の変更点でアドオンの互換性に影響を及ぼす可能性のあるものを以下にまとめました。Firefox 36 for Developers により詳しい情報が載っていますので、こちらも併せてご覧ください。

一般

XPCOM

ラッパー

クローム JS オブジェクトがコンテンツ JS オブジェクトとやりとりする場合に必ず適用される 様々なラッパー があります。これらは、悪意のある、あるいは不適切な動作をするコンテンツコードから特権付きコードを保護するために提供されています。以下のバグの中で、クロームコードとコンテンツコードの予期せぬ問題につながりかねないラッパーの一部機能が削除されました。ただ、Firefox のマルチプロセス化が迫っている ことを頭に入れておくべきで、つまりいずれにしてもコードに変更を加える必要が出てきます (一部のラッパーは引き続き関わってきますが、まれなはずです)。

この一覧に載っていない変更点や間違いを見つけたらコメント欄でお知らせください。もしあなたのアドオンが Firefox 36 で動かなくなった場合は、筆者の方でも調査したいと思います。

AMO に登録されているアドオンの 自動互換性テストと対応バージョンの更新 は 1、2 週間以内に行われますので、AMO に Firefox 35 対応のアドオンを登録している方は後日メールをチェックしてみてください。

Firefox 36 サイト互換性情報

Firefox 35 Beta と Firefox 36 Developer Edition (Aurora) が 12 月 4 日と 5 日にリリースされました。それぞれのサイト互換性情報を投稿していますので、Web 開発者の皆さんは一読されることをお勧めします。もし一覧に漏れや間違いがあるときは、下のコメント欄でお知らせください。

サイト互換性情報は通常 Developer Edition リリースと同時に投稿していますが、今回は遅くなって申し訳ありません。

擬似要素、Promise の調査、生ヘッダなど – Firefox Developer Edition 36 の開発ツール

原文: Pseudo elements, promise inspection, raw headers, and much more – Firefox Developer Edition 36 on December 16, 2014 by Brian Grinstead

Firefox 36 が Developer Edition チャンネルに移行しましたので、本リリースにおける開発ツールの特に重要な変更点を見ていきましょう。最初の Developer Edition の発表 (翻訳) より少し前に Firefox 35 をリリースしましたので、Firefox 35 から変更された箇所もいくつか扱います。お伝えすることはたくさんありますので、さっそく始めましょう。

インスペクタ

::before および ::after 擬似要素の調査が可能になりました。マークアップツリーやインスペクタのサイドバーで、他の要素と同様に動作します。(35、開発記録)

マークアップツリーで、コンテキストメニューに“DOM プロパティを表示”という項目を追加しました。(35、開発記録本機能に関する MDN の文書)

ボックスモデルのハイライト表示が、リモートで動作するようになりました。Android 版 Firefox で表示したページや Firefox OS のアプリでも、フル機能のハイライト表示を使用できます。(36、開発記録、独自のハイライト表示を作成するための技術文書)

マークアップツリーで Shadow DOM のコンテンツを表示するようになりました。この機能を試すには dom.webcomponents.enabled を true に設定しなければなりませんので注意してください (36、開発記録、現在進めている作業については bug 1053898 を確認してください)。

Firebug の役立つ機能を取り入れて、マークアップツリーでノードを右クリックするとさまざまな貼り付け方法を利用できるようになりました。(36、開発記録本機能に関する MDN の文書)

Firefox 35 および 36 の、インスペクタに関する他の変更点は以下のとおりです:

  • ノードを削除したときに、親要素ではなく前の兄弟要素を選択するようになりました (36、開発記録)
  • マークアップビューで、マウスを載せているノードの色のコントラストを高めました (36、開発記録)
  • 計算済みビューで CSS セレクタにマウスポインタを載せると、ページ内でセレクタにマッチするすべてのノードをハイライト表示します。(35、開発記録)

デバッガ / コンソール

DOM Promise の調査が可能になりました。Promise の状態や値を、いつでも調査できます。(36、開発記録)

デバッガが評価されたソースを認識して、そのソースで作業できるようになりました。(36、開発記録)

評価されたソースでは //# sourceURL=path.js 構文をサポートします。これは Error.prototype.stack で報告されるスタックトレースおよびデバッガで、通常のファイルとして表示します。詳しくはこちらの記事をご覧ください: http://fitzgeraldnick.com/weblog/59/。(36、開発記録 1、開発記録 2)

コンソールでは、メッセージの発生元の列番号も表示するようになりました。(36、開発記録)

WebIDE

WebIDE から Android 版 Firefox に接続できるようになりました。MDN で、Android 版 Firefox のデバッグの文書をご覧ください(36、開発記録)。

WebIDE のユーザエクスペリエンスを向上するために変更した箇所があります:

  • ランタイムアプリやタブを選択したときに、デフォルトで開発ツールを表示するようになりました (35、開発記録)
  • 最後に選択していたプロジェクトがランタイムアプリであった場合は、接続時にそのプロジェクトを再び選択するようになりました (35、開発記録)
  • 可能であれば、最後に使用していたランタイムを自動的に選択して接続するようになりました (35、開発記録)
  • フォントサイズの変更機能 (36、開発記録)
  • manifest.webapp のフルパスに代わり、ベース URL (例: “http://example.com”) を入力することでホスト型アプリのプロジェクトを追加できるようになりました (35、開発記録)

ネットワークモニタ

要求の生ヘッダの表示やコピーを容易にするため、要求ヘッダ/応答ヘッダをそのまま表示するビューを追加しました。(35、開発記録)

Firefox 35 で解決したバグの一覧はこちら、また Firefox 36 で解決したバグの一覧はこちらです。

フィードバック、バグ報告、機能の要望、あるいは質問がありますか? いつもどおり、ここでコメントを投稿する、UserVoice でアイデアを投稿・投票する、あるいは Twitter の @FirefoxDevTools でチームに連絡してください。

低価格スマートフォン – メモリ管理と Firefox OS での最適化

[これは Mozilla Hacks Blog の記事 Low price smartphones – memory management and optimization on Firefox OS の翻訳です]

メモリリークのデバッグやメモリリソースの破壊を防ぐためにフットプリントをメモリに作成する方法が知られています。今回、メモリ管理とメモリリソースの限られている Firefox OS での最適化について紹介します。

Firefox OS ではどのようにしてメモリを確保しているか?

Firefox OS で十分なメモリが無いときにメモリを確保するための 3 種類のイベントが存在します。

  1. Low memory killer (LMK)
  2. Memory pressure event
  3. Out of memory (OOM)

Low memory killer (LMK)

LMK は Android でプロセスを終了させる事でメモリリソースを確保するためのポリシーです。 Firefox OS にこの機能を統合しました。 キャッシュサイズ、もしくは入手可能なメモリが閾値よりも少なくなった場合、システムはメモリーを確保するために LMK をトリガーして oom_adj が0よりも大きいプロセスを終了させます。

閾値は b2g/app/b2g.js に定義してあります。以下の表の例を説明すると、

  • キャッシュサイズと入手可能なメモリが両方とも 20MB 以下の場合、oom_adj が 10(BACKGROUND) のプロセスが LMK によって終了されます。
  • キャッシュサイズと入手可能なメモリが両方とも 8MB 以下の場合、 oom_adj が 8(BACKGROUND_HOMESCREEN) のプロセスが LMK によって終了されます。
  • キャッシュサイズと入手可能なメモリが両方とも 4MB 以下の場合、oom_adj が 0(MASTER) のプロセスが LMK によって終了されます。

ところで、 LMK はプロセスを1つずつ終了します。だから b2g は LMK によってプロセスが終了された後にメモリリークが発生する事があります。

// The kernel can only accept 6 (OomScoreAdjust, KillUnderKB) pairs. But it is
// okay, kernel will still kill processes with larger OomScoreAdjust first even
// its OomScoreAdjust don't have a corresponding KillUnderKB.

pref("hal.processPriorityManager.gonk.MASTER.OomScoreAdjust", 0);
pref("hal.processPriorityManager.gonk.MASTER.KillUnderKB", 4096);
pref("hal.processPriorityManager.gonk.MASTER.Nice", 0);

pref("hal.processPriorityManager.gonk.PREALLOC.OomScoreAdjust", 67);
pref("hal.processPriorityManager.gonk.PREALLOC.Nice", 18);

pref("hal.processPriorityManager.gonk.FOREGROUND_HIGH.OomScoreAdjust", 67);
pref("hal.processPriorityManager.gonk.FOREGROUND_HIGH.KillUnderKB", 5120);
pref("hal.processPriorityManager.gonk.FOREGROUND_HIGH.Nice", 0);

pref("hal.processPriorityManager.gonk.FOREGROUND.OomScoreAdjust", 134);
pref("hal.processPriorityManager.gonk.FOREGROUND.KillUnderKB", 6144);
pref("hal.processPriorityManager.gonk.FOREGROUND.Nice", 1);

pref("hal.processPriorityManager.gonk.FOREGROUND_KEYBOARD.OomScoreAdjust", 200);
pref("hal.processPriorityManager.gonk.FOREGROUND_KEYBOARD.Nice", 1);

pref("hal.processPriorityManager.gonk.BACKGROUND_PERCEIVABLE.OomScoreAdjust", 400);
pref("hal.processPriorityManager.gonk.BACKGROUND_PERCEIVABLE.KillUnderKB", 7168);
pref("hal.processPriorityManager.gonk.BACKGROUND_PERCEIVABLE.Nice", 7);

pref("hal.processPriorityManager.gonk.BACKGROUND_HOMESCREEN.OomScoreAdjust", 534);
pref("hal.processPriorityManager.gonk.BACKGROUND_HOMESCREEN.KillUnderKB", 8192);
pref("hal.processPriorityManager.gonk.BACKGROUND_HOMESCREEN.Nice", 18);

pref("hal.processPriorityManager.gonk.BACKGROUND.OomScoreAdjust", 667);
pref("hal.processPriorityManager.gonk.BACKGROUND.KillUnderKB", 20480);
pref("hal.processPriorityManager.gonk.BACKGROUND.Nice", 18);

Memory pressure event

Memory pressure event がトリガーされたとき、Memory pressure event 監視として登録されているサービスはキャッシュ(b2g の一時データ)を最小化したり対比させるなどの共通のアクションが実行されます。Memory pressure event の閾値は b2g/app/b2g.js で設定され、初期値(notifyLowMemUnderKB)は 14MB となっています。

// Fire a memory pressure event when the system has less than Xmb of memory
// remaining.  You should probably set this just above Y.KillUnderKB for
// the highest priority class Y that you want to make an effort to keep alive.
// (For example, we want BACKGROUND_PERCEIVABLE to stay alive.)  If you set
// this too high, then we'll send out a memory pressure event every Z seconds
// (see below), even while we have processes that we would happily kill in
// order to free up memory.
pref("hal.processPriorityManager.gonk.notifyLowMemUnderKB", 14336);

Out of memory (OOM)

Linux カーネルは OOM ポリシーを提供しています。 入手可能なメモリが定義した閾値よりも少ない場合、 OOM はメモリ使用量と oom_score_adj をもとに計算したスコアを通して終了するプロセスを選択します。操作すべてはシステムが十分なメモリリソースを獲得するためのものです。OOM がトリガーされる閾値の初期値(min_free_kbytes)は1352KB です。

3つのメモリーポリシーが Firefox OS 上で、どのように円滑に動作し、すばらしいパフォーマンスをだすか?

まずいくつかの問題となりうる事を紹介しましょう。もし3つのポリシーが競合したら何がおこるでしょうか?

  • Problem 1. もし LMK の閾値が望んでいたものより低い場合システムの動作は遅くなるでしょう。少ない閾値の場合、システムはメモリが不足している時にメモリを獲得するために、いかなるプロセスを終了する事はありません。そして、kswapd とCPU リソースの大量消費によりパフォーマンスは低下するでしょう。もし閾値が望んでいるものより多い場合、ユーザーは都合悪く感じるでしょう。なぜならアプリケーションは簡単に終了されるからです。
  • Problem 2. もしMemory pressure event の閾値が大きい場合、退避または最小かされたキャッシュのアクティビティは活発になるでしょう。メモリが足りている場合は関連するアクティビティは CPU リソースを浪費してパフォーマンスが低下するでしょう。もし閾値が小さい場合、システムは常にメモリーを解放する事が出来なくなります。
  • Problem 3. OOM が LMK よりも早くトリガーされた場合、クラッシュや fatal エラーが発生するでしょう。もしOOM が最初にトリガーされた場合、 B2G やシステムアプリケーションがバックグラウンド/フォアグランドアプリケーションよりも先に終了される事になります。メモリが不足している場合、システムは b2g やシステムアプリケーションよりも先にバックグラウンド/フォアグランドアプリケーションを終了させるべきです。

この問題について、我々は対応するために以下のパラメータを設定しています。

  1. 体感パフォーマンスをよくするために、我々はメモり獲得のためにバックグラウンドアプリを終了させる事を許可し、フォアグランドアプリケーション操作を円滑にしています。そのために、ホームスクリーンやバックグラウンドアプリを終了しやすいように、BACKGROUND_SCREEN.KillUnderKB と BACKGROUND.KillUnderKB の値を増やしています。
  2. 認知できるバックグラウンドアプリケーションを終了させる前に Memory pressure event を発火させています。これは、BACKGROUND_HOMESCREEN.KillUnderKB と BACKGROUND_PERCEIVABLE.KillUnderKB の間に notifyLowMemUnderKB の値を設定するのがよいためです。
  3. Problem 3 をの LMK は OOM より先に動作させる事を解決するために、min_free_kbytes はMASTER.KillUnderKB よりも低く設定しています。

Tarako (sc6821, 128MB メモリー端末) を例にとってみましょう。adb shell b2g-info によってダンプしたメモリ設定は以下の通りです。

Low-memory killer parameters:

  notify_trigger 14336 KB

  oom_adj min_free
        0  4096 KB
        1  5120 KB
        2  6144 KB
        6  7168 KB
        8 16384 KB
       10 18432 KB

メモリ調整のヒント

Firefox OS は b2g/app/b2g.js のパラメータで望んだ設定変更を検証するための効率的な方法が提供されています。
開発者は端末の /system/b2g/defaults/pref/dev-pref.js を変更された変更設定を追加する事が出来ます。このファイルのパラメータは b2g/app/b2g.js の初期値を上書きします。

低価格スマートフォンのメモリ最適化の簡素なやり方はあります。我々は bugzilla で詳細なテクニックを議論しています。ぜひ Firefox OS 開発に参加して、世界をふるわせてください。

Firefox 35 アドオン互換性情報

[これは Mozilla Add-ons Blog の記事 Add-on Compatibility for Firefox 35 の翻訳です]

Firefox 35 が 1 月 13 日 [日本時間同日深夜] リリース となります。Firefox 35 の変更点でアドオンの互換性に影響を及ぼす可能性のあるものを以下にまとめました。Firefox 35 for Developers により詳しい情報が載っていますので、こちらも併せてご覧ください。

一般

新機能

この一覧に載っていない変更点や間違いを見つけたらコメント欄でお知らせください。もしあなたのアドオンが Firefox 35 で動かなくなった場合は、筆者の方でも調査したいと思います。

AMO に登録されているアドオンの 自動互換性テストと対応バージョンの更新 はまもなく行われますので、AMO に Firefox 34 対応のアドオンを登録している方は後日メールをチェックしてみてください。

新しい検索 UI が Firefox 34 に反映されます

[これは Mozilla Add-ons Blog の記事 New search UI coming in Firefox 34 の翻訳です]

更新: この変更は当初一部のユーザしか目にしないようですので、何か変更を加える場合は後方互換性に留意してください。

検索 UI が刷新され、(少なくとも米国地域のみで) Firefox 34 に反映されます。この変更は、ごく最近発表された特定地域での既定検索プロバイダ切り替えに関連していたため、Firefox 34 ベータサイクルの後半で投入されることになりました。

残念ながら、これは一部のアドオンやテーマに影響するようです。アドオンで検索 UI 内のコンテンツにオーバーレイしたり、その挙動を変更したりしている場合、最新のベータ版 でテストすることを強く推奨します (この変更は今のところ米国向け英語版のみに含まれているようです)。この問題に関する互換性の更新を用意して審査に出したら、IRC チャンネル (#amo-editors) か amo-editors メーリングリストでお知らせください。

これによってあなたのアドオンが影響を受けた場合はコメント欄でお知らせください。

Firefox 34 アドオン互換性情報

[これは Mozilla Add-ons Blog の記事 Add-on Compatibility for Firefox 34 の翻訳です]

Firefox 34 が 11 月 25 日 [日本時間同日深夜] リリース となります。Firefox 34 の変更点でアドオンの互換性に影響を及ぼす可能性のあるものを以下にまとめました。Firefox 34 for Developers により詳しい情報が載っていますので、こちらも併せてご覧ください。

一般

XPCOM

新機能

この一覧に載っていない変更点や間違いを見つけたらコメント欄でお知らせください。もしあなたのアドオンが Firefox 34 で動かなくなった場合は、筆者の方でも調査したいと思います。

AMO に登録されているアドオンの 自動互換性テストと対応バージョンの更新 はまもなく行われますので、AMO に Firefox 33 対応のアドオンを登録している方は後日メールをチェックしてみてください。

Web プラットフォームへの 10年間の Firefox と革新

原文: 10 Years of Firefox and Innovation for the Web Platform

今日、私たちは、Firefox 誕生10周年を祝い、誕生プレゼントとして、開発者に試していただく、わくわくするようなたくさんの新しい技術をご用意しました。

これまでの10年間、Mozilla はただ単に Firefox を開発してきたのではなく、私たちは Firefox や他のブラウザを通じて今日利用者が体験する Web の多くを作るお手伝いをしてまいりました。

Mozilla プロジェクトはマイクロソフトからの Web への制御に対して立ち向かうために立ち上げられました。以前はマイクロソフト社の Internet Explorer 6 がブラウザの 98% を占め、マイクロソフト社が Web の革新をほぼ完全に制御していました。Mozilla は、Web のような私たちの生活に重要でかつ中心的なエコシステムが一社によって不均等に制御される事がなぜ問題なのかという主張を単に発信(telling)してきませんでした。
その代わりに、私たちは、より良く、よりパワフルな Web やブラウザ、いわゆる Firefox を作るために努力してまいりました。Firefox が Web に導いた競争や革新は、過去10年の間、 Web の開示性やブラウザの展望を劇的に変えました。

今日、マイクロソフト社の様に、1社のブラウザベンダーが市場を占める会社はありません。ユーザの皆さんはマイクロソフト社、グーグル社、アップル社またはもちろん Mozilla から、ブラウザを選ぶ事ができます。このブラウザ界の競合は、10 年にわたる私たちの使命に対する明確な成功の証です。

Mozilla では、消費者向けのブラウザを開発するだけではなく、Web そのものも開発しています。独占的なエコシステムを打開するために、Web はネイティブプラットフォームの機能やパフォーマンスに適合させるか、またはそれを越える必要があります。過去10年間、私たちは、多くの新しい Web 技術を開拓し、それらを標準化することに貢献してきました。ゲーム

ゲームは多くの面でエンターテイメントの重要な形成をしています。過去には、ブラウザゲームはプラグインに頼らざるを得ず、開発者が Web に幅広くコンテンツを提供することができませんでした。Mozilla は、現代のブラウザではおなじみの WebGL を含む、ゲームに夢中になれるプラットフォームとして Web を開錠する数多くの新しい技術を開拓してまいりました。さらに、私たちは、ゲームエンジン用にネイティブに近いパフォーマンスを可能にする新たな JavaScript の拡張 asm.js を開発いたしました。

パフォーマンスの改善

Mozilla の JavaScript エンジンが、ほぼ全ての分野における JavaScript のパフォーマンスで市場をリードし、ブラウザ上で最高クラスのゲーム体験を提供できている事をお伝えでき誇りに思います。私たちは、Firefox 自体から独立したプロセスでコンテンツを起動させることで、Firefox ユーザーの皆さんに更なるパフォーマンスや安全面での恩恵をご提供できるように、Nightly ビルドで E10s を使った実験をしています。最後に、パフォーマンス面において、日々の仕事に更なるパワーを必要とする方たちのために 64 ビット Windows ビルドをご紹介します。

オーディオとビデオの向上

Web上のオーディオやビデオにおいても Mozilla のサポートにより、飛躍的な前進を遂げています。私たちはオーディオやビデオ、またはデータチャンネル経由でのリアルタイムなコミュニケーションのための新しい WebAPI である WebRTC を先導して提唱する一グループです。私たちの長期にわたるパートナーである Telefonica と協力してソフトウェアのダウンロードやアカウント作成が不要な、リアルタイムでのコミュニケーションを可能にする WebRTC ベースのオーディオ、ビデオチャット機能である Firefox Hello を近日中に Firefox に追加します。

Web の構築

私たちのボランティアコミュニティは Firefox と Web の向上において大きな役割を果たし続けています。ブラジルのコミュニティのアンドレ・ナタルは Firefox と Firefox OS の音声認識機能に貢献しています。これにより、ユーザーのみなさんは自身の声により、デスクトップブラウザおよび Firefox OS 端末とやりとりできるようになります。この Web Speech API は、現在私たちのレンダリングエンジンである Gecko に追加されています。

もしあなたが Web 開発者で、上記に記した技術を是非試してみたいという事であれば、私たちは10周年を記念して特別な物をご用意しました。私たちが Web を開発する間、Web 上で可能なコンテンツや体験を開発するのは開発者の皆さんです。ボランティアの皆さんの努力と、また Web 開発者コミュニティへの私たちの継続的な関与の功労により、私たちは開発者の方がデフォルトで有効であってほしいと願う多くの機能が付いた Web 開発者の方向け専用の Firefox Developer Edition を公開いたします。この開発者エディションは開発ワークフローを合理化し、モバイルやデスクトップ等、様々なプラットフォームにおいて、Web 全体の開発プロセスを簡素化する新しい機能が加わりました。

将来待ち受けていること

Mozilla は 10 年前にマイクロソフト社によるプロプライエタリな支配から Web を自由にするための長旅を始め、今日、私たちはその目的を大筋達成しました。Web を自由にするための次なる大きな課題の局面は、新たに発生した iOS と Android が複占するモバイルです。10年前、私たちが Firefox でマイクロソフト社に挑戦したように、私たちは Web 向けに開発され、また 1 社による規制がなされない新しいスマートフォン OS、Firefox OS を作る事でグーグル社やアップル社のモバイル界の締め付けを取り払おうとしています。昨年最初にローンチしてから Firefox OS 端末は直近でローンチしたインドを含め現在世界中 24 ヶ国に広がっています。もしあなたが Firefox OS 開発者端末をお使いであれば、今日公開する新しい Firefox OS 2.0 の開発者向けビルドをお試しください。

私たちは、ServoRust を通じて Web の根本的な技術を向上させています。Servo は、並行処理を高度サポートし、安全性と信頼性を改善した次世代 Web の新しいレンダリングエンジンです。私たちが開発し、コミュニティの強力な支持をより広げている、新しいシステムプログラム言語 Rust のおかげで、私たちはこれを達成する事が出来ました。Servo 並びに Rust の構成要素は、近い将来 Gecko に入ってくる事になるでしょう。

将来の展望として、私たちは、Web における次なる開拓である仮想現実(バーチャル・リアリティ)を探し始めています。私たちは、Web 上で仮想現実の新たな可能性を開拓しており、技術デモのプラットフォームとして、またどのようにして仮想現実体験をWebに持ってくるかという事を学ぶための場所として mozvr.comを開始します。