WordCamp Tokyo 2017 の一日目「セッションデイ」に参加したので、感想をレビュー。
Gutenberg が切り開くWordPressの新UX
キーワード
* WP5.xでの新エディタとして採用される見込み
* WEBページを見たまま編集できるライブ・エディッタ
所感
近い将来にWordPressのエディッタが Gutenberg に変更されるという流れらしい。そうなると現行のTinyMCEは廃止になるのだろうか。Gutenbergは確かにWEBページの編集の直感性という一点においては、他のエディッタの追随を許さないだろうと思う。
今まで、WordPress案件を数多くこなしてきたが、たいていのクライアントにはTinyMCEは不評だったのは確かだ。あれだけシンプルで使いやすいのに、だ。まぁ、TinyMCEに限らずWYSYWIG自体に抵抗を持つWeb担は多いのかもしれない。そういうニーズを受けて、最終的に行き着いたのが、Gtenbergのようなライブ・エディッタだ。
かつてオープンソースのCMSとして「Concreat5」が登場した時、ライブ・エディッタという見たままにページを編集できる体験に驚愕したものだったが、ようやくWordPressがそこに追いついて来たというイメージである。
ただ、私のようにMarkdown記法に慣れ、ブログの記事もMarkdownで書いているようなデベロッパーの人間にとっては、どんなにリッチなエディッタが採用されようとあまり有益には感じないのも確かで、逆にGutenberg環境下でのMarkdown対応がどうなるのかが気になった。
安全なプラグインに必要なこと ~脆弱性届出状況に見る傾向と対策~
キーワード
* http://jvn.jp/ にて脆弱性を公表している
* 解析ツール(RIPS, PHPSCAN, WPSCAN, PHP-code-scaner等)
* WPプラグインのブラックリスト(GoDaddy、WPengine)
所感
プラグインを公開している私としては、「脆弱性」のキーワードには感度が高いので、聴講必須のセッションだった。結果として、かなりノウハウ得られたので、非常に収穫の多いセッションだった。
幸いなことに私のプラグインでは今のところ脆弱性は出ていないが、直接データベースを制御するというプラグインの性質上、近いうちに解析ツールにはかけておかないとイカンな…と思った。
GitHub、BehatやContinuous Integrationを含めてPull RequestのWordPressの開発ワークフロー
キーワード
* wp-cfmプラグイン
* 自動テスト(behat) : 機能を追加するたびにテストも追加する
* BDDテスト → 簡単な英語でテストを作れる(画面遷移とユーザ操作をシミュレーションできる)
* インテグレーションサービス: circleci
* 一人での開発ではあまり恩恵が感じられないが、複数人での同時開発時には有益なツールとなる
所感
自作のプラグイン開発に取り入れようとして、中途半端に止まっている自動テストのワークフローが参考になった。やりたいけど、テスト書くのがおっくうでやれてない…。このワークフローは理想だけど、なかなか実現するのは難しい課題でもある。
開発プロジェクトの最初からテスト駆動型の開発を行わないと、自動テストを取り入れるにあたってテスト可能な粒度で関数やクラスをリファクタリングしなければならなくなるという、一時期の苦悩が再び思い出されたセッションでもあった。
常時SSL化の慈善確認・注意点・手順 ~WordPressとその周辺で必要なこと~
キーワード
* SafariではURL欄に鍵が付くかどうかで判断
* セキュアにならない場合、たいていプロトコルの mixed contents が原因が多い
* 最近はプロトコル未指定の “//~” は推奨されていない
* WordPressでのURLの書き換えはWP-CLIでの一括置換が簡単
所感
数年前にGoogleがHTTPSサイトの評価度を上げると公表した際に、私のサイト自身は早々にフルHTTPSへ移行したのだが、その時に苦労した外部URL連携周りのプロトコル差異の問題を思い出した。
本体のサイトがHTTPSに変更しても、広告連携しているアフィリエイトサイトがHTTPSに対応していない時など、最悪広告が表示されなくなるというケースが発生する。404エラーが多発するようなサイトは検索エンジンの評価が下がるので、アフィリエイトサイト等を運営している場合、リスクの方が大きいわけだ。当時は、各種JavaScriptのライブラリをキャッシュしているCDNサービスなどもHTTPSに対応しておらず、ソースを直接自サイト側へ持ってくるというような対応を色々やっていたのだ。
今であれば、HTTPSに対応していないSaaSやCDNはほとんどなくなってきたので、そういう苦労もなくフルHTTPSへ移行しやすくなっているのだろう。
WordPressのプラグインを作るメリットは? プラグイン公開後の楽しみ方、広め方、仕事への繋げ方
キーワード
* Raddit で広める
* 反応を調べる エゴサーチ
所感
スピーカーの中島氏のプラグインとの付き合い方は、私の考えているものと非常に近しくて共感できるセッションだった。
私もプラグインを作って公開している者として、ぶっちゃけ、アクティブ数が3000超えている「CDBT」でも寄付されるというケースは少ない。WordPressのプラグインでマネタイズを考えるには、有償版的な導線を公式リポジトリとは別軸で考える必要があるのだ。
それでも、プラグインを作って公開するのは楽しい。色んな人の反応を直に受けられる…というのが一番だろう。しばしば、散々に罵られるようなコメントをもらって、ヘコむこともあるが、最近はもうそういうのにも慣れてしまった。というのも、世界のユーザーは思っている以上に優しい。バグがあっても継続的に利用したいためにバグ報告してくれるし、更新が滞っても見捨てずに改善を期待してくれる人が多いのだ。今まで会社とかでシステム開発していても、こういう人の善意によって支えられているものを作っているんだ…というモチベーションに出会えることは稀である。
だから、これからも私はプラグインを作っていくだろう。そろそろ「CDBT」のバグトラッキングもしなきゃな…。
WordPressプロジェクトのこれから
キーワード
* WordPress / ServeHappy Project
* wp checksum plugin を開発中
* HelpHub WordPressの次世代ドキュメントサイト
* 自動アップデートはOFFにするな!
所感
WordCamp Tokyo 2015のコントリビューターデイでコアへのチケットの送り方を教えてもらってから、何度かチケットやパッチを送っているが、いまだに採用に至ったことはない私としては、コアコントリビューターの人たちはまさに憧れである。そんな憧れの一人である宮内氏のセッションは私的に聴講必須だった。
今年2月のWordPressの脆弱性騒動の裏側のお話はとても面白かった。そして、改めて感じたのが、オープンソース・コミュニティの底力というか、WordPressがいかに有志の人々で支えられているのかということだ。
そして、WordPressの自動アップデートをOFFにしていた自分に反省。
組み合わせで簡単! WP REST APIとGitHubメディアでつくる、よりよいメディア運営のワークフロー
キーワード
* textlint 文章を校閲してくれるツール
所感
おそらく今回のWordCamp Tokyo 2017での最大の成果は「textlint」を知り得たことかもしれない(私的に)。
私はJavaScriptのデベロッパーでもあるので、当然jslintやeslintを使ってJavaScriptの書式バリデーションを行っているが、まさか自然文テキスト用のlintまであったとは…!
──というのが、率直な感想だ。今独自開発しているSaaSのサービスに形態素解析エンジンと一緒に取り入れて、自動校閲という機能を実現させたいものだ。
【基調講演】wp_next_step – WordPressの次のステップ
キーワード
* $wp = apply_filter( "wp_next_step", $wp, $you );
所感
まさにキーワードのフィルター定義文に集約されている内容の楽しいセッションだった。
私もWEBサイトというのはこれから十中八九衰退していくと思うが、絶対にコンテンツはなくならないだろう。つまり、コンテンツの表現手段が時とともに「紙」→「WEBサイト」→「スマートフォンアプリ」と推移して来ているわけだ。
でも、コンテンツ表現の未来形はまだ見えない。そのうちTVなどのディスプレイも淘汰されて、SF映画によくあるような、空間にコンテンツを直接投影するようなデバイスが登場するかもしれない。それでも、そんな時代でもコンテンツを登録し管理するオープンなツールとしてWordPressは利用され続けるのではないか…と。
そんな、夢のあるセッションだった。
総括
フリーランスで一人でデベロップしていると、家族以外の人にほとんど会わないし、外的刺激が少ない生活になってくる。そんな中でも世界の人々に繋がれるのがWordPressであり、オープンソース・デベロップの良いところでもある。まぁ、バグ報告ばっかりして来ないで、プルリク送って来てよ!──と、たまに精神衛生に悪い時もあるが…。
そんなやや孤独なデベロッパーな私にとっては、同じWordPressというプラットフォームに関わっている人たちに会えて、話を聞けるWordCampはとても有意義であった。どのセッションも面白かったし、とても満足できた一日だった。