MVCのVとCをブラウザに持っていったら?

« shivaken

「RESTful MVC」なアーキテクチャの話[Life is beautiful]を見て、そういう開発をやったのを思い出した。ただし、右半分だけである。

サーバ側にはモデルとそのラッパ(認証など)のみで、
ブラウザ側のJavascriptがControllerとView(Template)の役割を持たせる。
Javascriptでラップされたオブジェクトへのメソッド呼出が
サーバ側でのメソッド呼出と一対一になる。
間はXML-RPC。次のプロジェクトではJSONに切替えた。

問題は左半分側がないために、ユーザを不必要に待たせる時間が存在することだ。
なぜかというとJavascriptのロードが終わって実行されてからデータを取りにいくから。

初期の描画だけでもサーバ側でやればその問題はなくなるが、ビューを別言語で二つ書かなくてはならない。これは手間だし、バグの温床になりかねない。

でも今は違う。これからはサーバサイドでもJavascriptが使えるし、QUnitとかでちゃんとテストも出来る。となるとJavascriptで作った同じView Templateをサーバとクライアントで使える。

というわけで冒頭の方式が出てくるわけだ。
僕の場合、まあAjaxでどうせ「データオブジェクトを描画する」ところを書くならJavascriptでクライアント側で、と思ったのが出発点だったけど、
この方式には役割を明確化し、インターフェースを正しく定義することに
必然性を持たせる作用があるとLife is beautifulでは主張されている。
確かに役割が不明確になってControllerが肥大化とかあるある。

そういえばローカルストレージとかでもクライアントでのViewは重要になるね。
だれかJavascriptでのテンプレートエンジンをよろ。
[コメント(0)- トラックバック(0)- 2009-10-19 20:19]

PENTAX K-7評

« shivaken
娘の誕生にあわせてPENTAX K-7を買いました。
「ムービーをとって実家に送るんだい」と言ったら、嫁もろ手をあげて賛成。

6/27の発売以降、悩みに悩んで見送っていました。
というのもカメラの本体はすばらしいが、画質は前のK20Dに劣るという噂が。
でも買ってみたらそんな心配は無用でした。

それどころか、K10DやK20Dと同じ価格帯にも拘らず、
カメラとして、写真を撮るための能力アップがすばらしい。
  1. シャッターを切ったときの反動が80%低減(当社比)
  2. オールドレンズで必須の絞りこみ測光が劇的に改善、ほぼ無音で瞬時に終了
  3. そのおかげでグリーンボタン動作が快適
まとめると、つまりはシャッターの改善がすばらしいのです。
従来は一つのモーターでミラーアップと絞りの動作を行っていたが、
それぞれ専属のモーターに別けた、というのがその改善の肝でしょう。

別けたことでミラーの動作の終了時にブレーキをかけることができてミラーショックを低減、絞りの方も独立したことで2、3の様な効果が出た。

この効果は実際に撮影に出てみるとすごく実感します。(特にAEが効かないレンズで!)

次回はK10Dとの画質比較をしてみます。お楽しみに〜!
[コメント(0)- トラックバック(0)- 2009-09-30 23:58]

水平分離のススメ

« shivaken
IBM PCの互換機、AT互換機の成功は水平分離の力を類を見ない程強く示している。
様々な部品が規格化、モジュラー化されることによって大量生産のメリットを引出し、そして性能と価格で競争する。その結果が現在のPC製品と市場である。非常に高性能でありながら、低価格だ。
垂直統合の製品はまず価格で敗れ、次に性能を追い越される。最後に残るのは信頼性だ。だが、信頼性もいつかは追い付かれる。いつかは市場の縮小によってその信頼性を維持し担保するための資金が尽きるからだ。

実はここで取り上げたいのはPCやその眷族に関してではない。水平分離がいつかは訪れるかもしれない別の業界についてだ。それは自動車だ。
自動車製造も水平分離の時代? にあるように、実の所、中国ではすでにはじまっているらしい。インドでも格安自動車が規格されるくらいだからおそらくはじまっていよう。

もし自動車業界で水平分離が進んだら?まずはエンジンの会社ができるだろう。PCでいうならインテルだ。だがそれには駆動系との連結部分などについての規格化が必要だろう。電気自動車であれば、モータやバッテリはエンジンよりも水平分離向きではないか。シートなんかも量産しやすい。あとは制御系だ。ハンドルやブレーキ、AT回り、どれくらいの粒度が適しているか分からないがそれも市場原理で決まるだろう。

こうして車メーカーが部品の組合せによって製造を行うようになったらどうなるだろうか。まず安くなる。安全性は当然、垂直統合型より劣るだろうが規格化されれば試験も簡単になる。ユニットテストの結果は公表され、結合テストも低いコストで実施でき、いずれは追い付く。そして性能についてだが、電気自動車は垂直統合型よりもよくなるのではないか?モータ、バッテリは大量生産のメリットが生きそうだ。
と、ここまで書いて思ったのだが、内燃機関の車に取って代わる電気自動車の方が水平分離の方向へいく可能性が高い。いや、むしろ水平分離によって競争力が下支えされて内燃機関の車を駆逐するのではないだろうか。

もちろん、これは車好きにとっては大きな問題だ。性能はともかく、価格と利便性、ランニングコストで電気自動車が上回るようになればこれまでの車は立場がない。フィルムとデジカメの関係のように趣味としてしか成立しなくなり、やがてコストが熱意をも飲み込んでしまうだろう。そしてそれは雪崩のように訪れる。

