書評:ウェブはバカと暇人のもの

ウェブはバカと暇人のもの (光文社新書)
ウェブはバカと暇人のもの (光文社新書) 中川淳一郎

光文社 2009-04-17
売り上げランキング : 130

おすすめ平均 star
starネットのバカども完全分析!
star共感と納得。業界の人は読むべきだと思うよ。
star読み手によって感じ方は様々でしょうね

Amazonで詳しく見る by G-Tools

俺が思っているような感じのタイトルだったので、買って読んでみた。
ウェブ製作サイドの人間が、そんな身も蓋もないようなことを言うなという話になるのかもしれないが、俺もこのタイトル通りのことを思ってる。そしてそれは間違っていないと思う。

ウェブを上手に使っている層からすると、ウェブはまだまだ可能性を秘めていると思う。まぁ、ここにも80対20の法則みたいなものが働いているのではないだろうか?著者は、ウェブの上手に使っている20%の層の話は他の人に任せて、その他80%について話をしている。その点を勘違いしてはならない(80対20の法則は勝手に俺が引用しているだけだが)。

変な正義感から、人の揚げ足を取るようなことをして、偽善者による総攻撃でブログ炎上みたいなことをやってるのは、バカと暇人によるものだってことが書いてある。そして、そういう人たちに火を付けるようなマーケティング手法が、ネット上のマーケティング手法であり、お行儀のよい手法を取ったところでその人たちにとっては面白くないので目に止まらずに、企業の自己満足で終わってしまう。いかにB級くさいネタで彼らを煽るのかがキモだと。

さらに、バカと暇なネットユーザはテレビの影響を受けやすいので(テレビは無料(受信料の発生しない局は)、ネットも定額なので感覚的には無料)、ネットから火がつくということはなく、テレビ主体の構図はこれからも当分変わらないだろうさ~ということだ。うーん、わからなくもない。

まぁ現実問題として、インターネットに多くの時間を割いている人で、クリエイティブでない人の割合は相当なものだろうと思うし、ブログなどの普及で爆発的に無駄な情報が多くなって参るとか、ほんまに多いしね…。まあそういう俺もブログ書いてるんだけど。明日からインターネットがなくなったとしたら、暇な人は一体何をして過ごすんだろうか?

ブログを書くこと自体がリスキーになってしまっている日本では、メリットが感じられない人はブログを書かないし、書かないほうがいいっていうのはすごく理解できる意見だった。企業が情報をオープンにすることで会社のことをよく知ってもらおうとしたら、逆に揚げ足を取られて信用失墜というケースも度々あることから、そこらへんは周到に準備して、双方向性を無視したスタイルでなければ、批判攻撃を受けてしまう。

ユーザとコミュニケーションができるのがネットの利点であるっていっても、不特定多数の人間には、いい人もいれば、バカもいるので、全てに対して対応するということがそもそもが無理なのだ。そのバカをうまくスルーした例として、ダウンタウンの松ちゃんの件が出てて、「あぁ、確かに一時期ニュースになってたけど、全然騒ぎが大きくならずに済んだな~」と思ったのだが、この対応は非常に適切で、これくらいのスタンスでなければやっていられない。自分にとって有意義な意見交換ができる人だけを相手にすることが重要なんだなぁ~。

ひろゆき氏の、「2ちゃんねるはなぜ潰れないのか?」とかも併せて読むと、本当に見も蓋もなくて、面白い。ネットに幻想見てる人たちに読ませてあげたいね。ただ、技術革新があれば、幻想に一段踏み込んだところに行けるからね。それがiPhoneとかAndroidだと思ってるんだけど。でもそれを使ってるのも、基本的には上位20%の人たちが多いんだけどね…。オイラはその20%には入っていません…。iPhoneは欲しいけど。


Manage It!を読んでいる

プロジェクトマネジメントの重要さを理解していながらちゃんと出来ていない現場のために、勉強して、現場の技術者に布教中である。俺も現場の技術者だけどね。

わかってはいるが動かないというか、それは私の仕事ではないという感じなんだろうか?まぁそれは本人たちにしかわからないのであるが、現場がよりうまく回るためには自分たちが変わるのが一番だろう。上層部は当てにならない、と思っている。思う事は伝える。けれど、彼らは言い訳の天才で、自分自身のことで一生懸命。わかっているフリはするので、それが現場の技術者の気持ちを逆撫でするのである。

以降はうちの場合の話であるが、Manage It!を読んで思うところは、1日は8時間で計算しては駄目だということだ。7時間か、プロジェクトリーダーの場合は4時間程度にして考えないと、見積もりを誤ってしまうなと思った。現場は不確定要素で溢れかえっており、マネジメントする人が(いるけど実質)不在なので、事は予定通りには進まない。割り込みが多ければなおさらである。リーダーに対しての割り込みは半端ないため(見積り依頼や進捗報告など)、8時間がっつり働けるわけがない。そういうことを踏まえた文化作りをしていかなければ、人が潰れてしまう。

