2008年8月アーカイブ

リリースしました。MT4.2対応に加え、新しい機能も追加しています。

CMSツールの選定とか、MT関係のセミナーの質疑応答とかで良く話しに上ることに、「時系列型」「ツリー構造型」とかいう話があるのですが、確かにMTベースで組みやすい、適しているサイトってのがあると思います。

例えばニュース系ポータルサイトなんかはぴったりじゃないかと思うわけですが、これまでは規模とかパフォーマンスがネックになる場合もあったかと思います。MT4.2の登場でパフォーマンスが向上していますから、こうしたサイトを組む時にはさらに適したツールになったと思います。

で、このあたりも意識して、例えばニュース系ポータルサイトを作る時に必要な機能は何だろう? というのを今回は意識しました。

で、表題の「出来てほしいことが、ちゃんと出来ること。」ってのは、製品のコピーを検討しているときの没案です。社内で一番人気のコピーだったんですけど、よく考えたら出来てほしいことが、ちゃんと出来ること。」ってあたりまえですよね。

とはいえ、MTなり他の製品なりで構築している時に、「出来てほしいことが、出来ない」っていうケースは時々(時々で済まないかな)あります。そのあたりに応えるソリューションということで作りました。ちなみに、コピーは「Web制作現場から生まれたCMSの新しいスタンダード。」と続く案でした。そう、100%現場で出来ています。

あとは例のごとく? ワークフロー、承認フローです。弊社のお客さまからの要望でおそらく一番多いのではないでしょうか。ほとんど毎週相談を受けてカスタマイズしている感覚です。

ということがあり、今回の目玉は一つのプラグイン(名前はEntryNextRevisionというもの)です。

詳細はこのページにある弊社のM君入魂のムービーを見ていただくとして、簡単に説明すると、単に「下書き」→「承認依頼」→「公開」だけではなくて、公開中のエントリーを公開したまま「修正」→「承認依頼」→「差替え(公開)」という流れを作れます(もちろんメールで通知、差し戻しも可能)。

上位/下位のユーザーでワークフローを組む時に、下位の権限のユーザーは一旦エントリーが公開されてしまうと修正できないんですよね。修正するためには一旦下書きに戻さないといけない。下書きにすると当然ながらサイトからは一度消えてしまいます。

ということで作ったというのが当初ですが、今回のように当社のサイト更新する時も便利なことがわかりました。つまり製品がバージョンアップする時に、次のバージョンのエントリー群を用意して下書き、承認待ち状態で置いておけるのです。指定日にバージョン差し替えとか、一括公開もできますので、日時が来たらごそっと差替え、というような運用もできます。

ここでは、1点のみご紹介しましたが、他にも新しいフィーチャーが色々あります。是非サイトをご覧ください!

Movable Type Developer Conference参加してきました。Lightning Talksも喋って来た。5分だから笑いとることだけ考えた(何か間違ってるかな?)。

ちなみに、朝MT4.2でPagerプラグイン動かん、てのでちょっと修正して帰って確認したら他にも動かないところがあって(ブログ記事リストでエラー吐いてた...4.2内部的に結構変わってる)修正しました。4.1と4.2で動作確認済み。

イシザカさんが撮影してくれたビデオ。当日の内容はこちらのページからビデオで見られます。

会場の風景。Lightning Answer? 中。

会場風景

いただいたUSBメモリ(InstaMTが入ってたら面白かったのに。Macユーザーだから入ってても使わないけどw)。あとTシャツも貰いました。

USBメモリ

yujiroさんCHEEBOWさんたちと丸の内ランチ行きました。みなカレー食べてましたが僕はダイエット中なのだ(絶対奇麗になってやる!)。

丸の内ランチ(シーザーサラダ)

先日書いたエントリーの続きです。

南港ポートタウンの話を書いたのですが、他の街はどうなんだろうということでちょっと見て回っているうちに気になったポイントがあります。

晒しちゃうこと自体がどうなのか、という話もあるのですが、このポイントです。

大阪の千里ニュータウン (既に「ニュー」でもないのですがw) の、とあるポイントです。このポイントの周辺は対象エリアから外れています。ところがこのポイントだけ「飛び地」みたいになってる。

ここだけ歩いていって撮影した? ってことはさすがにないと思いますが、どういう判断でこうなったのかちょっと気になります。

「映っていないところ」が気になるという視点については、以下のエントリー等でも取り上げられています。「団地」問題とは違う視点ですがそういわれると確かに気になりますね。

お待たせしました! って、ええ、待ちましたよほんま。で8月14日ってさぁ、どういうことさーーー。

Movable Type 4.2は私の大事なもの(夏休み!) を奪って行きました w

ってな感じですね。

Movable Type 4.2 Perfect Guide

ほんでもって、これに先立って勇次郎さんから献本いただきました。拙作のプラグインも紹介いただいています。ありがとうございます。