さて、このようなシナリオを前に日本のメーカーはどのような動きをするだろうか。当然、今は垂直統合で電気自動車やハイブリッドを開発しているだろう。だが、それを売るだけではいずれ水平分離型に負けてしまう。ローエンドからはじまり、やがて高級車の手前まで侵蝕される。
それを避けたければ自ら撃って出るしかない。様々な規格を作り、その規格にあった部品を作って売る。その規格で車を組み立てるリファレンスも作る。
規格が市場のルールを作っていく。だから、それを他社に支配されれば水平分離の旨味もまったくない。日本のPCメーカーと同じ轍を踏むことになる。

水平分離は日本にとって悲劇でしかないのだろうか?いや、そうではない。例えば日本初のWIMAX事業者UQはむしろ「土管」になりたいと言っている。垂直統合へのこだわりが市場を小さくしてしまうのなら、市場そのものを広げるような戦い方も一つの道なのだ。スケールメリットがコスト優位性を押し進め、イノベーションを誘発する。
先手を取る日本が見たい。
[コメント(0)- トラックバック(0)- 2009-09-11 00:37]

mod_expires: ファイルの更新時刻からの経過時間を元にExpiresを設定するパッチ

« shivaken
Google Page Speedでこのサイトを計測したら、いろんなことを指摘された。その中の一つがLeverage browser caching、ブラウザのキャッシュを有効利用せよ、だった。
Leverage browser cachingの解説によると、httpレスポンスヘッダにExpiresもしくはCache-Control: max-ageによって最低一ヶ月、最大一年先を指定する様にと書かれている。(Expiresの方がサポートされていることが多いので推奨)
mod_expiresを使えばそんな指定は簡単だ。
ExpiresActive On
ExpiresByType image/jpeg "access plus 1 month 15 days 2 hours"

だが、しかし、このサイトではよく写真の差し替えをする。アップしたあとで色を調整し直したくなるのはよくあること。そんな時に差し替え前の写真のキャッシュがずっと使われるのはまずい。

なのでキャッシュの有効期間をアクセスしてから1日にしてみた。すると有効期間が短すぎてそれらのデータへのアクセス数が無駄に増加してしまった。

てことは、このサイトでは新しいデータのキャッシュ有効期間は短めがよく、古いデータは更新されないから有効期間はどれほど長くても構わないということになる。
これは他のサイトでもあることかもしれない。つまり、世代別CGみたいに生存期間が長いものは長く生きるべきで、短い物は寿命も短いとみなしてよい、みなすべき、ということ。

mod_expiresではアクセス時刻(A)または更新時刻(U)をベースとし、それに指定の時間を足して、キャッシュが無効になる時刻を設定する。

そこに、生成時刻もしくは更新時刻からの経過時間を生存期間と考え、それを元に
キャッシュの有効期限を設定する様にすれば比較的簡単に上記のような要求に答えられるのではないか。

ということでApache 2.2.12用でパッチを作ってみた。
httpd-2.2.12-mod_expires_uptime.patch

設定方法はこんな感じ
ExpiresActive On
ExpiresByType image/jpeg "uptime times 2"

この設定で生存期間(uptime) × 2をアクセス時刻に足したものをExpiresとする。

ちゃんと世代別にしようと思ったら、どれくらいをその分け目とするか、その上と下とでどういった値を使うか、など必要以上に複雑化してしまう。そこでとりあえずこんな仕様にしてみた。反響求む。
[コメント(0)- トラックバック(0)- 2009-08-07 23:45]

太りすぎは猫でもNGらしい。

« shivaken

こういうの大好き。ひさしぶりに爆笑した。
[コメント(2)- トラックバック(0)- 2009-07-26 22:29]

bsdiffとxdeltaを比較してみた

« shivaken
昨日の記事で出てきたbsdiff、実際に使ったことがなかったのだが、xdeltaよりも50%〜80%も出力する差分が小さいらしい。

ruby-1.8.7-p160とruby-1.8.7-p174を対象に比べてみる。
まず、元のサイズを調べる。
ruby-p160 949579 bytes (約928KB)
ruby-p174 950091 bytes (約928KB)

じゃあ、bsdiff、xdeltaで差分を作ってみよう。
$ bsdiff ruby-p160 ruby-p174 ruby-p160-p174.bsdiff
→ ruby-p160-p174.bsdiff 22152 bytes (約22KB)

$ xdelta delta ruby-p160 ruby-p174 ruby-p160-p174.xdelta
→ ruby-p160-p174.xdelta 152538 bytes (約148KB)

これはスゴいよ!確かにbsdiffで作った差分はxdeltaによる差分の15%程でしかない。念のため、復元をして、md5をチェックしてみる。
$ bspatch ruby-p160 ruby-p174_by_bsdiff ruby-p160-p174.bsdiff
$ xdelta patch ruby-p160-p174.xdelta ruby-p160 ruby-p174_by_xdelta
$ md5sum ruby-p174 ruby-p174_by_bsdiff ruby-p174_by_xdelta
41c7edda80df89b7ca3db108b65b255c ruby-p174
41c7edda80df89b7ca3db108b65b255c ruby-p174_by_bsdiff
41c7edda80df89b7ca3db108b65b255c ruby-p174_by_xdelta
と、ちゃんと差分からruby-p174を復元できる。

しかし、このbsdiffの10倍の性能を誇るGoogleの技術、スゴすぎる。
[コメント(0)- トラックバック(0)- 2009-07-20 09:00]

初代ガンダム無料放送byバンダイ

« shivaken
ガンダムの無料放送が今日7/20から始まっている。
初代ガンダムを全話、一日一話のペースで見れるらしい。これはすごい。

