今日はホント忙しい。
IVRCとか来年のLaval Virtualの準備とか、いろいろ将来に向けた仕事の話とか、いろんなことが一気に集まってきた。
せっかくFedoraCore6(旧Redhat Linuxのことね)をダウンロードして焼いたのに、ウニウニ3DなウィンドウシステムXGL(総称)も試す暇なし。
さて今日はほんのちょっとCMSの話。
2003年ぐらいからでしょうか、xoopsというコンテンツマネジメントシステム(CMS)を使ってます。
CMSっていうのは簡単に言うとmixiみたいなSNSの母みたいなサーバー側のソフトウェアで、複雑多岐にわたってしまいそうな静的/動的なWebコンテンツをモジュール化して扱うソフトウェアの総称です。製品だとサイボウズが近いですが、CMSというよりは基本はグループウェアですし、製品ですよね。
無料で使えるCMSは、たいていはPHPとMySQLなどのデータベースで構成されていて、オープンソースです。 部品化すると他のWebでも使えるのでオープンソース化・国際化がよく進んでいます。まあPHPで気の利いたサイトを開発すると、普通は機能を関数化/クラス化してモジュール化したくなりますから当然の流れといえば当然かもしれないです。
で、xoopsですが、私はLinux+ApacheやWindows+IISなどでガシガシ運用してきました。 モジュール開発とか日本語化とかもけっこう参加したりもしてました(最近は忙しいので公開までできてない、ソースが汚すぎ
て…)。
もとからxoopsは日本人が開発のコアにいて、日本語のリソースが沢山あったんですが、最近、本家から日本チームはフォーク(分岐)してしまったんですよねえ。 http://ja.wikipedia.org/wiki/XOOPS
まあフォーク自身もxoops cube自身も特に混乱は無いので問題は無いんですけど、沢山サイトを運用してきた自分的には以下のような問題を感じています。
・デザインに加えて機能が似てくる テーマファイルをバシバシ書き換えればいいのですが、みんな、そんな時間が無いからxoops使っているわけで、流行ってくるとどこもかしこもxoopsだけです。 vmware.jpがxoopsで動いてるのを発見したときは正直ドッキリした。 デザインが似てくるだけでなく、機能が似てくる、というのもCMSならではの新しい問題だと思います。
・セキュリティが…。 正直なところ、長年付き合っているのでどこがどう危ないかよく知ってたりします。それだけに怖い。たとえば、設定が甘いサイトとか、あまりよくわかってないで運用しているxoopsサイトを見ると寒気がします。たとえば危ないモジュールをばら撒いて、そこのユーザがインストールすることで、利用者の情報を丸見えにすることも可能なので(同じことはmixi開発者とかにもいえるわけですが)。
・よいモジュールほど更新が遅くなる いままでも何度と無く、しかも他のオープンソースでもよくある問題なのですが「使われるソフトウェアほど更新が遅くなる」という現象はxoopsモジュールでも起きえます。理由は「沢山使う人がいるから、うるさい人も多い」とか「最初に書いた人が天才過ぎて機能追加しまくるので収拾がつかなくなる」とか「ユーザが増えるうちに作者が偉そうになってくる」とか「(原作者の)意に反してユーザが増えてしまったが、当の本人はとっくに飽きている」とか…いろいろあります。 現に今、あるxoops上のwikiモジュールがあるのですが、シンプルで操作感のよいあるモジュールは更新停止、高機能で作者自身のサイトデモ使っていて、さらにそのサイトの更新もがんばってる某作者はめったなことでは更新版を公開しない、あと、フランス語圏のみで有名なモジュール(その名もwiwimod)も、狙っているところはいいのかもしれないけど高機能すぎて開発進行が遅い…など、決め手にかけます。いや、最初のやつを使えばいいんですが、最近巨大なセキュリティホールがあるらしく、毎日SPAM投稿を食らいます。 同じような問題はwikiだけではなく、blogモジュールやユーザ情報拡張モジュールなどでも顕著に起きています。
ま、そんなに言うなら自分でモジュール書けばいいじゃん、フォークするなり、セキュリティパッチするなり…ってわけなのですが、いくらCMSとはいえ、CMSコア設計者のお作法とか思想にそった開発がされたコーディングや、それを全く無視したコーディングや、使うか使わないかわからない言語ファイルなどを見ていると、ほんとーに疲れてしまいます。内製内用のモジュールをぺぺっと作って終わりにしたい。いや本当は公開して配ってしまいたい、でもそんな時間があるなら寝たい。。いや寝る時間があるならバグを取ったり多言語化したりしたい…という感じなのです。
そもそもxoopsの多言語化というのも結構な問題で、UTF化はがんばっている人がいますが、それを公式側が配ったりするわけではないですし。本来、多言語利用、多言語開発を意識されている仕組みがあるのに、日本人が書いたコードは「EUC上等だぜオラ」って感じでなんだか問題ありありなわけなんです。
…で、タイトルに戻りますが「joomla」です。 http://www.joomla.jp/ 最近まではMamboという名前でした、というかここもある日突然フォークするわけです。
おそらく英国産?少なくとも英語圏、フランスでは普通に有名。 日本語ふくめ多言語環境も結構充実しています。
xoopsとなんか違うのか、というと… (勝手な印象も含まれています)
・縦長デザインに強い xoopsはどうしても横長5段準拠なので ・多言語OK ・モジュールの系が違う xoopsはコミュニティ形成を意識した標準モジュールが多いが、むしろトップダウン系のものが多いみたい ・商用サイト向けともいう ・ログイン/管理画面を完全に隠蔽して運営できる というか隠蔽されてしまいますね ・見た目がカラフルでかっこいい ・フランス人開発のモジュール多数 ・内蔵エディタが多機能 ・AJAX志向? ・いろいろ不安定 ・日本語の書籍は多分まだ出てない
というわけで、いま、人より先に抜きん出て何かしないといけない人はjoomlaを触ってみる/移行始めてみる価値はあると思います。
自分もまだ研究中なので、今日はこの辺で。