いたいたからには、早速読んで感想とか書かないと、と思いましたが...思い、思い......重い! 正直まだ読めていません。読むの覚悟いりますよ。っていうか、これは読む本というより、リファレンスまたは学習本ですね。帯に「最強解説」とありますがまさに最強。インストールからプラグイン作成まで、とにかく網羅してます。

丁度先月から新人が来ているので、ほんと丁度いいです。全部読ませます。ありがとうございました。

MTづかいなら一冊、会社で扱うなら会社に一冊、必要でしょう。ちょっとだけ書評的なことを書くならば、この本は「MTでつくる○○○なWebサイト」という種類の本ではなく、「みっちりMTを学ぶ」「MTでわからないこと、こんなことをやりたいと思った時に開く」タイプの本です。

Movable Type Developer Conference

あと、こちらのイベントにも参加することにしました(お祭り? ですからね)。

Lightning Talksも申し込みました。今回はテンプレート寄り? みたいなので、Pagerプラグインでのページ分割について紹介する予定です。

それでは皆さん(誰?)会場でお会いしましょう。

1,000ページ程のブログの再構築で500エラーが出るってんで原因を探していてPreviousNextInCategoryプラグインが怪しいっぽかったので同様の動作をしてより軽量(? 高速?) なものを作成しました。

おそらく500エラーになったのは以下のエントリーと同じ理由と思われます。

プラグインは2種類あります。4.1のコードを眺めていて「$terms->{by_category} = 1;」ってのが使えんの!? で使ったらいけたんだけど、4.2rc2でエラーが出てしまってあら残念。仕様変更でなくてバグだったらいいなぁ、と思いつつちょっと最新のベータとかで試せてなくてまぁ両方晒しておきます。

4.1で使える版の該当部分のコード。シンプルで書きやすくて素敵。残念ながら4.2rc2ではエラーに。

sub _hdlr_entry_nextprev {
    my( $meth, $ctx, $args, $cond ) = @_;
    my $e = $ctx->stash('entry')
        or return $ctx->_no_entry_error($ctx->stash('tag'));
    my $terms = { status => MT::Entry::RELEASE() };
    $terms->{by_category} = 1 ;
    my $entry = $e->$meth($terms);
    my $res = '';
    if ($entry) {
        my $builder = $ctx->stash('builder');
        local $ctx->{__stash}->{entry} = $entry;
        local $ctx->{current_timestamp} = $entry->authored_on;
        my $out = $builder->build($ctx, $ctx->stash('tokens'), $cond);
        return $ctx->error( $builder->errstr ) unless defined $out;
        $res .= $out;
    }
    $res;
}

4.2でも問題なく動くコードはこちら。制限として、タイムスタンプが全く同一の場合はうまくいかないっていうのがあります。割り切って使えるならこれでもいいか。

sub _hdlr_entry_nextprev {
    my( $meth, $ctx, $args, $cond ) = @_;
    my $e = $ctx->stash('entry')
        or return $ctx->_no_entry_error($ctx->stash('tag'));
    my $category_id;
    if (my $c = $e->category) {
        $category_id = $c->id;
    }
    return '' unless $category_id;
    my $entry = _hdlr_neighbor_entry( $e, $category_id, $meth );
    my $res = '';
    if ( $entry ) {
        my $builder = $ctx->stash('builder');
        local $ctx->{__stash}->{entry} = $entry;
        local $ctx->{current_timestamp} = $entry->authored_on;
        my $out = $builder->build($ctx, $ctx->stash('tokens'), $cond);
        return $ctx->error( $builder->errstr ) unless defined $out;
        $res .= $out;
    }
    $res;
}

sub _hdlr_neighbor_entry {
    my ( $entry, $category_id, $meth ) = @_;
    my $direction = 'ascend';
    if ( $meth eq 'previous' ) {
        $direction = 'descend';
    }
    return MT::Entry->load({ blog_id => $entry->blog_id,
                             status => MT::Entry::RELEASE() },
                           { sort => "authored_on",
                             start_val => $entry->authored_on,
                             direction => $direction,
                             limit => 1,
                             'join' => [ 'MT::Placement', 'entry_id',
                                       { blog_id => $entry->blog_id,
                                         category_id => $category_id },
                                       { unique => 1 } ],
                           } );
}

ダウンロード

テンプレートタグの記述はPreviousNextInCategoryプラグインと同じです。

Google の中の人へ

Googleストーリービュー、便利で大変面白いのですが、私の住んでいる街が撮影されておらず残念に思います。大阪市内ですから対象範囲地域でもないでしょうし。一度ご検討いただけませんか。

ただし、車で街に入るには許可証が必要です。警察署で通行目的を添えて申請し、許可証を発行してもらってください。


本気で書いたわけではありませんが、僕の住む街が撮影されていないのは事実です。通行には許可証が必要なので、勝手に車で入ることはできません。歩行者は勝手に入れますから、撮影は可能です。撮影してたらどんな目で見られるかは分かりませんけど。

