2011年に話した内容のスライド「イマドキなCMS案件のステークホルダー + 私の考えるCMS」の17ページ目くらいから 「私の考えるCMS」というテーマでこんなこと書いてました。

ViewなCMSはどう?

このスライドのSlideshare説明文には、

「CMSカフェ #1でのスライドです。 前半はCMS案件で生じる3つの視点について。 後半はWebの創始者 Time Berners-LeeのTED動画の内容(Linked Data)を踏まえて、ブラウザ向けのView指向な今のCMSをちょっと批判してます。 」

とまで書いてあります。

上記のことからもわかるかもしれませんが、僕はこの頃、Concrete5のようなブラウザへの表示に強みをみせるCMSに興味を持てなかった のです。 それよりもデータ構造だろと。そこしっかり押さえることができれば、見た目はJavaScript(いまだとAngularとか)やアプリとか何でもいけるだろうと、思ってたわけです。

でもこれはとても開発者寄りな考え方です。

データ指向な考え方でみると、データを扱うフォームを柔軟に提供してくれるカスタムフィールド型CMSはフィットするかもしれません。

でも、サイトにアクセスしてきたユーザーが見るのはその生データではなく、HTML/CSS/JSで表現されたウェブページなのです。 このウェブページをユーザーにわかりやすく見せることが重要なのです。

書いてみると至極アタリマエのことなんですがね。

いつの間にかCMSは僕も含め実装者・開発者視点が強くなっていたと思います。

サイトリニューアルのローンチ後にページの構成要素を変更するという概念がない場合、その構成要素であるコンポーネントも実装者視点のモノとなってしまい、実装がしやすいだけのinclude的要素に成り下がってしまいます。

しかし、アタリマエのことですが、運用者がサイトユーザーのために作るウェブページなのです。 実装者が運用者(発注者)のために作るウェブページじゃない のです。

どれだけbig dataが進歩して、どれだけ素早くRaw Dataを用意できても、そのデータをみるインターフェイスがユーザーにとって見つけやすく、把握しやすいもの、そして興味のあるものじゃないと意味がないのです。

そして、「見つけやすく、把握しやすいもの、そして興味のあるもの」というのはローンチ後のユーザー行動から理解できることが多いため、継続的に改善していくべきものだと思います。

そういうインターフェイスをつくるためには?

その一つの回答は、

実装者ではなく運用者が利用しやすいコンポーネントを用意し、サイトユーザーが求めるページを運用者がコンポーネントを構成して表現できること

なのではないでしょうか?

その方向でみると、Concrete5はとても有力な候補です。

ブロックとよばれるコンポーネントを作る際にも、運用者視点になるようアフォードされるでしょう。

ということで、2011年にあんなことをいってた僕は今、Concrete5のファンになっています。

一応、断っておくとデータ指向も重要です。その重要なものを扱う仕組みは外部システムでもいいかもしれないし、 あとConcrete5でもデータ・コンテンツ管理をやる仕組みがあります。菱川さんからきいた話によると、 データ・コンテンツ管理のみをやる仕組みにもConcrete5が使われたりしているくらいです。

だから、

もし、CMSを勉強しようという方がいたら、 オープンソースですぐ使えるConcrete5をやるのは、結構いい選択肢なんじゃないかなと思ったりしています。

そういう意味でもオススメです。

追伸: Concrete5 Japan Advent Calendar 2014 にも登録されています。 Concrete5使いな方の記事がいろいろ載っています!