MTDDC Meetup Tokyo 2015に参加してきました #mtddc

2015年11月28日(土)に東京品川で開催された、MTDDC Meetup Tokyo 2015に参加してきました。

MTDDC Meetup TOKYO 2015

このセミナーはCMS「Movable Type」のユーザグループの一つである「MT東京」が主催したものです。

セミナーは同時に4つの内容が開催されるマルチトラック式で、私はその中で以下の内容を選択しました。

  • 基調講演 Road of Next MT
  • MTでサイト運用保守をして7年目~今までにお客様からいただいたMTに関するあんな要望・こんな要望!私はこうして実装しました
  • クライアントの心を掴んで燃やさない!ロフトワーク流 WebディレクションとMT開発事例
  • The Next PowerCMS
  • これまでウチが構築してきたMT案件のこと、すべて晒します【モザイクあり】
  • リモートワークで加速する!Movable Type によるサイト構築
  • 2つの「Layout」プラグインでMovable Typeをパワーアップ
  • やはりお前らのMTMLは間違っている
  • CMS ON KUSANAGI

7割ぐらい終えた時点で、ドッと疲れたので長期戦だったんだろうなと思いながらもこうやって列挙すると内容盛り沢山だなと改めて感じます。

この中で印象に残ったセミナーをピックアップして感想・メモ書きを残したいと思います。

時間がかぶった関係で諦めたセッションもあるので、マルチトラックタイプのイベントは毎回悩みが尽きないです。

基調講演 Road of Next MT

何度も聞いたことのある基調講演のバージョンアップ版のため、「知ってる、知ってる」と聞いている部分もありましたが、昨今のセキュリティ事情などを踏まえたうえで、改めてMTのセキュリティに対する意識の高さとMTの魅力が分かりやすく纏まったセッションでした。

スライドの中のまとめがとてもわかりやすかったので、スライドが公開されたら自社のCMS説明資料の内容を比較してブラッシュアップがしたいです。

クライアントの心を掴んで燃やさない!ロフトワーク流 WebディレクションとMT開発事例

私が一昔前から大ファンのロフトワークさんのセッション。

ロフトワークさんと聞いて思い出すこと

ロフトワークさんと聞くと、名古屋のWCANで聞いた代表 林さんのセッションのことを思い出します。

普段は講師の方が壇上に居て、参加者はそれを聞くスタイルが一般的ですがその時は講師の方が会場全体を動きまわり、参加者にも意見を聞くという変わったスタイルでした。いつものWCANのセッションの空気とはかなり違った空気が流れていたのを覚えています。

社内にデザイナー・エンジニアを抱えずにディレクターだけで多くの案件を高品質に納品しているというところに興味と憧れの両方がある会社です。

自分はテクニカルディレクターですが今年のはじめまではエンジニアをしていたので、今でもまだ自分でコードを書く仕事は残したいと思っています。

そんな自分からすると社内に制作がいない状況でディレクターだけで案件を回すというのはどういうことなのか今ひとつイメージが出来ず、ディレクターの方々がどういう心持ちで仕事されているのかが気になっています。(...なんてことを聞けたらと思っていたものの、懇親会でご挨拶すら出来ずという体たらく...)

セッションの内容

セッションの内容はロフトワークさんの制作フローの全体が見える感じで、自社のやり方と比較していて面白く聞くことができました。

  • ロフトワークさんのドキュメントは各工程ごとにとにかくしっかり量を書いている
  • ドキュメントは(表紙だけかもしれませんが)しっかりデザインされていて貰う側も嬉しそう
  • PIMBOKを基本思想として全体の共通認識を強く持たせる教育が行き届いている
  • そのため、各々が自分自身で考えて動くことを意識して取り組んでいる − ディレクター以外が全部外部だとしても納品まで持っているコミュニケーション力、ハンドリング力がある

クリエイティブプロジェクトマネジメント |アイデア |株式会社ロフトワーク

The Next PowerCMS

アルファサード野田さんのセッション。1本目。 タイトルの通り、次世代のPowerCMSのお話でした。

覚えている範囲だとこのような話がありました。
もしかすると2本目のセッションと内容が混ざっているかもしれません。

  • Github連携、大規模向けデプロイ
  • デジタルマーケティング
  • テンプレートの逆ファイルリンク(モジュール側からどこで使われているかが分かる)
  • 改良版のリッチテキストエディタ&アイテム管理
  • テンプレート管理画面の各テンプレートごとにコメントを付与する

「そうそう!これよ!これが欲しかったのよ!」という機能が多くありました。 普段こういうものかと使っていると機能に対して慣れと諦めがある部分があって、今回のような話を聞くと管理画面内だけでもまだまだ改善の余地があるのだなと感じました。

大きな機能はPowerCMSに同梱、もしくはオプションになると思いますが、小さなものはGithub提供か、安価なオプションとして提供してもらえると嬉しいなと思います。

