ブログのデザイン変えた

Twitter Bootstrapの勉強もしたかったので使ってみた。

便利なところ

  • offsetとgridで大まかなレイアウトがさくっと決められる
  • アイコンセットがついているのとタグのボタンが簡単につくれる
  • pull-rightが楽

困ったところ

  • bootstrap臭さから脱却できない
  • navbar以外でpull-rightした後にclearする(標準の)方法が分からなかった
  • productionではLESSを使わずcssにしておくのがいいのか?(IE8では遅いと思うんだが)

lesscでコンパイルしたcssが170kbyteくらいあってちょっと嫌なんだけど気にならないんだろうか?やっぱり要らない機能を削ってコンパイルをするのが普通なんだろうか?

それからbootstrapを使って効率的にサイトデザインするワークショップみたいなのやってくれないかなぁ。

Catalyst::Model::Estraierでつかっているindexが壊れたっぽい

U隊長がオーブンとドライヤーを一緒に使ったら局所的にブレーカーが落ちて、とばっちりでサーバーが落っこちた。

以前にちょっと色々やっててサーバーの電源をUPSのバッテリ側に差してなかったっていう僕の落ち度もあるんだけど、Estraierのindexが壊れたっぽい。

今日はもうやる気が起きないので、来週なんとかする。

ProductName OMRON BZ50T UPS(無停電電源装置)

オムロン / ¥ 18,270 (2004-05-29)
在庫あり。

Lingua::JA::TFIDFとCatalyst::Model::Estraierで類似エントリを探す

こんな感じで過去に書いた類似のエントリ出すようにしたい。

TF-IDFで特徴語を抜き出す。

my $calc = Lingua::JA::TFIDF->new;
my $result = $calc->tfidf($text);

my $query_keywords = "[SIMILAR] ";

for (@{$result->list(5)}) {
  my($key,$val) = each(%$_);
  $query_keywords .= "WITH " . int($val) . " $key ";
}

とやってクエリをモデルのほうに渡せばOKっぽいんだけど、Hyper EstraierのほうをP2Pで動かしてないんだったヨ。

イントラでクローラはしらせているのでじゃぁperlバインディングからでもと思ったが、ちゃんと入ってないっぽくてこけてる。

そのうちP2P対応させようということで、途中までのメモ。

DrkcoreにTypePad Connectのコメント機能導入

TypePad Connect Betaを入れた。

コメントっていうのは結局URIに対するコメントなんだから(はてなブックマークなんかはそれが顕著にでている気がする)、それを担当する外部のサービスはなんか出るんだろうなぁなんて漠然と考えていたけど、実際でてみるとなかなかいい感じ。

あとは、コメントサービスを押さえたとしてどういったメリットがあるんだろうか的なあたりに結構興味があったりしますな。トラックバックよりは緩いつながりに関する情報が手に入るってことなのかな。

blogを変えてみた

サーバー周りとかプロバイダ、DDNS周りとかを変えなきゃいけなかったので、ついでにblosxomからCatalystベースのblogシステムっぽいものに変えてみた。

色々勉強も兼ねて自分でこしらえてみたが、動かして細かいところはこれからちゃんとやっていく。

  • Tag管理オンリー
  • Markdown記法
  • Ctrl-cで新規エントリ入力画面へ
  • コメントははてなブックマークコメント
  • それぞれのタグでRSSを吐けるようにした

とかやってある。あとAtomPP対応とかしてみたい(flickrから投稿できると便利なので)。 それからはてなスターもつける。

  • blosxomのASINのプラグインみたいなの
  • AtomPP
  • はてなスター
  • キャッシュもそのうち入れる
  • trackbackは不明

コメントととかSBSでいけるし、写真なんかもflickrとかpicasa webなんか使えばいいのにtrack back的な仕組みのサービスがないのは何でだろう。trackback用のURLをもう少しひねってcarとかcdrみたいな概念でlispのリンクみたいにつないでいくようなサービスがあれば、別にトラックバックは必要ないし、ブログのコンテンツも其の壱、其の弐とかしなくてもシーケンシャルにつなぎやすい気がすんだけどな。

レイアウトなどを変更

javascript周りをjQueryに変えようとごそごそいじってたのだけど、途中でレイアウトいじりだしてしまった。段落の始めにインデントが入ってないのが前から気になっていたのだけどそれもついでになおした。

WebService::AudioscrobblerをCatalystのModelに

Catalystのモデルを書くの面倒だなーと思っていて、Catalyst::Model::LastFMがあると便利な気がしてたんだけど、微妙に放置してた。

が、Catalyst::Model::Adaptorを使ってみたをみて、コレだーって思った。

Catalyst::Model::Adaptor

$ script/drkcore_create.pl model LastFM Adaptor WebService::Audioscrobbler new

とやるだけで、WebService::AudioscrobblerがCatalystのモデルになる。らくちんだ。

last.fmのチャートを表示するようにしてみた。

おーblur意外に聴いてんな。On The Way To The Clubヘビーローテしてたからかな。

ProductName Think Tank
Blur
Virgin / ¥ 1,986 (2003-05-06)
通常24時間以内に発送

openidが気になったので調べてみた

突然、無性に気になって仕方がなくなったので。

OpenIDの仕様と技術を一通り読んだ。連載は分かりやすかったが、 第5回がちょっと理解できていないのであとでもう一度。あと、自分で実装してみないと本当に分かったんだか、分かったつもりになってるだけなのか分からないよねってことで、このblogのurlをvoxにdelegateするようにしてみた。

で、bloggerにテストコメントしてみた

openid_test

上が、kzfm.vox.comで下がblog.kzfmix.com。なんかユーザー名がblogとなっていて気持ち悪い。yahooのopenidだと長い文字列の羅列でさらにアレな感じが漂っていた。

そしてdrkcoreもCatalyst::Plugin::Authentication::Credential::OpenIDを入れてopenidでコメントできるようにいじる。


ところで、openidってのは、urlに人格っていうかヒトっぽいものの個性みたいのがくっついてるから面白いのかなーなんて思うのですよ。だからイントラでの使用ってのはちょっと想像しにくいですな。例えば顔もあわせたことのない巨大な企業とかで、大多数がイントラブログを書いてる状況とかだと有効なのかななんて思うのだけど。そういう認識でいいのだろうか。

それから、研究シーンとかだと、論文業績を個人ごとに集めたurlをpubmedなり出版社なりがopenidにしといたうえで、ヒトの論文にコメントできるようなサービスを構築すればいいのにと思ったり。結局もうちっとパブリックな査読のシステムとか必要なんじゃないの?とか思うことが多かったりとかするし。

雑誌にIFつけるんじゃなくて個々の論文に対するIFみたいなものつけないと駄目だよねとか思っているので、コメントする側のバックグラウンドとかはっきりしてれば、なんか面白そうな気がするけどねー。

Catalyst本の4章

4章は3章でつくったアドレスブックに色々つけていく

ProductName Catalyst: Accelerating Perl Web Application Development
Jonathan Rockway
Packt Publishing / 3404円 ( 2007-11-30 )


セッションと認証を入れて、検索とページングを実装。

検索以外はdrkcore作るときにやったのをちゃんと覚えてたので流し読み。検索はDBICのクエリの作り方が参考になった。今度これにも実装してみよう。