Exception Diary
2007.06.02 [Sat]
_ Image Galleryにスライドショー機能を追加
こちらの更新もずいぶん久しぶりになってしまったが、自宅サーバのtDiaryの写真データは順調に増え続け、すでに3000枚を超えてしまっている。去年、良いカメラが欲しいと嘆いた反動で、ビデオはSONYのHDR-HC3、デジカメは一眼レフのNikon D50を買っちまったりして、毎週順当にHDDの空き容量を減らしまくっている。
画像の枚数が増えてくると、tDiary Image Galleryで表示画像を手動で切り替えるのがだんだん面倒になってくる。のんびり寝転がって流し見したいというリクエストもあり、だいぶ前からスライドショー機能を追加するべく、良いビューアがないか探していた。(自作すればいいのにというツッコミは私の能力を勘案し華麗にスルーさせて頂く)
ここで見つけたのがSmoothGalleryというjavascriptで書かれたビューアである。こちらのページにサンプルがあるのだが、javascriptのみで書かれているというのが信じがたいほどよく出来ている。Webページへの組み込み方もシンプルで、これなら簡単にImage Galeryに組み込めると踏んだ。
で、実際に作ってみたのがこちら。新たにSlideモードというのを作って、"mode=slide"というCGIパラメータで呼び出せるようにしてある。ListモードとSlideモードは、Page表示の右側、[SLIDE][LIST]というリンクで切り替えることができる。SmoothGalleryを使ったSlideモードでは、タイマーでの画像自動切換えのほかにも、フィルム・ロール風の画像セレクタをプルダウンで表示できたりと、非常に洗練されたGUIを実現している。ぜひ、実際に操作してみて凄さを確認して欲しい。いやほんとにこれは良い。
NIKON D50, 18mm, F11, 1/500sec., ISO200, +0.0EV
2007.06.03 [Sun]
_ SmoothGalleryの画像サイズ
前日、SmoothGalleryを褒めちぎったわけだが、一つ残念なのは、SmoothGalleryが画像の縮小をしてくれない点だ。エリアをはみ出す大きなサイズの画像だと、真ん中の部分しか表示してくれない。絵日記プラグインの拡張版(image_ex.rb)では、画像をアップデートするとサムネイルも自動で作ってくれ、日記にはサムネイルの方を貼り付けることができる。この機能を使って、私はtDiaryを「デジカメで撮ったままの(リサイズしていない)ファイルの保管庫」というイメージとして使っていた訳だ。これを何とかしなければいけなかった。
色々考えたが結局、こちらのドキュメントにもあるように、"image-gallery.use_mid_image"というパラメータを作った。これをtrueにすると、(1)サムネイル、(2)SmoothGallery用の中間サイズ画像、(3)元画像の三種類のサイズのファイルを、それぞれのモードで使い分けるようになる。ディスク容量が勿体無い感じだが、あまり深く考えずまずはこれで行くことにする。必然的に、image_ex.rbがサムネイルと中間サイズ画像を生成してくれないと困る訳だが、この改造をしたものをこちらに置いておく。中間サイズ画像は640x480の固定で、日記の画像のクリックでImage GalleryのViewerモードに飛ぶようにもしてある。
Imaga Galleryを使っているサイトを見ても、640x480を超えるサイズの画像をアップしているところはほとんどないので、これは私だけの悩みかも知れないが。
2007.06.10 [Sun]
_ 花を撮る
今週も近所を歩いて花を撮ってきた。カメラはNikon D50。レンズキットの18-55mmから始めて、ポートレイトのために50mmの単焦点、子どものサッカーと運動会のために55-200mmのVR(手ぶれ防止機能)付き、という順でレンズを買い足した。やっぱり花を撮り始めるとマクロレンズが欲しくなってくる。着々とレンズ貧乏道に嵌っていっているような気がする。
2007.06.17 [Sun]
_ 野山北公園を歩く
野山北公園は東京と埼玉の県境近く、狭山丘陵の森の中にある。山の稜線に沿って道が伸びているため、アップダウンがきつくなく散歩に最適。梅雨なのが嘘であるかのような好天。Nikon D50、AF-S DX VR Zoom-Nikkor ED 55-200mm F4-5.6G(IF)にて撮影。
2007.06.23 [Sat]
_ tDiaryプラグイン作成のススメ
tDiaryのプラグインはRubyの学習のためのプラットフォームとして最適・最強ではないか、と考えている。
Rubyに限らず、コンピュータ言語を学ぼうとしてチュートリアルのサイトや本などを見てみると、そこにはまず、「"Hello world."と表示してみよう」などと書いてあって、サンプルプログラムが載っている。サンプルプログラムを間違いなく入力して実行すると、実行画面にめでたく"Hello world." と表示された。
ただ、このメッセージは、あなたのコンピュータがあなたに向かって表示したものだ。それ以上のものでもそれ以下のものでもない。「で、それでどうした?」と問いかけても、コンピュータは何も答えてくれない。ここであなたは軽い失望を覚え、重い足を引きずりつつ、次のもう少し複雑なサンプルに挑もうとする。
一方で、これがtDiaryのプラグインだったらどうだろう。tDiaryのプラグインで、上記の"Hello world"サンプルは次のように書く。
def helloworld "Hello world." end
これを、tDiaryのpluginディレクトリに"helloworld.rb"というファイル名を付けて保存し、日記のサイドバーやヘッダに
<%= helloworld %>
と書いてみよう。あなたのhelloworldプラグインが実行され、日記に"Hello world."というメッセージが表示される。プラグインの作成と言っても、やることはこれだけだ。tDiaryを使っている方なら特に難しいことではないはずだ。
だが、ここで考えて見て欲しい。あなたの日記がインターネットで公開されているならば、このメッセージは文字通り全世界に向けたあなた自身のメッセージになるのだ。
tDiaryというプラットフォームを使って、Rubyでメッセージを出すプログラムの作り方を知ったあなたは、次にどうするだろう。"Hello world." を、あなたの座右の銘である「一日一膳!」に変えようとするかも知れない。「曜日ごとにメッセージを変えて、届けあなたにこの思い(はぁと)」などと考える人もいるかもしれない。更には、「3の付く日だけはアホになるメッセージを出して、その他の日は普通のメッセージを出せば奴らにウケるかも!!!」などと考える人もいるかも知れない。このように「他の人に何かを伝えられる」ということを考えれば、やりたいことが次々と沸いて出てくるはずだ。つまり、Rubyの学習に対するモチベーションが、前の例とは比較にならないくらいに大きくなる訳だ。これはひとえに「インターネット・コミュニケーションを加速するtDiary」というプラットフォームが持つ力だと思うのだ。
フツーの人間が一つのことを学び続けるためには、なんらかのモチベーションが欠かせない。tDiaryが生み出すコミュニケーションは、Rubyの学習のための強力なモチベーションとなるだろう。興味の沸いた方は、ぜひ、「tDiaryプラグインの作り方」のドキュメントをのぞいて見て欲しい。そして、tDiaryのpluginディレクトリにあるプラグインのソース・コードを短いものを選んで読んでみることから始めて欲しい。Rubyの習得につながる高速道路がそこにはある。
2007.06.24 [Sun]
_ 花の名前
カメラを使い始めると、花というのが被写体としてなかなか優れていることに気づく。色は綺麗だし、季節によって咲き分けてくれるし、何より動かずにいくらでも待っていてくれる。という訳で花の写真ばかりが増えている。
写真はザクロの蕾。子どもが通う学校の校庭に咲いていたもの。花の名前など今までまったく縁がなかったので、帰ってからネットで何の花かを懸命に調べることになる。たいていお世話になるのが、K's Bookshelf 花の名前小辞典というサイトだ。ここは、季節と色で絞り込んで調べることができるので重宝している。
レンズはAi AF Nikkor 50mm F1.8D。背景の光のボケが綺麗に七角形だが、これは絞り羽根の枚数が七枚だからこうなるようだ。
2007.06.30 [Sat]
_ 鳥の名前
週刊コミックモーニングに「とりぱん」という四コマがあって毎週読んでいるが、今週の連載で目からウロコが落ちた。主題歌Jazzの名曲「The Shadow of Your Smile」で有名な映画「いそしぎ」は鳥の名前だ、というのだ。
なるほど漢字では「磯鴫」だが、だって、ねぇ、これってどう聞いても響きが自然現象でしょ。「ゆうなぎ」とか「さざなみ」とか、太平洋戦争中の駆逐艦で「いそしぎ型」というのがあって、タミヤのウォーターラインシリーズでプラモになっていても全然おかしくない。うん。
ネットを調べてみると結構同じ勘違いをしている人は多いようで、こちらの方は、「いそしぐ」という動詞があると思い込んでいたようだ。わはは。でも「いそしぎ」でググるとこのページがトップに来るのは全国のネットユーザの共感の証だ。
鳥の写真はまだ腕が付いていっていないので撮れない。近くの公園で取った映画風の一枚でお茶を濁すことにする。
Before...
_ n-kashi [みのさん了解です。折を見てこちらでも確認して、tDiary2.3.x対応のリリースをしなければいけませんね。確認あり..]
_ kp [tDiary Image GalleryでExif情報を表示した際に、フォーマット種別がUNDEFINEDのものを表..]
_ n-kashi [kpさん了解です。EXIFの表示機能はカメラのことを全然理解してない頃に作ったもので、とりあえずexifparser..]