Tide Projectは、コード品質に基づいてWordPressのテーマとプラグインを監査およびスコアリングすることを目的としています
公開: 2017-11-23先週、XWPは、WordPressプラグインとテーマエコシステム全体のコード品質を向上させることを目的としたTideと呼ばれる新しいプロジェクトの興味深いプレビューを公開しました。 同社は、Google、Automattic、およびWP Engineのサポートを受けて、ユーザーがより適切なプラグインの決定を行い、開発者がより適切なコードを作成できるようにする新しいサービスの作成に取り組んできました。
XWPのマーケティングマネージャーであるRobStinsonは、これまでのプロジェクトの方向性を要約しました。
Tideは、API、Audit Server、Sync Serverで構成されるサービスであり、WordPress.orgプラグインとテーマディレクトリに対して一連の自動テストを実行するために連携して動作します。 Tideプラグインを介して、これらのテストの結果は、プラグインまたはテーマの全体的なコード品質を表すWordPress管理者の集計スコアとして提供されます。 包括的なレポートが生成され、開発者がコードの品質を向上させる方法をよりよく理解できるようになります。
XWPの発表には、このデータがWordPressプラグインディレクトリにどのように表示されるかのスクリーンショットも含まれていました。

XWPは、ナッシュビルのWordCamp USでGoogleブースのサービスを発表し、コミュニティに参加を呼びかける予定です。 当然、プラグインエコシステムにこれほど大きな影響を与える可能性のあるプロジェクトでは、ビジョンの背後にいるのは誰か、どのような種類のメトリックが使用されるのかについて多くの疑問が生じます。
私は、プロジェクトの貢献者であるXWPのRobStinsonとLukeCarbisに連絡を取り、プロジェクトがどのように始まったのか、そして彼らがどこに行くのかについて内部を調べました。
「Tideは約12か月前にXWPで開始され、サービスチームの1つが、コードのパッケージ(WordPressプラグイン)に対して一連のコード品質テストを実行するツールのアイデアをまとめ、概念実証を行いました。 APIを介して結果を返しました」とStinson氏は述べています。 「私たちは、「潮の満ち引きがすべてのボートを持ち上げる」ということわざに触発されて、Tideという名前を思いついた直後に、このようなツールが十分な開発者にとって高品質のコードへの参入障壁を下げることができれば、品質を高めることができると考えました。 WordPressエコシステム全体にわたるコードの
スティンソン氏によると、XWPは、その可能性を確認し、パートナーとビジョンを共有し始めた後、過去数か月の間にTideへの取り組みを強化したとのことです。
「Google、Automattic、WP Engineはすべて、最近、プロジェクトのリソース(資金、インフラストラクチャ、開発者の時間、アドバイスなど)にも役立っています」とStinson氏は述べています。 「彼らのサポートは、私たちが勢いをつけるのに本当に役立ちました。 グーグルは8月頃からこれの大きな部分を占めてきました。 私たちは他のプロジェクトで彼らと協力してきましたが、Tideのビジョンを彼らと共有したとき、彼らはそれを気に入って、より優れたパフォーマンスのWebに対する彼らのビジョンとどのように一致しているかを見ました。」
Tideサービスは現在アクティブではありませんが、ベータ版がWordCamp USで起動され、WordPressプラグインがすぐに続きます。 Stinsonは、チームがTideの可能性を提示し、コミュニティからのフィードバックと貢献を奨励するために最初のバージョンを設計したと述べました。
「オープンソースであれば、Tideが最高になることを私たちは理解しています」と彼は言いました。 「それには多くの可動部分があり、コミュニティからの入力が多ければ多いほど、コード品質に関するコミュニティのニーズをより適切に表現し、解決できることを認識しています。」
プロジェクトのこの段階では、何も決まっていない。 Tideチームは、プラグイン監査データを利用できるようにするさまざまな方法の実験を続けており、Tideスコアを提供するときにそのデータの重み付け方法を改善しています。
「星の評価は、私たちが遊んでいるアイデアにすぎません」とスティンソン氏は述べています。 「その目的は、Tideによって作成された完全なレポートを、WordPressユーザーがプラグインやテーマについて決定するときに参照できるシンプルで理解しやすいメトリックに集約することです。 この指標がなく、どのように正しく表示されているかはわかっています。 すでにコミュニティから素晴らしいフィードバックがありました。」

