soycms_logo


SOY CMSとは何ですか?

WordPressとは何が違うのですか?

と聞かれたのでまとめてみる。

SOY CMS 公式サイト - 簡単便利で自由自在なオープンソースマーケティングプラットフォーム、無料で公開中[ソイ]

日本語 — WordPress


ざっくりと言うと、SOY CMSはコンテンツマネージメントシステムなので、自身のサイトを持ったり、ブログページを作成したり、お問い合わせフォームを設置したりと、機能だけ見たら、WordPressと大差ないどころかむしろ劣っています。


SOY Shopというネットショップを運営することができる大型のプラグイン(SOY App)があることで、ネットショップを運営できるという面ではちょっと優勢かな?という程度です。


国産のネットショップではEC-CUBEがありますが、それと比較すると、SOY CMSにはブログ機能がある分、マーケティングが有利になるかな?

というところです。

ECサイト構築・リニューアルは「ECオープンプラットフォームEC-CUBE」


となると、サイトの運営をするならば、WordPressにすればいいじゃん

ということになりますが、


その判断はちょっと待って、SOY CMSの誕生についての話を書くことにします。


今回の記事は本来ならば公式サイトが書くべき内容ですが、元開発で、オープンソースな上、最近開発が全然行われていないので別に良いでしょ。




SOY CMSは京都大学吉田キャンパスの北東あたりの建物の中で誕生しました。

京都大学 - Wikipedia


SOY CMSの開発元は当時は京大内にある事務所を借りていて、短期的な運営資金の確保という意味合いで、Web上の業務アプリを開発していました。


その時はメジャーなPHPのフレームワークを使用して開発をしていたのですが、よくある話でしょっちゅう挙がってくる仕様変更の連絡の制御をすることが出来ません。


仕様変更を何度か受けている間にシステムはスパゲティプログラムになり、仕様変更とバグ修正で疲弊して炎上案件と化してしまうわけです。

スパゲティプログラム - Wikipedia


スパゲティプログラムになる要因としては、


job_illustrator_and_programmer

かわいいフリー素材集 いらすとや


システム開発において、操作画面を開発するデザイナと動作部分を開発するプログラマが協働で一つのシステムを開発するわけだけど、操作を少し変えると動作部分を大きく変更しなければならない。

最初は良いけれども、開発後期になると画面も複雑化していて、動作部分は更に複雑化している。


他に開発で操作画面が決まるのがとても遅く、操作画面が決まってからプログラムを作成するとなると、既に納期までの大半の時間を費やしていて、プログラマにその分のしわ寄せがくる。


で、結果みんなが焦ってよくわからないことになる。


そこで考えたことが、デザイナとプログラマの仕事を完全に切り分けて、プログラマは事前に必要そうな機能を作っておいて、デザイナが解釈できる言語(HTML)のタグの形にパッケージして渡す。


デザイナは渡されたHTMLのタグを自身のデザインに差し込む。


SOY CMSの実際の例で話をすると、<!-- cms:id="title" -->記事タイトルを出力<!-- /cms:id="title" -->といったHTMLのコメントの形や

<h2 cms:id="title">記事タイトルを出力</h2>といった属性値の形で渡す。

※詳しくは下記の記事をご覧ください。

最新の記事一覧を表示する - SOY CMSを使ってみよう


デザイナはどこにシステムを差し込んだか?が一目瞭然で、開発途中に発生するデザインの変更の際にプログラマに一切相談なしにデザインを変更できるようになる。


一方、プログラマは機能の修正の際に、プログラムをHTMLのコメントにまで丸めているため、プログラム内に不具合があったとしても、デザイナに知られることなく、シレッと動作を修正できるようになるわけです。


このあたりは下記の記事を読むと良いでしょう。

SOY2HTMLのHTMLLabelを詳しく見る - SOY2


この設計理念の元に作られたのがSOY2フレームワークで、フレームワークだけでは上記で考えた恩恵をいろんな方に伝えることが出来ないということで、フレームワークを搭載して開発したのがSOY CMSです。


CMSの形でパッケージ化すれば、プログラマの仕事は既に終わったようなもので、後はWebデザイナのみでサイトの構築ができるようになります。


というわけで、SOY CMSは誰でも気軽にブログサイトが作れるというものではなく、開発時や運営開始後のちょっとした差し替えでのWebデザイナの負担を最低限にする事を目標にしていることになります。


サイト構築後のSEOを取り組んでいる方やネットショップでの集客をしている方であれば、Webデザイナの負担を軽減することの恩恵は非常に大きなものになります。


今回の話以外でもデザイナとプログラマの協働での工夫がありますが、それは次回に書くことにします。


次の記事

SOY CMSの開発秘話後編