ブログに張り付けれるっとのことで、コードも取得したけど
初期化に時間がかかりすぎるのでやめた。

実物大ガンダムといい、30周年にふさわしい。
今年はほんとにガンダムの年だ。
[コメント(0)- トラックバック(0)- 2009-07-20 06:16]

Googleはスピード狂である。

« shivaken
Googleが最新の実行ファイルのアップデート方法を発表した。
[google.com][sourceforge.jp][mycom.co.jp]

Chromeのアップデートの際に旧版と最新版の差分をこれまでは純粋にバイナリのdiffとして配信していた。新方式に移行することで例えば190.1->190.4への移行に際して以下のようにデータ量を1/10程に出来るという。
Full update10,385,920
bsdiff update 704,512
Courgette update78,848

ではこの新方式とはいったいなんであろう?
Google Chromeの公式ブログには以下のような説明がある。
server:
asm_old = disassemble(original)
asm_new = disassemble(update)
asm_new_adjusted = adjust(asm_new, asm_old)
asm_diff = bsdiff(asm_old, asm_new_adjusted)
transmit asm_diff

client:
receive asm_diff
asm_old = disassemble(original)
asm_new_adjusted = bspatch(asm_old, asm_diff)
update = assemble(asm_new_adjusted)
 ※ここでoriginalとは旧バージョンのことと思われる。

まず、サーバ側では旧版、新版ともに逆アセンブルを行い、実行ファイルにコンパイルされる直前のデータに起こしてから、その差分を転送する。
クライアント側では手元にある旧版を逆アセンブルし、ダウンロードしたパッチをあて、アセンブルする。

最適化が施され、大きくなりがちなバイナリ差分よりも、その手前のデータの方が
差分が小さくなるというのは納得しやすい。
デメリットはクライアント側に逆アセンブル、アセンブルを行うプログラムを仕込まなければならないことと、その実行時間がせっかく短縮したダウンロード時間を相殺するのではないかということくらい。
これくらい複雑な仕組みを導入するに足る、転送量が減るということは大きなメリットだ。Chromeはバックグラウンドでアップデートを行うため、CPUを使うのはいいが、ダウンロードは帯域使用によってユーザの環境をも圧迫する。

ところで、Linuxのアップデートに使われるyumにはそのような差分アップデート機能はない。常にフルアップデートだ。そろそろどうにかならないものか。
そういえば7zipと同じ圧縮方式のxzをGNUが採用したらしい。
ringサーバにはcoreutils-7.4.tar.xzがあるとのこと。
coreutils-7.4.tar.gz - 9708910B
coreutils-7.4.tar.xz - 4048924B
gzipの半分以下とは…。

とにかく、Googleのスピード狂、チューニング狂っぷりには執念を感じるほどだ。Page Speedもある。そういった部分、単純に尊敬する。
[コメント(0)- トラックバック(0)- 2009-07-19 12:38]

ノイズキャンセリングヘッドホンの威力

« shivaken
車、飛行機、電車の中に溢れる騒音を消すことが出来たら、
どんなに快適だろうか?

実は音に逆相の音をぶつけると消える。波だからだ。
簡単な理屈。でも、これを実際にやるのは難しい。

まず、マイクなどで実際に存在している騒音を捉え、そのデータを元に打ち消す音を作ることになるが、それだけでは正確にキャンセルできない。測定する場所と音を聞く場所が違うからだ。それに音はそんな処理をしている内にもどんどん進んでしまう。

そんなわけで、なかなか実現しないと思われていたこの技術も実はそろそろ商品になって普通に売られるようになった。まずはヘッドホンタイプからだったが、最近カナル型のイヤホンでも出ている。しかも手を出せない値段ではない。

ちょうど6月末にSONYの新商品NC33が出たので買ってみた。
※7/7現在、Amazonで6,811円。

電車の中はもちろん、人の声でガヤガヤしたところ、歩く音が反響するような建物内など、いろんな所でノイズをフーッと消してくれる。突発的な音はある程度残るけど、ずーっと続く音をしっかり捉えて、まったく感じさせなくしてくれる。こうなると、音楽をしっかり聴くことが出来るのはもちろん、騒音がないことで信じられないくらいリラックス出来る。付け加えるとこのNC33、そこそこ中低域も出ていい音。

家の外で音楽を聴くなら、間違いなくお薦めだ。
[コメント(0)- トラックバック(0)- 2009-07-07 01:09]

Google Waveがもたらすもの

« shivaken
GoogleがGoogle Waveという新しいコミュニケーションメディアを発表した。
ぱっと見、IMのようなリアルタイム性をメールに付加した物と思ったが、よくよく考えてみるとコミュニケーションにおけるメールの問題点を克服し、さらに上を目指すものであることがわかる。
  1. 文脈(コンテキスト)の共有を重視している。
    メールベースのコミュニケーションでは関係者をCCに入れることによって
    情報の共有を図ることが多々ある。
    その場合、途中で参加する場合、情報を中途半端に受け取ることになる上、
    事細かな経緯を知ることも出来ず、親しい者に情報をリクエストすることになる。
    Google Waveであれば時系列にポストされる状況を再生することができ、
    上記のような問題を回避できる。この点は途中参加の場合だけでなく、
    過去を振り返り、確認する際にも有効に違いない。
    ※音楽プレーヤーのように巻戻し、再生、早送り、そして逆再生が付いている。

  2. プライベートメッセージ
    Waveへの参加者に対して開かれたコミュニケーション以外にも
    特定の参加者との間の閉じたコミュニケーションも可能だ。
    ただし、操作ミスをすれば、悪口を本人にCCしてしまうのと同じ危険は残る。

  3. 本体へのリンクを保ったコピー
    ブログ、モバイル、SNSへの埋め込みを可能にすることによって、
    継続的なコミュニケーションをサポートしている。

  4. オープン性
    GoogleはGoogle Waveのプロトコルを公開し、オープンソース化するとしている。
    これも一つの大きな特徴だ。上記の特徴のうち、1だけであれば、リアルタイム化したSNSというだけで終わってしまう可能性がある。Googleに自分のコミュニケーションを握られたままでいいわけがない。とくにビジネスではそうだ。だからこそ、オープンにし、それを使った囲い込みにこだわらないというのだ。

  5. プラットフォーム化
    Wave上でGadgetとよばれるプチアプリケーションを動作させることができる。
    このあたりはFacebookやmixiアプリみたいな方向かな。