このサービスは、スコアを出力するだけでなく、開発者がコードの弱点を簡単に特定して修正する方法を学ぶことができるように設計されています。
「優れたコードを書くための参入障壁を下げることが、このアイデアの元々のインスピレーションでした」とスティンソン氏は述べています。
コミュニティのフィードバックに基づいて監査スコアに使用されるメトリックを改善するためのTideプロジェクトチームの計画
TideプロジェクトのWebサイトwptide.orgは、WordCamp USで立ち上げられ、行番号や失敗したスニフの説明などの詳細を含むスコアを開発者に提供します。 プラグイン開発者はサイトを使用してコードを改善でき、WordPressユーザーはプラグインの品質をすばやく確認できます。 XWPのプロダクトマネージャーであるLukeCarbisは、Tideスコアが現在どのように計算されているかを説明しました。
「現在、Tideはプラグイン/テーマ全体で一連のコードスニフを実行し、結果を取得し、いくつかの重み付けを適用し(潜在的なセキュリティ問題はタブとスペースよりも重要です)、コードの行ごとに結果を平均します」とCarbis言った。 「これの出力は100点満点で、プラグインまたはテーマの品質を示す優れた指標です。 スコアを決定する「アルゴリズム」は、基本的に一連の重み付けにすぎません。」
サービスが現在使用している重み付けが出発点として選択されましたが、Carbisは、WordPressコミュニティがそれを改良するのに役立つことをチームが望んでいると述べました。
「それが理にかなっているなら、おそらくいつかこのスコアがWordPress管理者(新しいプラグインの追加ページ)に表示される可能性があります」とCarbis氏は述べています。 「あるいは、検索結果に影響を与える可能性があります(評価の高いプラグインが最初にランク付けされます)。 または多分それはただwptide.orgにとどまります。 それは本当にコミュニティ次第です。」
codeniffの実行に加えて、Tideサービスは他の2つのスキャンを実行します。 ウェブページの品質を改善するためのGoogleのオープンソースの自動化ツールを使用したLighthouseスキャンは、テーマに対して実行されます。これは、Carbisが「巨大な技術的成果」であると述べています。
「ディレクトリ内のすべてのテーマについて、WordPressの一時的なインストールを開始し、ヘッドレスChromeインスタンスでLighthouse監査を実行しています」とCarbis氏は述べています。 「これは、テーマを強化するコードだけでなく、テーマのフロントエンド出力品質の詳細なレポートを取得することを意味します。」
2回目のスキャンTideは、PHPの互換性の測定を実行し、プラグインとテーマの両方に適用されます。
「Tideは、プラグインまたはテーマが機能するPHPのバージョンを知ることができます」とCarbis氏は述べています。 「ユーザーにとって、これは、WordPressのインストールでは機能しないことがわかっている結果を非表示にする可能性があることを意味します(または少なくとも警告を表示します)。 ホストの場合、これは、インストールをPHP 7にアップグレードする前に、PHPの互換性を簡単に確認できることを意味します(これにより、さらに多くのインストールがアップグレードされると思います。正味の効果は、顕著な速度の向上であり、非常にエキサイティングでやる気を起こさせます)。 」
Carbis氏によると、チームは現在、PHP互換性の部分をWordPress.org APIに組み込むために短期的に取り組んでおり、WordPressコアを変更せずに検索結果に影響を与えることができると述べています。
「また、WordPressユーザーにコード品質スコアを表示することが役立つかどうかを確認するために、コミュニティとの交流を開始したいと思います。役立つ場合、それはどのようになりますか? (たとえば、100点満点、5つ星評価、A / B / C / Dなど)」とCarbis氏は述べています。 「WordCampUSの直後に、これがプラグインとしてどのように見えるかについての提案をリリースします。」
Tideが現在使用しているメトリックと、それがプラグインとテーマにどのように適用されるかについてのより具体的な情報は、サービスがベータ版で開始された後に利用できるようになります。 WordCamp USに参加していて、チームに提供するための提案やフィードバックがある場合は、必ずGoogleスポンサーシップブースに立ち寄ってください。