RedMineを導入してから、どれくらいの工数を使っているかを定量的に見れるようにはなったが、まだ使い方が適当なので(それでも意識改革になったと思う)、個人レベルでやっているであろう振り返りをチームとしてやるようにして、チームの結束力とチームレベルの底上げをはかる必要があると感じている。

あとは、上層部から次々とくる要求・仕様変更をコントロールすることだ。これに関しては、ボコボコ言われてもできる作業量は一定なので、いったんフェーズが動き出した時点で仕様は凍結すると伝えたが、それでも彼(ら)の妄想は止まらない。

社内のプロジェクトマネジメント基準を策定して、それに準じて作業を行えるように、そういう基準をチームで作ろうと思う。


家で開発開始

CakePHP1.2を使って、ヒルクライムしようぜの焼き直し作業を始めた。
正直、CakePHP1.1と1.2では相当な違いがあるので、移行には結構時間がかかりそうであるが、これを通してCakePHPでまだモノにしていない技術とかノウハウを覚えてしまおうと思う。とりあえず、だいぶ前に移行しようとして挫折したソースを発見した。viewの拡張子を*.thtmlから、*.ctpにしたのとか、若干モデルのメソッド類を修正したりとかしてた。それをカスタマイズしていっている。

一人でやっているプロジェクトなので、時間はかかりそうであるが、RedMineを使って工数管理やバグ管理のノウハウを自分なりに蓄積していこうと思う。

話は変わるが、最近、どうにもイラつくことがある。
それは、能力が低い人が努力をしないことと、行動をしない人が口だけで偉そうなことを言うことである。こういう人たちにフォーカスを当てているとそれだけで疲弊してしまうことは知っているので、なるべくそうしないようにしているが(この人はそういう人なんだから。そういう人も世の中にはいるよね。と思うことにする)、こういう人が上司だったりすると、否応なく影響を受けざるをえない(自分が、ではなく職場が)。

こういう人は教えても行動しないし、面倒なときは教えて君になるし、タチが悪い。それでいて、語気を強めると「君はできる人だから、私らの気持ちがわからないんだよ」とか言ってくる。人の業務改善提案は黙殺し、自分の思いつきだけは通そうとする。これでは現場は崩壊するし、何を言っても無駄だと思う。理想的なビジョンと現実的な戦略を併せ持っていないと、部下はついてこないぜ!と思うのだが、如何だろうか。

今のところ、妄想的なビジョンと非現実的な戦略、もしくは戦略がないと現場では感じていると思うんだが…。


何を目指すべきか…

最近、家で作りたいと思うようなシステムを思いつかない。もしくは、思いついているのに、行動に移れていない。原因は、開発環境の整備とかしてるだけでなんか時間が過ぎてしまっていることだ。あとは、細かい点まで詰められていないことだと思う。または、思いついたシステムは既に世の中に作られていて、作る気を削がれてる。これはよくない。

会社の仕事をしていて、開発チームの会議で言ったことなのだが、Webアプリの開発には目標と戦略が必要だ。たとえ戦略を練っていたとしても、失敗するときは失敗するのだが、チームのモチベーションが違う。それは個人でやるときにしても同じ事だと思う。

で、やっぱり俺が一番やる気が出せる分野っつったら自転車とプログラムとか、健康のこととかなので、そういう分野に特化したアプリやWordPressのプラグインとかを作ってみようかと思う。自転車に関して言えば、ヒルクライムのサイトが開発途中で止まってしまっている。このサイトはCakePHP1.1で構築されているのだが、まずはこのサイトをCakePHP1.2で構築し直してみようかと思う。


CakePHP:schema.phpのindexesの更新でバグ

CakePHP1.2の話。

データベースのテーブル定義を更新しようと、schema.phpを編集してcakeコマンドでスキーマの更新をかけようとしたら、失敗した。

Can't DROP 'indexes'; check that column/key exists

indexesがDROPできないから更新できないよ~!ということらしい。
Googleで検索してみたところ、Google groupのcakephpのところに答えがあった。

http://groups.google.co.jp/group/tickets-cakephp/browse_thread/thread/84cbdf3093415923

ただ、cakeのコアを編集することになるので、
Cakeのバージョンがアップしたときに対応されてないと
またバグになってしまうので注意が必要かと思う。

// CORE/cake/libs/model/schema.phpの430行目
$tables[$table]['drop']['indexes'] = $diff['drop']; 
$tables[$table]['add']['indexes'] = $diff['add'];
// を下記のように編集する

// $tables[$table]['drop']['indexes'] = $diff['drop']; 
// $tables[$table]['add']['indexes'] = $diff['add'];
if(!empty($diff['drop'])) {
        $tables[$table]['drop']['indexes'] = $diff['drop'];
}
if(!empty($diff['add'])) {
        $tables[$table]['add']['indexes'] = $diff['add'];
} 

この修正後、スキーマの更新を再度行ったら、indexesが正常に更新されました。
よかったよかった。