リモートワークで加速する!Movable Type によるサイト構築

bit partさんのセッション。

bit partさんは2人からはじまり、今は協力者含めて約5(+1人?)のチームで活動をされています。メンバーはそれぞれ北海道、東北、東京とバラバラに分かれていることもあって普段の制作業務はリモートワークで行っています。

気になったところ

  • 分業できるように仕事を分けているから円滑にリモートワークができる
  • MTGをするより誰にでも分かるドキュメント化をつくることに注力する
  • gitを使ったファイル管理を徹底している
  • 仕様書自体をGit管理して差分が分かるようにしている
  • コーディングフェーズではgulpを導入することで制作時のルーチンを自動化している
  • コーディングフェーズでは別のスタティックサイトジェネレータを使っている(METAL SMITH)
  • CMS実装フェーズではテンプレートの冒頭にコメントを入れるようにしている
  • 「カスタムフィールドID」「テンプレートの識別子」の資料化、接頭辞の統一をしている
  • FTPは使用せず、Githubからの自動デプロイでテストアップをすることでヒューマンエラーを抑制している

2つの「Layout」プラグインでMovable Typeをパワーアップ

藤本壱さんのセッション。 LayoutBlockプラグインとFreeLayoutCustomFieldプラグインの紹介が主でした。

LayoutBlockプラグインはページ全体の大枠を自由に作成できるプラグインです。 コンテンツではなく、ヘッダー、サイドバー、フッターといった大きなグリッドの 枠を管理画面から自由に設定できます。

LayoutBlockプラグインβ1(その1・概要とインストール) - The blog of H.Fujimoto

FreeLayoutCustomFieldプラグインは従来のカスタムフィールドが1つのフィールド あたり1つのデータしか保存できないという欠点を克服し、HTML+CSS+JSで好きな形の 入力欄を作ることができるプラグインです。

1つのカスタムフィールド内で入力欄はいくつでも複製することができ、1パターンの入力欄ではなく、見出し、テキスト、画像といったさまざまな入力欄を選択式で追加 できるユニットにも対応しています。

FreeLayoutCustomFieldプラグイン正式版 - The blog of H.Fujimoto

最近自前でもユニット機能を持ったjQueryプラグイン(MTAppjQuery依存)を作成しているため、FreeLayoutCustomFieldの発表を見ながら、「よく出来てる...ここの部分は実装難しそうだけどどうしているんだろう、この機能を自分もつけようかな?」といった変わった視点で発表を聞いていました。

実装的には圧倒的に藤本さんの方が素晴らしいものの、我が子が一番かわいいところが制作者としてはあり、藤本さんのプラグインに乗り換える決心がつくまで、横目で見ながら自分でも作り続けるのだと思います。

やはりお前らのMTMLは間違っている

アルファサード野田さんのセッション、本日2回目。

この時間までに発表した人を含め、全国のMTMLユーザが正座しながら聞いたセッションだったと思います。

セッションの内容としては、要望に対しての実装方法を考え、その書き方はMTMLで頑張りすぎていないか、プラグイン開発したほうが楽なんじゃないのか、を考えるというものでした。

MTML(MovableType Markup Language)、俗にMTタグと呼ばれるものはテンプレートエンジンでありながら変数、配列、ハッシュ、IF、Forといったロジカルな要素も多く含んでおり、かなり色々な処理が頑張れば書けてしまいます。

その反面、「MTMLでがんばりすぎたテンプレート」は瞬間的に制作者に達成感を与えるものの、保守性が極端に低く、作った本人以外のメンテナンスが難しい、更新性が低い、などといった問題が発生しやすい問題があります。

Perl書けない勢としては、「複雑になるならプラグイン書いた方が早い」をすぐに実行に移すのは難しいと思いつつ、config.yamlだけで書ける軽微なプラグインからトライしつつ「複雑になりそうならプラグインを書けそうな人に相談をしてみる」もあわせて実践してみようと思います。

参加してみて

朝の11時から18時までセッションがあり、その後に2時間の懇親会があるという充実した内容でとても楽しい1日でした。

私個人としてはMTDDCをはじめ、MT関係のイベントには良く参加しているので1年に1度の同窓会、もしくは文化祭に参加しているような気持ちでいます。名古屋在住ということもあり、普段会うことのできない北海道、東京、福岡など遠方の方に会える貴重な機会です。また、次年度も参加しようと思います。

一方でこのセミナーを機会にMTに触れてみようとする方が何割ぐらいいるのか、そういう人にとって役立つ内容だったのか、受け入れ体制はできていたのか、という部分で若干不安が残ります。

MT好きな私としては少しでも多くの新しい人にMTを触ってみて欲しいと思っています。そのためにできる試みを自分なりに少し考えてみたいと思います。