僕が一番注目しているのはいうまでもなく、コンテキストの共有だ。
ある意味、Bugzillaが普通のコミュニケーションに使われるような感じ。
問題へのフォーカス、興味へのフォーカス、イベントへのフォーカス。

これがどの程度広まるかはちょっと予想できない。
でも、ブログもSNSもTwitterも広まった。
便利でフィットする状況があれば、使うのだ。

仲間うちでのバーベキューの準備のようなライトな用件から、
時には数社のチームが集まるプロジェクトなどで使われる。
そうなった時にはもう、なくてはならない物になっているはずだ
[コメント(2)- トラックバック(0)- 2009-06-02 21:27]

父親としての目覚め

« shivaken
僕よりも一足先に父親になった人が
子供について語ってくれた。

「自分の命よりも大切なものだって、見た瞬間に分かる。」

ひょっとしたら
僕よりももっとパパニティブルーになったであろう彼が、
そう、シンプルに事実として言う。

目頭が熱くなった。

さ、名前を考えなきゃね。
[コメント(0)- トラックバック(0)- 2009-05-14 22:17]

一角獣がもたらす希望

« shivaken
ガンダムの新作が2009年冬にアニメ化されます!
その名も機動戦士ガンダムユニコーン(wikipedia)。

初代、Z、ZZ、シャアの反乱に続く宇宙世紀0096が舞台で、
宇宙世紀に移る西暦最後の日がプロローグとして描かれる。

設定をしっかり継承してるちゃんとした続編ってことになるわけで、
それほどガンダム好きじゃないはずなのに、とてもうれしい。
実はスタッフも安彦良和、大河原邦男、カトキハジメ、とすごいメンバーが揃ってる。

何気にユニコーンのUCと宇宙世紀(Universal Century)のUCが掛けてある。ふふ。
[コメント(0)- トラックバック(0)- 2009-04-28 22:30]

ワインマーケット

« shivaken
tohoワインマーケット、よく通うようになって半年くらいかな。
最近、ここの1000円以下のうまいワインを楽しむようになってて、
今日も買いものついでによってみた。


大きな地図で見る

すると、なんと閉店セールをやっている。
まじですか?

なんと3/31で閉店だそうです。

悲痛な気持ちになりながら、5本のワインを買って帰りました。
閉店セールで安くなって3800円ちょっと。

うう、悲しいけれどもう一度買いにいこうと思います。
いままでありがとう。
[コメント(0)- トラックバック(0)- 2009-03-20 19:25]

initrdで/をLVMに。

« shivaken
initrd, 通常はブートに必要なモジュールの読み込みや初期化を行うために使われる。
例えば、rootのファイルシステムがext3で、
ext3のモジュールはそのパーティションにある、と言う場合、
なんとかしてext3モジュールをカーネルにロードさせる必要がある。

まるで鶏と卵の様な関係だ。
卵をファイルシステムをマウントすることとして
鶏をext3モジュールとして見立てるとしたら、
この場合、卵を産む鶏をタイムマシンで持ってくるようなもので、
卵が生まれればその後得られる鶏には用がない。
さしずめinitrdのイメージファイルがタイムマシンか。

さてさて、僕はパッチを当てるためにカーネルビルドを自分でしてから、
自分のマシンでは出来合いのカーネルを使うことはほとんどなくなった。
そろそろ10年?初ビルドは2.2.12だったかな。

もちろんそのころにはinitrdのことなんかロクにわかってなくって、
ファイルシステム用のモジュールとかLANカードのモジュールとか
モジュールにすることをあきらめて組み込んで使った。
だって、ひと手間いらなくなるんですよ。

自宅のマシンはそんな状態をずっと保ってきたけど、
ついにinitrdが必要になった。rootパーティションをLVMに移行するのだ。
mkinitrdでLVMを有効化しないとね。

SourceMageの場合
mkinitrd --enable-lvm -o /boot/initrd-2.6.28.img 2.6.28

おっとmkinitrdが古すぎてLVMのデバイスファイルが作られない。
でも、あわてずmkinitrdを改造。必要な分だけ組み込むことにした。

これでrootが一杯一杯になってもコマンド二つで拡張できる。

※SourceMageのWiki, 日本語訳ページを見つけて驚いた。
でもリンク先にはめちゃくちゃな機械翻訳があるだけだ。残念。
[コメント(0)- トラックバック(0)- 2009-03-18 00:29]

It's easy to miss something you're not looking for

« shivaken
Gigazine自分の注意力がどれほどのレベルかわかるムービーより。

ご丁寧にドメインdothetest.co.ukをとって行われているキャンペーン。

