尚仁沢 純米吟醸

実家からおもむろに送られてきた。地元の酒らしい。

尚仁沢

おー、ナイス!と早速飲んでみたけど、、、

????

なんか、純吟の割には端麗すぎというか深みがたりない感が。甘いとか辛いじゃなくて単に薄い。

燗つけたらどうかなぁと、試してみたけど、U隊長は

ウマクネ、ってか本醸造っぽい

とか言ってそれっきり飲まなかった。U隊長は酒には厳しいというか、あんま呑むほうでないので美味いと思わないと飲まない。僕はまぁ飲みますよもちろん(飲むのも好きだし)。で結局独り晩酌だ。

今度実家に帰ったら、もうちょっと地元の酒飲んでみるかナァ。と思わせる出来事だった。

SQLObjectとSQLAlchemyの違い

相変わらず、暇を見つけてはTurboGearsで。メジャーなO/Rマッパーが二つあるみたいなのでちょっと調べた。

turbogears-jaにも資料があった。

SQLObject = CDBI
SQLAlchemy = DBIC

というイメージでよいのかな。てかCDBIがアクティブレコードパターンだっていう記述を見た事がないので、さらに追っかけてみるとActiveRecord パターンに近い実装らしい。じゃぁActiveRecordパターンに足りない部分はなんなの?が知りたくなったので更に調べてみた。

うーん微妙に掴めきれてない気が。

ちゃんと読んでみようか。

YAPCにMJDくる

今年も行く。 YAPC::Asia 2007 Tokyo - April 4-5 2007 (Japanese)

Mark is head of software engineering at the Penn Genomics Institute. He is the author of the book Higher-Order Perl.

MJD期待。

ProductName Higher-Order Perl: Transforming Programs with Programs
Mark Jason Dominus
Morgan Kaufmann / 6402円 ( 2005-03-28 )


それにしても、haskellとperl(pytthon)の橋渡し本(僕の中で)の筆者(MJD)がGenomics Instituteとはしらなかった。bioperlなんかにはでてきてないよな。

新しいBLOGっぽいもの(欲しい機能とか)

ペインはpein。

最近blogって窮屈すぎだよなって思ってて、Ajaxとか最近のフレームワークでZen Gardenよりもはっちゃけなものつくれんかなぁとは思ってる。RSS配信してんだかから、逆にデザインとかは何やってもいいんじゃん、むしろ好きにやらせてくれな感じ。

ProductName Lifeform
Future Sound of London
Astralwerks / 1577円 ( 1994-05-26 )


the future sound of londonみたいなサイトなのにちゃんとRSS配信してまっせ、みたいな。

カテゴリ要らない

ビバマイクロコンテンツのこのご時世、基本的にRSSリーダーで読むんでしょ?とか。アグリゲータみたいなのでマージされたりフィルタリングされたりして再構成されていくんだったら、自分で構成する必要性ってあんまないじゃん。

だから、カテゴリとか要らない、タグで十分な気がしてる。それも、自分が自分のSBSでブックマークするノリでいいんじゃないかと。大体plaggerとかアグリゲータ使うの前提だと、自分のサイト内でカテゴリ分けをする行為の意味って希薄な気がする。セルフブックマークの延長で考えておけばいいんじゃないのとか。

コメントもいらないかも

SBSに長文のコメント貼り付ければ、それはブログとほとんど変わらんよなっていうしょうもないことに気がついて、ブログなんてURIに対するコメントか、URIじゃないものに対するコメントか別に区別しなかったら結局似たようなもんじゃんとか思って、SBSの枠組みの中に組み込めばいいんじゃないの?

はてなとかlivedoorのコメントをAPIかなんかでとってきて表示すればいいんだよ。スレッドが欲しいわけじゃないしな。けどスレッドっぽい流れのとき困るからコメントはあったほうがいいのかな。はてなブックマークにコメントにコメントする機能がつくんだったらコメントいらないや。トラックバックだけで十分。

permalinkどうすっかな

悩む。超整理法っぽく日付パーマリンクでいいのかな?これはわからん。

rssはいる。

コンテンツ読むのは基本的にRSSリーダーなんだろうから、RSSだけ用意しておけばいいんじゃないの? blogっぽい3ペインとか2ペインとかはもういらんのじゃなかろうか。

ホメパゲっぽい表現してもRSSさえ配信していれば問題ないような、、、。

ってかあの頃のカオスをもう一度。どうせRSSで読むんだったら、CatalystとかのMVCフレームワークで、viewのとこでblogっぽい出力する必要ないじゃんなんて思ってる。

というわけで、よくわからん自分好みのツールをTurboGearsで作ってみたいなぁという気運が高まっているのは事実。

pythonの@って

TurboGearsいじってたら、@exposeってのがあって、なんじゃろかーって初めてのpythonみたけど載ってなかった。

いろいろ、キーワード突っ込んでググってみたらやっとわかった。

IBM 魅力的な Python: デコレーターで魔法を身近に - Japan

最近ではバージョン 2.4 で「デコレーター (修飾子)」が拡張されています。デコレーターは、大抵のメタプログラミングを行う際の最新かつ、とびきりユーザー・フレンドリーな手段になります。

@expose("tgcommerce.templates.category")
def index(self):

はCatalystでいう

$c->stash->{template} = ...

sub end : ActionClass('RenderView') {}

と似たようなもんなのか。

いろいろ備忘録日記 - 01月23日の日記

デコレータとは、GoFのデザインパターンにある名前のやつと同じく なにかを修飾する機能を持つものです。pythonの場合は、 デコレート対象が関数およびメソッドになります。

