ブログがWebにもたらしたMVCモデル - コンテンツ、デザイン、テクノロジー
ITの世界では、「MVCモデル」というものが知られている。
「MVC」とは、「Model」 「View」 「Controller」の頭文字で、ごく大ざっぱには
M (モデル) - データ
V (ビュー) - 見せ方
C (コントローラ) - ロジック
のような意味だ。これを混ぜてしまうのではなく、別々に切り離す設計にしておくと、うまくいくと言われている。
このMVCの考え方は、ITだけではなく、Webそのものにも適用できそうに思う。
M (モデル) - コンテンツ
V (ビュー) - デザイン
C (コントローラ) - テクノロジー
という感じだ。
かつて、まだブログもなかった頃は、みんな「ホームページ」を作っていた。HTMLを手書きしたり、ツールを使って、ページを1枚1枚作っていた。
この状態では、コンテンツ、デザイン、テクノロジーがごちゃまぜになっている。テキストを書きたいだけだとしても、一応デザインを考える必要があり、HTMLやFTPなどの技術を覚える必要があった。
もちろん、そうして無理やりでも覚えさせられ、経験することにはいい面もある。しかしこれでは、「テキストを書きたい」という単純な目的の達成のために、よりむずかしいプロセスや知識が必要になってしまう。これでやる気がしぼんでしまったり、途中で挫折しやすい面が大きかった。
これがブログの登場・普及により、ただテキストを書くという以外にほとんど何もしなくても、Webにコンテンツを公開できるようになった。
デザインは、それなりにすぐれたスキン、テンプレートがあらかじめ用意されている。デザインが得意な人は、自分でスキンを作って、入れ替えたりできる。
技術を持っている人は、プラグインを作ったり、改造したり、自分自身でブログシステムを作ったりできる。
このように、まさしくコンテンツ、デザイン、テクノロジーが分離されたのだ。
この分業化により、Webにかかわる人間の全方位的なスキル・バランスが失われるという面も確かにある。しかし、これもITでよく言われる「関心の分離(separation of concern)」により、生産性が飛躍的に高まった。
Webをつくるプロセスにおいて、コンテンツ、デザイン、テクノロジーの3つは、やはり「別の仕事」だ。それらは別種のスキルを必要とする以上、1人の人間にその3つのスキルを強制するよりも、設計が分離されて、好きな部分だけできるようになって良かったと思う。
個々の人間のスキル・バランスもたしかに大事だが、この場合、くっついてしまっていた3つの仕事を分けることで、3種類の「価値」が爆発的に解放され、それぞれの領域が大きく発展したわけで、そのメリットのほうがはるかに大きかったと思う。
「MVC」とは、「Model」 「View」 「Controller」の頭文字で、ごく大ざっぱには
M (モデル) - データ
V (ビュー) - 見せ方
C (コントローラ) - ロジック
のような意味だ。これを混ぜてしまうのではなく、別々に切り離す設計にしておくと、うまくいくと言われている。
このMVCの考え方は、ITだけではなく、Webそのものにも適用できそうに思う。
M (モデル) - コンテンツ
V (ビュー) - デザイン
C (コントローラ) - テクノロジー
という感じだ。
かつて、まだブログもなかった頃は、みんな「ホームページ」を作っていた。HTMLを手書きしたり、ツールを使って、ページを1枚1枚作っていた。
この状態では、コンテンツ、デザイン、テクノロジーがごちゃまぜになっている。テキストを書きたいだけだとしても、一応デザインを考える必要があり、HTMLやFTPなどの技術を覚える必要があった。
もちろん、そうして無理やりでも覚えさせられ、経験することにはいい面もある。しかしこれでは、「テキストを書きたい」という単純な目的の達成のために、よりむずかしいプロセスや知識が必要になってしまう。これでやる気がしぼんでしまったり、途中で挫折しやすい面が大きかった。
これがブログの登場・普及により、ただテキストを書くという以外にほとんど何もしなくても、Webにコンテンツを公開できるようになった。
デザインは、それなりにすぐれたスキン、テンプレートがあらかじめ用意されている。デザインが得意な人は、自分でスキンを作って、入れ替えたりできる。
技術を持っている人は、プラグインを作ったり、改造したり、自分自身でブログシステムを作ったりできる。
このように、まさしくコンテンツ、デザイン、テクノロジーが分離されたのだ。
この分業化により、Webにかかわる人間の全方位的なスキル・バランスが失われるという面も確かにある。しかし、これもITでよく言われる「関心の分離(separation of concern)」により、生産性が飛躍的に高まった。
Webをつくるプロセスにおいて、コンテンツ、デザイン、テクノロジーの3つは、やはり「別の仕事」だ。それらは別種のスキルを必要とする以上、1人の人間にその3つのスキルを強制するよりも、設計が分離されて、好きな部分だけできるようになって良かったと思う。
個々の人間のスキル・バランスもたしかに大事だが、この場合、くっついてしまっていた3つの仕事を分けることで、3種類の「価値」が爆発的に解放され、それぞれの領域が大きく発展したわけで、そのメリットのほうがはるかに大きかったと思う。