左の動画から見てみよう。
白のチームのパス回数は?との質問に続けて、もう一つの質問が来る。

右はGigazineでは紹介されていないが、
これも英語力をフル回転させて見てみるといい。

もちろん、僕は企画側の意図に完全にのせられてしまった。

主題に沿った部分のできはもちろんだが、
この二つのムービーはなんとも言えないテンポのよさがあるように思う。

と、ここまで書いて、実は下の方にもいくつかムービーがあることに気づいた。

つくづく思うが、人は自分のみたいものしか見ないというのは本当だね。
[コメント(0)- トラックバック(0)- 2009-03-13 21:55]

パッシブフィンガープリンティング

« shivaken
先日のsimscanの話で、

> RELAYCLIENTでない時にはNOP0FCHECK=""が必要だそうです。

ということを書きましたが、なんで?というところに踏み込んでなかったので
調べてみました。

まずはsimscanのソースの中でNOP0FCHECKを含むところを検索。
すると、該当個所ナシ。

え??

じゃあ、qmail?聞いたことないけど?
→やはりqmailにもNOP0FCHECKを含む行はなし。

そもそもNOP0FCHECKってどこで切るのかがまずわからない。
NOP_0F_CHECK?

でもいろいろ探して見つけました。

NO_P0F_CHECKが正解。
P0Fってのは?
→ パッシブフィンガープリンティング。
受け取ったパケットを元に通信相手のOSの情報を類推する方法。

NMAPで通信先のOSを調べる方法があるけど、その場合はまず、
こちらから通信を始める必要がありますね。
でも、向こうからコンタクトしてきている場合でも同じように調べられるのです。
パッシブソナーみたい。

ボットにやられたWindowsマシンがスパム送信に使われていることが多いから、
p0fでWindowsマシンと判断した場合にスパムスコアを高めに設定する、そういう
ことに使われてるみたいですね。

stoneを作った仙石さんもこんな風につかってます。スゲーすね。

では元の話に戻りましょう。実はsimscanはp0fを使う機能ももってたので
NOP0FCHECKなんて環境変数が意味あったのですが、
1.4.0にてそれを削ってしまってました。(by ChangeLog)
qmail-smtpdへのパッチにするって開発者の方が話してますが、見つからず…。

simscanの1.4.0が出てから意外と時間も立ってますし、
次期バージョンではbogofilterとかさらにいろいろ組み合わせてくるでしょう。
そのときにはcontribにちゃんとパッチが入ってくると信じて、
とりあえず待つことにします。いま、そんなにスパムに困ってないし。
でも、p0fってのは結構おもしろい仕組なので、
引き続き興味あるネタがあれば追っていきます。
[コメント(0)- トラックバック(0)- 2009-03-12 22:47]

物欲→調理器具

« shivaken
今日はとある用事で塩原にある業務用厨房用品店にいってきました。
久しぶりですが、昔は近所に住んでいたときにはなんども来てました。

お目当てはパエリアパン。スペイン料理のパエジャ(パエリア)専用のフライパンです。
スペイン語学習には行き詰まりつつあるけどスペイン料理は大好きなんだ〜。
いつか作りたいパエジャ。パエリアパンとサフランを手に入れたら、、と
思ってたのでした。

で、さすが専門店、ここにはパエリアパンが2、3cmきざみであり、
僕は26cmの物を選びました。2〜3人前くらいと思います。

あと、驚いたのがパスタマシン!8700円くらいであるんですね!
フェットチーネとか、ラザニアとか作れます。
いまぱっとネットで調べたらさらに安いのもちらほらあります。
意外とカッター式以外にも押し出し式とかもあっておもしろいです。

トマト系とかには極細が好きだから、そんなのも出来るといいですね。

「まずマシンなしで打ってみる事を断然すすめる。」という記事を見たので今度時間のあるときに挑戦してみよっかな。

結果はまた写真ブログの方に載せまっせ。
[コメント(0)- トラックバック(0)- 2009-03-11 17:42]

ほんの少し

« shivaken
最近のテーマ
ほんの少し無理してみよう。
ほんの少しがんばっててみよう。
ほんの少し背伸びしてみよう。

ちょっと大変だなぁ、ってとき、
そこまでやらなくても、ってとき、
でもあと一歩で違うなにかが得られるかもってとき、

尻込みせずにやってみる。
意外といいことある。

あ、明日から3月だ。
[コメント(0)- トラックバック(0)- 2009-02-28 10:12]

simscanでqmailを快適に。

« shivaken
owls-nest.netではMTAとしてqmailを使っています。
qmailは意外と古くなってしまっていて、
いくつもパッチを当てないと現代的な使用方法に
対応できない問題も出てきてしまってます。
※SPF、アンチウィルスやスパムフィルタとの連携機能など。

Postfixへの移行もありでしょうが、Postfixでもclamd, spamassassinとの連携を
やろうと思ったら、やっぱり別のパッケージが必要になるようで、
それならqmailでいいや、と思いました。

qmailにはメールを配送用スクリプトの.qmailの中で処理する方法があり、
受信用アカウントが限られている場合にはシンプルで簡単です。

ですが、受け取り時にスパム判定などが出来るのであれば、
ログも汚れませんし、うれしいです。

ちょうど、最近、qmailでclamd、spamassassinとの連携に使われてきた
qmail-scannerを置き換えるsimscanに出会いました。
Cで書かれており、qmail-scannerがperlで実装されていることから来る性能と
セキュリティの問題を解決します。

■インストール、設定について

