MTDDC Meetup TOKYO 2016に参加してきました #mtddc

MTDDC Meetup TOKYO 2016 に参加してきました。

2つ目のセッションから参加しました。 基調講演を本当は聞きたかったのですが、当日参加だと朝10時が厳しかったです。。

同時に3レーンある中で選んだものは以下の通りです。並べてみると多いですね...。

  • ロフトワークが実践する「CMSを導入したい人とCMSを導入する人とのギャップの埋め方」の秘訣!
  • Movable Type営業会議〜経営・営業・ディレクター・エンジニア視点で考える勝てるプレゼン、デモ、見積もり、開発の考え方〜
  • 作るツールから支えるツールへ 〜Movable Typeと外部システムの連携事例〜
  • MovableType.net で、「つながり」をもっと簡単に
  • WordPressとDrupalの頭痛がするほどすごいところ 〜 海外CMSと国産CMSの顕著な違いについて 〜
  • MT7を先取り!? DataAPI と Riot.js で作るユーザフレンドリーなダッシュボード
  • 大規模メディアサイトで使う Movable Type
  • webアプリケーションの可能性を広げる超高速プラグイン開発

タイムテーブル \| MTDDC Meetup TOKYO 2016

沢山の種類が聞けるのは楽しかったですが、 「後もう少し聴きたい!」と思うことが何度もあったので、 個人的にはもう少しコマ数は少なくても良いかなとは思いました。

毎年参加しているので少しずつ得るものが減ってきていることは やはり感じています。ただ少しではありますが、新しい気づきはありますし、 ここでしか会えない人も多いので参加してよかったなと思っています。

以下、セッションごとの感想です。 聞きながらメモることが上手くできず、後から思い出しながら書いているので 一部正確性に欠けるかもしれません。その点、ご了承ください。

ロフトワークが実践する「CMSを導入したい人とCMSを導入する人とのギャップの埋め方」の秘訣!

サイトリニューアルの際には導入されるサイトだけではなく、実際に使う人、会社の中の その人の位置づけなども考慮しないといけない、というお話でした。

社内で実際に使う人のリテラシーに考慮をしたり、何に不満があるのかを聞いて、 それに対して提案することが大事だということは分かるのですが、なかなか自分は出来ていません。

自分の場合、CMSの提案を求められた場合、自分が一番パフォーマンスを発揮できる CMSであるMovable Type(PowerCMS)を提案するようにしています。 他に提案できるCMSが無いことは弱点だと理解しつつも、このCMSに提案しておけば ある程度の要件は吸収できるという自負があるのもあります。

また、CMSをどれにするかはクライアントについてよく知る間もない、 例えばRFPを開示されただけで提案しないといけないシーンも多いです。

事前にしっかりとヒアリングをしてからCMS選定をする方が 運用の方は幸せになれると思うので、どうすればそういうフローに 持ち込めるのか模索したいところです。

他には話のなかであった、以下のようなことは心に止めておきたいです。

  • どんなサイトにしたいのか、解決したい課題は何なのか、それによってCMSは変わる
  • 外部ソリューションが豊富なため、なんでもCMSに盛り込まないことも検討する

Movable Type営業会議〜経営・営業・ディレクター・エンジニア視点で考える勝てるプレゼン、デモ、見積もり、開発の考え方〜

前回のCMSイベント「CMSプロレス」で優勝したときに感じたことや、プレゼンをする時のノウハウなどのお話でした。

  • 誰のためのプレゼンなのかを考える
  • 相手によってアピールするところを変える ex) 情シス: 多機能歓迎 広報: ワークフロー重視 現場: 入力のしやすさ重視
  • プレゼンできる時間はどれぐらいあるのか
  • CMSプロレスの時は周りが多機能だと事前に分かっていたため、あえて単機能で攻めた
  • その代わりに単機能な部分はしっかり作り込みを行った

作るツールから支えるツールへ 〜Movable Typeと外部システムの連携事例〜

ジャクスタポジションさんのSKELETON CARTとインセンブルさんの業務システムとの 連動事例の紹介についてのお話でした。

  • ECサイトは競争が激しく、売れにくくなってきている
  • オウンドメディアと合わせてファンをつくることで商品を売れる環境をつくる
  • Movable TypeにEC機能をつけることで同一サイト(ドメイン)内で完結することが強み
  • DATA APIを使うと業務システムと接続するという選択肢が出てくる
  • 接続自体は行えるが速度的な面で問題は残る

MovableType.net で、「つながり」をもっと簡単に

movabletype.net の概要と機能紹介のお話でした。

サービスとしては開始当初から知っていたものの、ここ最近の進化が目覚ましく、 尚且つパッケージ版と比較して管理画面のUIのインターフェイスが洗練されているので、 是非一度、案件で使ってみたいと思いました。

あまりに良くて、デモを見ながら何度も「これパッケージ版には欲しい!」とつぶやいていました。 今のこの感動は MT7 でマージされると信じています。(プレッシャー)

  • サーバ、CMSすべて込みで実質月額2100円〜(年額払いの場合)
  • 全ページ動的処理(パッケージ版のような静的生成はない)
  • メンテナンスフリー − MovableType.net 活用ブログ https://movabletype.net/blog/
  • 差し替え予約機能[NEW]
  • 記事、ウェブページの履歴比較機能[NEW]
  • 共有プレビュー機能(公開前に公開状態を確認できる)[NEW]
  • スマートフォンからの投稿機能
  • メール投稿機能
  • 複数人でサイト管理(ユーザの権限管理)
  • Github連動
  • テンプレートの履歴差分機能
  • ファイルマネージャ

