DIRECT web : DJ ZINCがPodcastをスタート
DJ ZINCがPodcastをスタート
早速購読!
last.fm-ripperとPlaggerを組み合わせればiPodにいれてlast.fmを聴けるんじゃないかと思ったり。
そうすると、車の中でlast.fmチェック出来るのでかなり嬉しいかも。
ただpodcastingさせるだけだったらPlagger使う必要ないかな?じゃぁ曲リストをgmailなんかに送ればいいのか(これも意味あるのかわからん)
それともmixiでおすすめ曲のタグの探してきてそのラジヲを追っかけるとか、なんかそんなフィルター入れた使い方をするとおもしろいのかな?または、last.fmにこだわらないで適当にフィルターかけてjuno recordsの視聴mp3とってくるとかでもいいかも。
27032006 Catalyst
CatalystのTagCloudのプラグイン欲しいナァってことで、Catalyst::Plugin::Markdownをまねして作ってみた。Catalyst::Plugin::Markdownのソースがさらりとしているので、この部分とアノ部分いじればOKね、、、みたいのはわかるんだけど、何故動くのかさっぱしわからん。
結局、コードを書くよりも出来たコードが何故動くのかを理解する(したふり?)にほとんどの時間を使ってしまった。
ほとんど上の二つのお勉強だ。
プラグイン自体はCatalyst::Plugin::TagCloudという名前で、
package Catalyst::Plugin::TagCloud; use strict; use warnings; use base 'Class::Data::Inheritable'; use HTML::TagCloud; our $VERSION = '0.01'; __PACKAGE__->mk_classdata('tagcloud'); __PACKAGE__->tagcloud( HTML::TagCloud->new ); 1;
とかやっておいて、コントローラーに
use Catalyst qw/-Debug ConfigLoader Static::Simple TagCloud/;
とプラグインを追加しておけば、$c->tagcloudはHTML::TagCloudのインスタンスなので
sub default : Private { my ( $self, $c ) = @_; $c->tagcloud->add("tag1","url1",10); $c->tagcloud->add("tag2","url2",15); $c->tagcloud->add("tag3","url3",50); my $html = $c->tagcloud->html_and_css(10); # Hello TagCloud $c->response->body( $html ); }
と書けばめでたくタグクラウドが出力されている。
で、Class::Data::Inheritableって何ヨ?ってことだがココみてなんとなく納得した気になったり。でも、ちゃんとわかってないのかも、、、、なんで常にインスタンスが返ってくるのか実はよくわからん。 HTML::TagCloud->newってなんどもnewされないのは何故だろうか。
sub setup { my $c = shift; $c->config->{markdown}->{empty_element_suffix} ||= ''; $c->config->{markdown}->{tab_width} ||= ''; return $c->NEXT::setup(@_); }; 1;
で、Catalyst::Plugin::Markdownにはさらにsetupっていうメソッドがあって、NEXT.pmが使われている。これはココのメルマガアーカイブでかなり納得したんだけれども、$c->config->{markdown}->{}がどうしてmy $html = $c->markdown->markdown($text);に関わってくるのかさっぱりなままだ。
結局今回のプラグインだとnewするときにlevelsの設定が出来ないので常にデフォルトの24であんま使えん。
みたいなのを$c->config->{tagcloud}->{levels}みたいなのをnewするときに指定してやりたいが、なんかいまいち。というより、そもそもClass::Data::Inheritable継承する必要がないような気がしてきた。my $cloud = HTML::TagCloud->new(levels=>10);
もうちょい、他のプラグイン読んだりしてちゃんと理解しないとあかんっぽい。勢いとまねまねで初めて書いたプラグインはやはりダメダメだったヨ。
面白そうなCatalystのプラグインを見つけたので後で試す。
Catalystでmarkdown記法で書かれたテキストをHTMLに変換するプラグイン。このblosxomではMarkdown使いまくりなのでCatalystで作った何かに、今までのエントリ移すときとか楽そう。あと、Kwiki::Markdownってのもある。普段PukiWiki使ってるんだけど記法が混在すると混乱するからKwikiに変更しようかな。WYSIWYGなエディタもあるので、便利そうだし、タグもつけられるし。
Catalystでblosxomのフレーバーなことができるプラグイン。htmlとかrssとかURLの最後の.xxxでテンプレートを切り替えられるのでCatalystでその手の機能が欲しい場合には。というか、そういう場面って結構あるはず。
26032006 bioinformatics
やっぱ普通にマッシュアップて言われると、こういうのとかこれのA.2みたいなイメージを持つが、IT系だとちょっと定義が違うのね。
マッシュアップ--仮想空間と現実をつなぐ地図 - CNET Japan
テクノロジーの世界では、複数の情報源から提供されるコンテンツを組み合わせているにもかかわらず、ひとつのサービスのように利用することのできるウェブサイトまたはアプリケーションを指す。
こっちの定義だとよくわかる。NCBIのpubmedだってタイトルにアクセスすんのに、javascriptからだとへんな検索しないといけないし、LWPなんかでGETしてきたhtmlはXML::DOMで構文解析できないから正規表現使ってみたりとか、なんかと組み合わせたいと思っても色々やらなきゃいけない裏方仕事が多すぎ。eutil使うにしても、サービスとかとしてなんも考えんで使うには使用条件厳しいかなと思うし。
だから、既存のバイオインフォとかケモインフォのデータベースがもうちょい、AWS,del.icoi.us,bloglinesみたいな使いやすいAPIを用意してくれるだけでも、すごく研究の幅が広がるのにナァなんて思ったりはするんだよねぇ。
でも、マッシュアップて言われるとそういう泥臭いとこも含めて僕はマッシュアップなのかなぁって思ってしまうんだよね。だって、再利用されることを意識しながら曲書くひとっておらんだろうから。
と、ここまで書いていてちゃんと認識できたのでOK。つまり感じていた違和感ってここなのね。
24032006 cpan
CPAN経由でモジュールインストールする場合
perl -MCPAN -e 'install OK::Bokujo'
ってやってたけど、/usr/bin/cpanってコマンドが存在することを知った。(perl5.8.3/FC1だけど)
中身はperlスクリプトなんだけども、引数なしで実行するとcpanシェルが立ち上がるし、-iオプションとれば上と同様にインストールするみたいだ。
cpan -i OK::Bokujo
でOKなのね、、、全然知らんかったわ。
24032006
招待してくれたヒトが、mixiおもろな。とかいってやめちゃったで、ある日こんなメッセージが。

検索エンジンにひっかからないサイトは存在意義がないばりに、マイミクのいないユーザーは存在意義がないということか。
僕もmixiほとんど使ってないからあれなんだけども。メタモやジャズトロのコミュとかは好きだからな、誰か誘うか。
24032006 bioinformatics
なる!とか思いつつも、これってサンプリングなだけでは?て思ったり。
[Bioinformatics]統合データベースでもなく、データのjoinでもなく、Mash upする - ichan::Weblog (2006-03-22)
そもそも統合データベースもデータのjoinも、複数のデータベースの情報を組み合せて、新しい生物学的な情報に辿りつきたいという話から生じているはず。それを表す言葉として、Web 2.0 で良く使われている用語 Mash up という単語を使うことを流行らせたい。マッシュアップとは、そもそも2つの音楽をDJが混ぜ合せて、新しいひとつの曲を作りだすというクリエイティブな行為のこと。
二つの曲を混ぜても、上モノちょこっといじったり、ベースライン微妙に付け替えたりとか、盛り上がり以外ミニマルっぽくしてみたりとかはどうかな?クリエィティブっていいうよりはむしろダサげ。
ロングミックスぶちかましてみたり、フミヤチックに原型をとどめぬほど混ぜてみてプレイ全体としてひとつの曲にしてみたりとか竹村延和みたいに紡ぐとかじゃないと面白くないような気がするのは、僕だけなのか?
だから、どっちかっていうとハイファナチックなイメージ
Remixも曲つなげんのもある曲の、(自分にとって)一番クル部分が強調されていればドップリドープに最強なわけで、結局提供者の意図を外れたところに本質があったりするんじゃないかナァと思ったりするわけですヨ。
あーそういえばWJってのもあったっけ。