インストールは非常に簡単。
よくあるGNU Autotoolsを使ったタイプで、configureの際に
--enable-clamav, --enable-spam,などで連携するパッケージを指定し、
--enable-quarantineや--enable-dropmsgなどで
引っかかったメールの扱いを決めます。
そして、make; make install。
おっと、configure前にuseraddでsimscanを追加しておく必要があります。

# groupadd simscan
# useradd -g simscan -d /var/qmail/simscan -s /sbin/nologin simscan

--enable-per-domainをつかうなら/var/qmail/control/simcontrolに

windows-user@local.domain:clam=yes,spam=yes,spam_hits=8.0
@virtual.domain..domain:clam=no,spam=yes,spam_hits=5.0
:clam=no,spam=yes,spam_hits=8.0

って感じで受け取りユーザごと、ドメインごとの設定を書いて
simscanmkでcdbにします。

# /var/qmail/bin/simscanmk

テストはこんな感じ。

# echo To:root | QMAILQUEUE=/var/qmail/bin/simscan /var/qmail/bin/qmail-inject
simscan: starting: work dir: /var/qmail/simscan/1235480180.547260.26302
simscan: calling clamdscan
simscan: normal clamdscan return code: 255
simscan: calling spamc
simscan: calling /usr/bin/spamc spamc
simscan:[26301]:CLEAN (7.30/8.00):0.1081s::(null):root@local.domain:root@local.domain
simscan: done, execing qmail-queue
simscan: qmail-queue exited 0
ちゃんとspamcを呼び出してますね。

あとはqmailがsimscanを使うように設定します。
環境変数QMAILQUEUE=/var/qmail/bin/simscanを
qmail-smtpdに与えたり、tcprulesを使っていればtcp.smtpd.txtにて
スキャン対象の接続元につけたりです。どちらの方法でもOKです。
127.0.0.1:allow,RELAYCLIENT=""
192.168.1:allow,RELAYCLIENT=""
:allow,NOP0FCHECK="",QMAILQUEUE="/var/qmail/bin/simscan"

RELAYCLIENTでない時にはNOP0FCHECK=""が必要だそうです。

ハマリどころはqmail-scannerと同じく、spamcやclamdをユーザ権限で動かす
場合の各種ディレクトリ、ファイルの権限設定とかですね。
どうにも動かない場合はrootにするのが一番楽です。

ということでqmail-scannerよりも高速になるsimscan、ぜひ使ってみてください。
[コメント(0)- トラックバック(0)- 2009-02-24 22:13]

ギターをメンテするなり

« shivaken
皆さん御存じのとおり、Owletはしばらく活動を休止します。
発表から今日で一週間です。

実は先週、僕がライブもせずに腐ってしまうのではないかと
心配して友達が電話をくれました。

ソロでもやったら?
何かの楽器でいっしょにやらない?

思ってもみなかった。そんなこと言ってもらえるなんて。

そんな訳で、久しぶりにギターを手に取り、
Owlet結成前のソロの曲を練習しました。

すると、気づいてなかったわけじゃないけど、
弦高が高すぎて弾きにくい!

それもそのはず。Owletの活動が本格化する直前くらいに
弦を支えるナットとサドルを別のものに交換していて、
ソロのときにベストだったものと結構違ったのです。

# Owletではほとんどカポありなので、あんまり気にしてなかった。


これは今まで使ってたナットとサドル
ということで当時のナットを探してきて、取り換え。
そいつはちょっとビビリがあったから交換したんだけど、
とりあえず、いまは問題なし!

交換してみて,,
1. 弦高が下がってかなり弾きやすくなった。
2. チューニングのときの弦の滑りがメチャクチャいい。


交換後。椿油でチェルシーみたいな色。

1は当然として、2はほんと違う。
実はこの昔のナットは自分で椿油に半年つけてから加工した物。
まさかこんなに違うとは。

あと、サドルも久しぶりに象牙に変更。
こいつは音がスゴく変わります。
中域の主張が出て来る感じ。
でも牛骨の方が骨太な気がするんだよね。
どっちがいいかはもう少し考えるかな。

久々だけど、とにかくギターと1対1で向き合うってのは楽しい!
[コメント(0)- トラックバック(0)- 2009-02-17 00:23]

WipEout®HD

« shivaken
PS3をようやくネットにつないだら、PlayStation®Storeというのがある。
ここで結構いろんなゲームの体験版がダウンロードできるみたい。

そのなかで僕の目を惹いたのはWipEout®HD