あー、だから最初関数合成とかいう記述がみつかったのか。

関数合成みたいに考えると、MVCってCっていう関数でMをいじってVって関数でラップするって考えてもいいのか。

V(C(M))

みたいに。haskellだと

V . C . M

な感じになってんのかな。

CBlogをいじってます

TurboGearsのシンプルブログツールとして紹介されているCBlogをいれてみた。

このツールは、Development modeとProduction modeに分かれているのだけど、Production modeでは何故か動かなかった。ていうかエラーもでなかったのでちょっと原因不明。

Development modeで起動すると、こんな感じのblogっぽいテンプレートが出てきて、あとはwebからユーザーの設定とかすればすぐに使えそうだ。roleとか設定できるので多人数での書き込みも考慮されているっぽい。

  • いいとこ
  • カテゴリの部分がタグなんで階層型の区分けでないのが楽
  • マルチユーザー対応なので職ブロ(職場ブログ)とか便利かも
  • いまいちなとこ
  • マルチユーザー対応なとこ。blosxom代替品としての僕のニーズ的にはloginとか必要ないかも
  • ちょっとjavascriptのポップアップ多すぎ
  • 下書き保存機能がない。僕は書きぱなしの駄文が多いのでこれはつらい
  • devモードだとlocalhostでアクセスしないとあかん。

という感触だけど、色々と勉強になりそうなのでコード読んでみる。

タボギア教に入信することにしたヨ

blosxom重くてかなわんのでどうにかしようと色々考えた結果、TurboGearsで作ってみようかなと。

pythonマスターのきっかけになればと。

で、早速The 20 Minute Wikiなど作って感触を確かめてみた。モデルの管理をwebからできるのは楽。あとやっぱCatalystとは色々と違うなぁと。

CBlogでもいじって自分好みに仕上げていこうかな。

新しいサーバーにblosxomを移したりしてたが

新しいサーバーにblosxomを移そうとしているがやっぱ遅い、っていうか負荷かかりすぎ。あとは、自作の変なプラグインが入ってるので、cpanのモジュール入れたりするのが大変すぎ。あとこれだと、折角、サーバーのスペックあげても、容赦ないロボット来たらやられちゃうナァって感じの負荷量。

modだmodとか言ってModblosxomにしようかしらと思って、移行しようとしてみたけど、今の環境をそのままmodblosxomで動かすにはモジュール化しなければいけないプラグイン多すぎだ。

じゃぁ、いっそpyblosxomでpythonの勉強も兼ねていじってみようか。と思ってたら、Djangoのblogキットってのもあるらしい。悩む。turbogeasでも似たようなものあるのかな?

perlだったら、catlxomとかbifty、あとはTypefaceあたりな気がするが。

むー。ずっとblosxom使っていて気になってたのはやっぱ下書きを保存しておく機能がないとつらいよなってことなので、変えるんだったら下書き機能が標準でついてるやつ。

変えないんだったら、blosxomをもうちょいいじって、基本はstaticでサイドバーのコメントとかトラックバックとかJSONにするのがいいような気がする。あとはdynamic_cacheはスパムとか来るたびにrecacheで今までのキャッシュ消しちゃうので、こっちをなんとかしても、負荷対策になるような気がする。

LiveHTTPHeader

ここ何日かHTTP(S)の通信追ってきて、curlとかWWW::Mechanizeのトレースモードをずっとみてた。

で、ブラウザのヘッダーの追っかけが、かなり役立ったんだが、この LiveHTTPHeaderの便利さを改めて実感した。

LiveHTTPHeader

でも、ヘッダーだけだとわからないことも多かった。特にプロキシ介する場合に結局どこに問題あるのかイマイチ判明しないのには苦労させられたな。

2007.02.10追記

Webクライアントプログラミングの最初のほう読むと、LiveHTTPHeaderを結構使えるようになると思うんだけど。

ProductName Webクライアントプログラミング
クリントン ウォング
オライリー・ジャパン / ?円 ( 1997-09 )


が、絶版みたい

perlとかpythonで使える綺麗な描画ライブラリを探してみた

Radial clustergramsっていうクラスタリングの結果を円の形にして視覚的に分かりやすくするっていう論文があって、Anti-Grain Geometryというツールキットを使って実装されてるそうで、かなり綺麗に描けるみたい。

おーこれいいナァと思ってたら意外なところで似たような視覚化を見つけた。

du_scanner - miau's blog?

HDD が一杯になってどのファイルが容量を食ってるか確認したくなった時、私は Scanner というソフトを使います。

ハードディスクの使用状況を視覚的に確認できる「Scanner」v2.1

マインドマップ的な理屈(下の階層ほど外周部に表示される)で、情報が効率よく収まっているので気に入っているわけですが。

Perlのスクリプトも公開されているので、これを使えば、Radial clustergramsと似たようなことはできそうな気がする。

というわけで、GDでも使ってやってみるかなと思ったんだが、GDあんま綺麗じゃないし。AGGみたいな綺麗な描画ライブラリはないものかと脱線して描画ライブラリ探しに夢中になってた。

  • Anti-Grain Geometry
  • さすがに綺麗、でもc++用、swig使ってperlバインディングとか用意できるのだろうか?わからん。
  • Cairo
  • なかなかヨサゲ。Vector Graphics Libraryなのでかなり綺麗。
  • Matplotlib
  • pythonだったらこれかな。対話的にいじれるので調子いい。

それにしても、Matplotlib便利そうだ。あとでExamples 眺めてみよう。