日本の都市生活者のモラル

「公道からの風景だから公開を前提としているはずだ」ではなくて、「公道を通る者はその鼻先の生活空間はのぞき込んではいけない」というのが、日本の都市生活者のモラルなんです。

僕にはこの感覚はわかるし理解できます。これは法的な問題ではなくモラルの問題。モラルの低下は法的な問題を引き起こしやすくするかもしれません。

都市でなく田舎ならどうか

日本の田舎の場合、こんなもんですみません。「どこそこの路地で○○さんとこの旦那と△△さんとこの嫁が一緒に映っとるで」ってのはアレゲですが、田舎の場合は情報が広まるスピードにおいてネットよりリアルの方が凄まじいってもんです。

女性の視点

ここ数日色んな人とこのサービスの話をしていたけれど、Googleストリートビューの件を話題にした時、全体的に女性(特に一人暮らしの女性)が嫌悪感を持つ割合が多いように思います。

「モト彼(女)」の家、見ちゃったよ」と言ってる同僚がいてドン引きしちゃった女性とか(実際に聞いた話)、ネット上でのそんな書き込みとか見た時にすごく嫌な気分になったとか。

嘘だと思うなら、一人暮らしの女の子と一緒にGoogleストリートビューを見て、ベランダの洗濯物表示して「これ絶対女性の一人暮らしだよね」とか言ってごらん。気味悪がられる事間違いなし(瞬間的に気味悪がられるのはGoogleではなくてあなただけどね)。

例えば何らかのきっかけで異性の住所を知った人が家を確かめに行ったり待ち伏せしたりする行為とGoogleMapで住所を調べ、ストリートビューで「あぁ、ここに住んでるのか」という行為では、後者の方が圧倒的に行動に移しやすい(行動コストとリスクの問題、つまり実行しやすくバレにくいから)。

それが犯罪につながるかどうかは全く別の問題として、それを「嫌」と感じる女性は多いのではないかと思います(統計とってないけど)。

ネットのコミュニティはどちらかと言えば男性中心社会でしょうから、そういった女性の声は目立ちにくいという面もあるでしょうし。

親の視点

一方、自分の家の近所を見ていて、小学生くらいの自分の子供とわかる姿がくっきり映っていたとしたらどうでしょう。あの程度のぼかしであれば自分の子供の判別等簡単につくでしょう。これも法的にどうとかいう問題でなくて、映っているという事実について違和感というか嫌悪感のような感情が生まれるかもしれません(僕はやはり何となく嫌な感じになるだろうと思います)。

決定権を住民が持つ街

さて、冒頭の話に戻ります。僕が住んでいるのは大阪の南港ポートタウンというところです。この街は今となっては既に新しい街ではありませんが、当時としては進んだコンセプトで造られたのではないかと思っています。例えば電線が地中化されて電柱がない、とか。 大きな特徴のひとつに、車の通行には許可証が必要という点があります。車はそのまま入れない。だから街の中を走っているのはスーパーやコンビニに商品を搬入するトラックとか、深夜のタクシーとか、せいぜいがそんなもんです。
子供たちは比較的小さな年齢の時から交通事故等を気にすることなく伸び伸び遊べますし、街に緑が多くて環境も良い。少々不便(地下鉄中央線が伸びてからはさほど不便は感じませんが)なことをのぞけば、僕は概ねこの街が気に入っています。

許可をとった車両しか入れないわけですから荷物運ぶときなんかは警察で許可をとるわけです。理由が「Googleストリートビューの撮影」だったら警察は許可を出すのでしょうか? もしくは住民に諮るのでしょうか?

理事会の議題に「Googleストリートビューの撮影の許可について」ってのがあがったらどういう結果になると思いますか?

私見ですけど、住民に諮るとしたら、住民の多くは反対しそうな気がします。 もし本当に住民の多くが反対するのだとしたら、(少なくとも生活道路における) Googleストリートビューって果たしてどうなの?

大阪市内なのにGoogleストーリービューの対象外の街に住んでいるからこそ、そんな風に考えてみました。

撮影の許可は住民が決定権を持っていて、拒否する事も出来る=プライバシーに関する自衛が可能)という街の作り自体が価値になる時代になるのかもしれません。南港ポートタウンのコンセプト考えた時代にそんなこと考えてなかったでしょうけど。


追記:
感覚としては、このくらい (外周道路は見えるけど街の中は見えない) がちょうど良いバランスだと感じるわけです。ただし南港ポートタウンのようにはっきりとわかりやすく境界が別れている場所は希有なので、要するに「可能なものはすべて」ではなく「どこまでやるか」の線を引くことを考えてみてはどうでしょうか。

Facebook

Twitter

このアーカイブについて

このページには、2008年8月に書かれたブログ記事が新しい順に公開されています。

前のアーカイブは2008年7月です。

次のアーカイブは2008年9月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 6.2.6