WordPressとDrupalの頭痛がするほどすごいところ 〜 海外CMSと国産CMSの顕著な違いについて 〜

国内外のCMSのシェアの話と実際に受注している案件ベースの話、WordPress、Drupal共にプラグインや テーマが豊富であり、それをベースとして提案→設計することで1から作るよりも楽にサイトを作成できる、というお話でした。

以前は国内産のCMSの受けがよかったが、最近は特に海外産だから、という理由で敬遠されることは無いようで、 国内でも海外産CMSの導入が着実に進んでいるそうです。

WP All ImportやLingotekのデモを見せていただきましたが、多機能で使いやすく、これがプラグインで 一発で実装できるのか...と思うと「いいなぁ」と思う反面、自分の力量の範囲で実装方法が思いつかないものは いざって時にリカバリーが効かないので「こわい」とも感じていて悩みどころです。

  • Wappalyzer(有料・CMSの導入サイトが見える)
  • DrupalにはエンタープライズCMSと戦えるだけのパワーがある
  • Drupalはディストリビューションをベースに作ると良い
  • Lingotek x WordPressで記事、ページの多言語化
  • WP All Import プラグイン(ドラッグ&ドロップでCSV/XMLなどからインポート) − Drupalの構築ではあまりHTMLを書かない(先人のHTMLを信じてCSSでガンバる)

MT7を先取り!? DataAPI と Riot.js で作るユーザフレンドリーなダッシュボード

MTAppjQueryの話とRiot.jsで作成したクライアント専用の管理画面についてのお話でした。 今回のセッションの中で一番面白かったです。

  • MTAppjQueryは非常にカンタンに管理画面のカスタマイズが行える
  • MT管理画面のHTML構造に依存するため、メジャーバージョンアップに弱い
  • あくまでもベースはMT管理画面であるためカスタマイズには限界がある(パフォーマンスなど)
  • オリジナル管理画面は作り方によってはセキュリティ上のリスクはある
  • MT管理画面に依存しないため、完全に自由な管理画面を作成できる。
  • オリジナル管理画面は Riot.js、jQuery、bootstrap 4、MT DATA API JavaScript SDKで作成している
  • 管理画面はいきなりすべてを作る必要はなく、とりあえず運用者の手に触れる記事投稿、カテゴリ編集などから作るほうが良い

コンポーネントにMTの変数(blog_idやlimitなど)を指定することで そのコンポーネントを置くだけでHTML、CSS、JavaScriptすべてが適用された管理画面の1パーツが 使えるようになるというのは非常に魅力的だなと思いました。 こんなにRiot.jsのコンポーネントがMTの管理画面にハマるものかと目からウロコが落ちました。

オリジナル管理画面は1から作るとコスト的には割に合わないかもしれませんが、 色々な人が作ったコンポーネントを共有しつつ、欲しいものは自分で Riot.jsとbootstrap 4で作ることでオリジナル管理画面の作成コストは下がるのでは?と夢を見ています。

MTAppjQueryがMT管理画面をカスタマイズする方法としてスタンダードになったように、 これもまたスタンダードになる可能性を秘めているかもしれません。

ちょうどRiot.jsには興味があり前々から触っていたので、 自分も一つコンポーネントを作ってみようと思います。

大規模メディアサイトで使う Movable Type

実際の事例を元に大規模メディアサイトをMTで作る場合にどのような設計をし、 プラグインの開発を行えば長期に渡り運用が続けられるサイトになるか、というお話でした。

MTはデータベースのデータが増えていくとスピードがどんどん落ちていくため、 その解決策として、JSONを活用することでブログを切り捨てれる設計にする、 ブログを消してもアーカイブを生成できる仕組みを考えつくのが流石だと思いました。

ブログ自体のデータをJSON化して、さらにそれを上位ウェブサイトで束ねる、といった ことは試したことがないので一度試してみたいです。

カスタムフィールドの内容をまとめてJSON化することは自分もよくやりますが、 現状は良くても将来的なデータ移行性とのトレードオフのような気もしていて、 どこまで使って良いものなのだろう、と日々作りながら思っています。

webアプリケーションの可能性を広げる超高速プラグイン開発

Movable Typeの拡張の方法についてのプラグインを作るためのプラグイン、 MT STUDIOのお話でした。

  • MTにはコールバック、DOM操作、テンプレートタグ、テーブル拡張など様々な拡張ポイントが存在する − MT STUDIOを使えば実際に管理画面でデバッグしながらプラグインの開発が行える
  • PowerCMSの次世代版で記事編集時にテンプレートを選択してプレビューできるようになる
  • ダッシュボードを作り込む際はそこに戻れるリンクを共通パーツのどこかに設けると便利
  • CMSプロレスではMT STUDIOを活用しプラグインの開発を行ったため、短期間でカスタマイズができた
  • [思いつきメモ] Translateモディファイアをつけるだけで翻訳テーブルと対比してくれるのであれば、 色々と応用がききそう?
  • [思いつきメモ] Translateプラグインはあくまで静的に翻訳結果を出力しているが、翻訳テーブルだけをファイルに 出力しておけば、ダイナミックを使わずに表示時に出し分けが出来るのではないか?