もともと、スーファミ時代、F-ZEROに兄弟みんなではまってたこともあって、
こういうサイバーな雰囲気のレースゲームは大好き。
でもドリフトを駆使するSEGAラリーも好きだった(余談。

体験版はマシンも選べず、コースも一つ。
でも、スピードパッドを通って加速する感覚、
主観モードで走り抜ける感覚。
そして反則じゃねーの?ってくらい強力な武器が魅力。

そういえばF-ZEROは好きでもマリオカートにはなぜか馴染めなかった。
だってバナナの皮とか、なんなんだよ!みたいな。

でもWipEoutの武器はなんかそういう風に感じない。
オーソドックスなミサイル、機関銃、自動追尾ロケット、そして地震。
たぶんカッコいいからだと思う。地震のエフェクトなんてマジスゲー!

ってことで、体験版のコースで一位をとった後、フル機能版の方を
Storeで買っちゃった。1,800円。おもしろいことにWipEoutはダウンロード販売のみ。

# 僕はクレカで買ったけど、FelicaリーダライタがあればEdyも使えるみたい。

特別人気があるわけでもないみたいだけどハマる人はハマるよ!
PS3持ってる人はとりあえず体験版やってみてよ!
[コメント(0)- トラックバック(0)- 2009-02-12 00:19]

アップデートな週末

« shivaken
枯れた環境でいいじゃないか、
ソースからビルドでアップデートなんて
時間を無駄にすることじゃないのか、、

そんな考えに捕われることもあります。

でも、

石橋は壊しながら渡れ、な人達が作っているLinuxなのです。

Linusのクリスマスプレゼントだった2.6.28は僕のこころに
訴えるものがありすぎました。(→Linuxカーネルウォッチ 参照)

ってことでLinuxカーネル最新安定版2.6.28.3をインストールして
ツリー外のモジュールのビルドなどに勤しみました。

あとはudev回りでSDカードを挿したときの挙動を設定してみたりとか、
KDEを4.1.2 → 4.2.0にしてみたりとか。
あと、Firefox-3.0.6もだね。

で、リブートすると起動せず。

原因はudev回りでinitスクリプトをいじってたからでした。

そんなこんなしながら、いまはQt/KDEのrubyバインディングを試してますが、
Qtの方は問題なさげだけど、KDEバインディングはプリミティブなサンプルも
動かない惨状。KDE::Application.newでErrorがでるなんて。

いやー。無謀なアップデートは楽しい!

さ、Ruby1.9.1も試さなきゃね。
[コメント(0)- トラックバック(0)- 2009-02-09 23:53]

テレビ、寿命がキタ

« shivaken
中古で買って2年半程になるブラウン管テレビがおかしくなった。
どうやらつけて5分くらいは画像がまともにでない。

買い替えるのにどれがいいかWebで見ようと思って
思い出した。デジタル放送ってばチャンネル切替えがパッとできない!

なんかこれを軽減するしくみをもってるテレビってない?
ザッピング大好きなんだい!
チャンネル変えまくりたいんだい!!
[コメント(0)- トラックバック(0)- 2009-01-29 21:57]

マシンの富豪化

« shivaken
先週、理由あって平日休み。
この機会にずっと買いたかったパーツを大量購入してきました。
  • メモリ DDR2 PC6400 2GB x 2
  • メモリ SDRAM SODIM 256MB x2
  • ギガビットイーサカード
  • メモリカードリーダ内蔵型

とにかく久しぶりにドンッと買ったので楽しかった!
買いもの依存症の気持ちが分かった。

これで今のマシン、メモリが6GBになりました。
VMWareでwindows2000とvistaを同時に立ち上げたりできる!

あと地味によかったのが内蔵型メモリカードリーダ。
SDカードの抜き差しが楽。速度も申し分なし。

LANカードは家サーバに差してPS3をようやくネットワークに。
でも何故かプレイステーションネットワークには接続できず。
どこかでパケット落してるのかな。

あと、それでUPnP対応を目指して家サーバにlibupnpとLinux-IGDをインストール。
でもPS3での動作確認完了まで出来ませんでした。ネットにもあんまり資料ないorz.
最近はルータも安いからLinuxでわざわざやってるひとも少ない?

とにかくいろいろ安い今。PC自作派は楽しい!
春にはAM3マザーとPhenom IIを狙うのだ!
[コメント(0)- トラックバック(0)- 2009-01-27 00:24]

Windows7β

« shivaken
うちではLightroom専用でVistaを使っているんだけど、快適とはほど遠い。
というわけでVistaよりもずいぶん評判のいいWindows7のβを試してみた。

うまくダウンロードできず、結構苦労したけどインストールはスムーズだし
起動後もさまざまな点でレスポンスのよさにびっくり。
たしかにブラッシュアップされたVistaといっていい。

LightroomもVista上で使うのと比べぱっと見で分かるくらい使い勝手があがった。
そんななか一つだけ珍現象が。

ロゴの部分が上下反対になっている!
どんな理由でこんなことになっているのかさっぱり分からないけど、
とても不思議だったので掲載。
ちなみにLightroomは最新の2.1ではなく1.4.1。
[コメント(0)- トラックバック(0)- 2009-01-18 18:22]

ケーブルにまでこってみる。

« shivaken
こだわり、色んなところで目にするキャッチフレーズだけれど、
どんなところに、なぜ、こだわったのか、全てを聞くことはなかなかないかもしれない。
ということでshivakenのこだわりの一つ、ケーブルについて。

ケーブルは日本、長野のこだわりメーカーMOGAMI NEGLEX2534。
ここのケーブルはとにかく、何も足さない何も引かない。
ケーブルってのはそういうもんだぜ、小僧。っていう感じの職人さんの姿が浮かぶ。

で、プラグ。これも重要。でも実際にちゃんと比べてみたのは昨日。
なかなかそこまでの時間がとれなくって。。

ギター用でNo.1の人気なのはSWITCHCRAFTというメーカー。
楽器屋さんで売ってるギター用ケーブルを見れば結構シェアが高いことが分かる。
標準といっていい。

もう一つ、ギター用ではあまり見ないけどマイク用などでかなり高いシェアを誇る
プラグメーカー ノイトリック。

大した違いはないかと思っていましたが、比べてみてすぐに違いが分かりました。
SWITCHCRAFTの方はマグネットピックアップらしさが出てきて(中域あたりかな)、
対するノイトリックの方が自然なバランス。SWITCHCRAFTの方がコンプ感があるような、
でもちょっとハイがクリアなような。

ということで今後はノイトリックをメインにすべく、ライブで使うケーブルの作成に取り掛かります。
ついでに抜くときにバン!ってならないサイレントプラグも今回初挑戦してみます。

もともと2ndCDの録音用に始めたケーブル自作。
ちょっとずつではありますが、Owletの音質向上の努力は続きます。乞う、ご期待。
[コメント(0)- トラックバック(0)- 2009-01-13 01:09]

弐瓶勉 - SNIKT!

« shivaken
弐瓶勉が好きだ。

一年前くらいにBIOMEGAの1, 2巻を手始めにABARA, BLAME!を連続読破。

なんというか弐瓶作品の一番の特徴は建築の素養を元にした空間構築なんだと思うけど、
写真を趣味とする人間として、感銘を受ける構図が多い。ってか衝撃。
でもそれをベースに展開される世界観に浸る感触がなんとも言えない。
生を考えさせられる、冷たいというより暗く冷えた空間。あ、それはBLAME!の場合か。

で、X-MENのウルヴァリンを主人公にした英語版のみ存在するSNIKT!を
今日、ニコニコ動画で発見。http://www.nicovideo.jp/watch/sm2896948

これ、BLAME!の空気感が好きな人間にはたまりませんよ!
英語版だけど買ってしまうか悩む。
日本語で出るなら予約してでも買う。

9月には、いままでに読み切りで掲載された作品が単行本として出版されるらしいので
メチャクチャ待ち遠しい。
[コメント(0)- トラックバック(0)- 2008-08-11 00:55]

原点に立ち戻って、

« shivaken
先日、ふと本屋によってプログラムに関する本を買いました。

Binary Hacksという本で、プログラムの動作に関わるちょいと
深い所に立ち入ってみようってな感じ。

僕はパソコンを使いはじめたのはレポートとか卒論を書くためだったので、
もともとはプログラミングに興味ありませんでした。
実験データの整理とかをするところから始まり、
Webページを作ったり、シェルスクリプトを書いたり、
最近、ようやくCをちょっと使えるようになりました。

そんなわけでBinary Hacksにも手を出してみたんですが,
まだまだ勉強不足みたいです。。

ただ、これを読んでて卒研やってたころのことを思いだして、
その延長線上にある本も探して買いました。

名前は知りつつも習わなかったウェーブレット変換
フーリェ変換は卒研でも使ったんだけど、
その弱点を乗り越えるために考え出されたものです。

そっちを勉強してたら実際データを変換してみたくなってくる。
いろいろ探して昨日、ウェーブレット変換が入ってるライブラリを見つけました。

GSL - GNU Scientific Library。

その名にふさわしく科学技術計算に関する様々な機能を備えている模様。
Ruby/GSLという完全なRubyバインディングもあるようなので、
時間を作っていろいろ試してみたいな〜と考えとります。



--
shivakenブログをちょっとだけ分離できるようになったから
こんなことも書いてみたけど、どんな人達が読んでくれてるのか予想つかず、
どこまで書いていいものやら。。
早くも暴走気味ですが、よろしくおねがいします。
[コメント(2)- トラックバック(0)- 2008-02-28 00:16]

ミュージシャンとクリエイティブ・コモンズ

« shivaken
ちょっと驚きのニュースがやってきた。
FM福岡が著作権を題材にした番組を
クリエイティブ・コモンズというライセンスで公開したという[参考]
BY-NC-ND(表示-非営利-改変禁止)で公開

著作権によって強力に制限されるのが当然とされているなかでのこの動きは
コモンズに賛同するクリエイター達を勇気づけてくれるに違いないと思う。

クリエイティブ・コモンズってのはローレンス・レッシグという
米国の法律学者が提案した、著作物をできるだけ
オープンで自由なカタチで公開するためのライセンス。

著作者は制限する事項を選択し、利用者は制限に抵触しない限り利用が許可される。

例えば今回のBY-NC-NDでは、
  • 表示. あなたは原著作者のクレジットを表示しなければなりません。
  • 非営利. あなたはこの作品を営利目的で利用してはなりません。
  • 改変禁止. あなたはこの作品を改変、変形または加工してはなりません。

ミュージシャンとしてのコモンズとの関係について
コーネリアス/小山田圭吾さん(インタビュー、2005/1/12 初出)も語ってて、
サンプリングを使った音楽へ著作権の影響が意外と大きいことが分かる。

実はOwletもクリエイティブ・コモンズでの音源公開を考えている。
自由に聴いてもらうことも何らかの形で僕等のプラスになるし、
二次創作物への利用もうれしいことだよ。

さあ、それじゃあ、その番組「コピーの品格」を聞いてみよう。
[コメント(1)- トラックバック(0)- 2007-11-29 21:02]

新エネルギー時代

« shivaken
大豆、とうもろこしを元にしたバイオエタノールの利用が
アメリカで進んだことで一気に脱化石燃料の機運が
高まっているように思います。

でも、そのせいで食糧の供給が不安定化し
価格の高騰が始まってますし、
なにより環境負荷の点から言えばエネルギー効率が低くて
諸手を上げて歓迎できるものではないみたい。

数年もあればサトウキビの廃材とかからも
エタノールが生成できるなんて話もあるので技術革新に期待、
と思っていたらWIRED VISIONにエネルギー関連のニュースが2つも。



エネルギーの供給が各国で柔軟に行えるようになれば
中東情勢に左右されなくなるというのはうれしいことです。

とは言っても寒くなってきたし
暖房用の灯油でも買いに行かねばですね(´・д・`) 。。
[コメント(0)- トラックバック(0)- 2007-11-18 02:11]
Twitter、フォローしてちょ
OwletのCD売ってます!