[PlayStation] PLAYSTATION3で一つの可能性として示唆したMac OS XのPS3搭載について噂が出てきた。Intel CPUより高速で動くなら、Cellを使う選択肢は有り得る。IntelのCPUのマルチコア化はしばらくかかるはずだ。ノートやコンパクトデスクトップはIntelを使って、パワーデスクトップはCellを使う。Mac OS XはPowerPCでもIntelでも動くのだ。Intelを選んだのは性能/消費電力比であって、絶対的な性能ではないから、この話題は完結していないのかもしれない。IBM、新たに2つのPowerPCプロセッサを発表 - CNET Japanのような記事も出ている。[Added: 2005-08-07]
今日、ヤマダ電機でMac miniに触ってきた。快適に動くなあ。TigerかどうかとCPUの種類とメモリの量を確認し忘れた(^^;)DVD/CDプレーヤの調達を優先したので、Mac miniを手に入れる時期はまたもや先に伸びてしまった。衝動買いも難しい。先に延ばす理由は増えるばかりだ。PS3の調達も視野に入れておく必要がある。Windows Vistaテストマシンも必要だし。[Revised: 2005-08-07]
Revelations EntertainmentとGeorge Lucasの関わりを調べてみると、思いがけなくというか、むしろほーっなるほどやはりそうかと思ったのだが、Is Apple about to take on the video market? - ZDNet UK Insightが釣れた(^^;)
日経エレクトロニクスインタビューのルーカスのオンライン配信の話はClickStarのことだろう。Steve JobsはPixarを持っているので、映画業界のことには詳しいはずだし、映画のオンライン配信に関心がないはずはない。アップルがインテルのプロセッサの採用を決めたこととインテルのデジタル・ホーム構想とはつながりがありそうだ。George Lucas→ILM→Pixar→Steve Jobs→Apple(iTMS)→Intel→ClickStar(Revelations Entertainment)→日経エレクトロニクスインタビューの円環が閉じた感じがする。
Mac miniの次の買い時は、iTMSがMovieを配信しはじめた時かもしれない。問題はやはりソニーの存在だろうが、消費者にとっては競争の存在はプラスに働くだろう。二つの方式の存在は多少面倒かもしれない。SonicStage3.2(SonicStageダウンロード[Mora])をインストールしてみたが、立ち上がりが少し遅い感じ。Sony Picturesにもリンクを張っておこう。
もっとも現時点では、iTMSのMovie TrailersにはSony Picturesもリストアップされている。米国iTMSにはMusic Videoという項目があるが、日本iTMSにはまだない。映画予告編をクリックすると米国iTMSのMovie Trailersが表示されるので、その画面からMusic Videoを選択すると日本版らしきものは表示されるが中味はまだ準備されていない。まだこの領域は混沌としているようだ。
アップルによる映像配信の可能性を検証する - CNET Japanネタ。
QuickTimeの能力の高さはすでにPCによる高画質ビデオの再生を可能にしている。引用記事がすべてを物語っている。いずれリビングのテレビ専用のPCが必要になるだろうと予想しているのだが、Mac miniになるのか、Xbox360になるのか、PS3になるのかということだろうと思う。あるいはテレビ自体が独自のホームサーバー機能を内蔵するのかもしれない。
たまたま新日曜美術館の最後のほうを見ていたら、日記を絵で描く安達博文の場面だった。毎日、巻物のような大きな画布?に絵を描いていく。そのなかに、後になって発見があるという。絵による記録はめずらしい。現代の写楽と呼ばれているそうだ。少しリンクを探してみた。テンペラと水彩を併用する技法を用いる。
そうすれば、必ず人は変わってくる。考えが煮詰まってきたら、そうするのがよさそうだ。バカの壁の内側から抜け出そう。養老孟司著、「死の壁」、新潮新書061、2004年4月15日発行(2005年5月20日19刷)、190ページ、680円。この本は新しい。「いちばん大事なこと」の後ぐらいの作品かな。「人間科学」をやさしく書いたものだそうだ。書きたいことはすべて書いたと言わしめた本である。
今日、先日抽選に当たった二冊のサイン本を受け取りに廣文館書店まで出掛けた。もう一冊は、中川恵一×養老孟司著、「自分を生ききる」- 日本のがん治療と死生観、小学館、2005年8月10日初版第1刷、159ページ、1400円。こちらはまだ発行日がきていない。最新の本である。いずれも人間の死を考える本になった。死を考えることは生を考えることである。そこで、最初の話に戻る。
養老先生のサイン大人の読書計画 - nikkeibp.jp - “街ネタ”“旬ネタ”ウォッチングネタ。
週刊nikkeibp.jp No.58 2005.8.12メール。僕の趣味に合う可能性のある本は「亡国のイージス」ぐらいしかないが、TSUTAYAに夕方出掛けた。「神々の世界」の下巻、マルタの話では延々と気が滅入るような話が続くので、嫌になってきて気分転換も兼ねて。最近、映画が封切られたせいか、文庫本は品切れになっている。あきらめて、福井晴敏著、「Twelve Y.O.」、講談社文庫ふ59、2005年3月24日第22刷(2001年6月15日第1刷、単行本1998年)、402ページ、648円を購入。以前から気にはなっていた本だが、日本の作家は敬遠しがちなのだ。
今はFirefoxをメインのブラウザとして使っているが、Webアプリケーションを作る場合には、IEの存在は無視できないし、動作確認は必須の問題である。拡張した「メモる」システムでは、ページタイトルとURLをブラウザ画面から取得してリンクに変換する仕組みを、Tcl/Tkで書いた「更新日記コンソール」で運用している([Tcl/Tk] PerlユーザーのためのTcl/Tk入門Ⅱ - 更新日記コンソールを作る)。Firefoxの場合はタイトルとURLの取得は拡張機能のCopyURL+を使用し、IEの場合はRakuCopyを使っている。RakuCopyはタイトルとURLと選択文字列を改行で区切ってクリップボードに取得できる。CopyURL+は、改行で区切られたタイトル・URL、選択文字列・URL、またはタイトル・URL・選択文字列を選べるようになっている。
実際には、タイトル文字列が適当でなく、選択文字列にURLにリンクを張りたい場合が多い。また、フレームに表示されているページのタイトルとURLを取得したい場合も多い。これには、RakuCopyでは対応できなかったこともFirefoxを使い続ける理由になっていた。なんとかしなくっちゃと、AUSGANG SOFTさんに問い合わせ、対応方法を教えてもらった。基本的にはJavascriptになっていて、へーっこんなこともできるのかと思った。RakuCopyのインストールフォルダにあるrakucopy.htmを次のように少し変更すればよい。コメントにした行をその下のように修正する。
//var str = new String(pwin.parent.document.URL); var str = new String(pwin.document.URL); //var title = new String(pwin.parent.document.title); var title = new String(pwin.document.title); //str = str + "\n" + str2; title = str2;
この方法では、選択文字列を引用としては使えないのでもう一工夫必要かもしれないが、取り敢えずは使えるようになった。Javascriptをもっと勉強すべきだと思った。
Dellの光学マウスの範囲選択が決まらない不調のために、WACOMのお絵かき用マウスを使っていたのだが([Computing] WACOM FAVO F-630EX)、タブレットが邪魔になるし、少し重いので使いにくい([Computing] 光学式マウスの問題)。やはり常時使うものだし、良いマウスをとコジマ電機で5ボタンのインテリマウスを購入。大分昔の98時代に使っていたことがあるので、懐かしかった。なかなか今のところよし。ホイールが少しヌルッとした感じで抵抗があるが、横にも振れるらしい。
IntelliMouse Explorer 4.0SIGGRAPH 2005の状況はどうなっているのだろうと調べてみた。Paperについては完璧な情報を集めているサイトがあった。Pixarが資金を出している研究もある。これらのリンクをすべて見ようと思うだけでも気が遠くなりそうだ。
まあ、いくらの価格が出ても驚かないと思っていたけど、モニタ込みで2.6万円とは驚いた。このマシンのスペックではWindows XPは動かないだろう。Linux+OpenOffice.orgで動くのだろうか。そう言えば、昨年試したVaio(900MHz AMD Duron,128MB)がそれぐらいのスペックだった。贅沢を言わなければ、それなりに動いた。インドの人口はすごいから、Linuxのシェアを稼ぐには最適な場所かも・・・
これはオーディオマニアには関心事となるかもしれない。選択肢が広がるのはよいことだ。価格が高い分、CDそのものとの競争が大変そう。globeの試聴をしてみたけど、音に伸びがある感じ、いいなあ。いずれ本格的に比較試聴してみよう。こちらはWMA(Windows Media Audio)losslessという可逆圧縮配信。
インターネットやデスクトップを、WWWの仕組みを使って統合的にマップすることができることに誰もが気付き始めた。HTML日記は主題に関するメタ情報やメモ情報をマップした時系列データベースである。と、今やっていることを単に言い換えているだけなのだが、この日記指向型データベースこそが、個人的な知識の集積にとってもっとも優れた方法なのではと思い始めた。他に選択肢を思いつかないからである。[Revised: 2005-08-15]
知識表現のもっとも進んだ形態は書物であろう。最終的にはテーマごとに書物としてまとめられればベストなのだが。知識をマップするという考えはTopic Mapsのようなアイデアに代表されるものかもしれない。Ontopiaからメールが来たので、「XML Topic Maps」の積読状態を思い出す。Topic Maps - Innodata Isogenの紹介のようだ。[Revised and Added: 2005-08-13]
IDFプレビュー: テーマはマルチコア、次世代アーキテクチャを明らかに (MYCOM PC WEB)ネタ。
インテルのマルチコアの動向に関心が集まるだろう。Jobsのインテル選択の理由が明らかになるかもしれない。8/23-25は注目である。
日経BPのサイトでいろいろ調べていると、「スキャナで虫が撮れるの、知ってますか。」という記事を見つけてしまった。最近は、170余りのRSSと日経BPからのメールがインターネット情報源となっている。日経BP(“仕事”を磨く総合ビジネス情報 nikkeibp.jp)のサイトにはかなりのオリジナルな情報が集積されている。
帰宅したら、女房がおもしろいのをテレビでやってたと言う。「ウエアラブル」っていうのを一日中付けて使っている先生がいる。神戸大の塚本教授とかいうらしい。「ほーっ、そんな時代なんだねえ。検索すればすぐ出てくると思うよ。」と僕。「塚本 神戸大」でググると一発でトップにヒットする。関連リンクをリストしておこう。
ウェアラブルの理想はデスクトップと同等の環境を身に着けることであろう。HMDはディスプレィに相当する。コンピュータ本体、電源、キーボード、マウス。コンピュータはできるだけ小さく、電源はできるだけ長寿命化する必要があることは当然。無線インターネット環境の普及充実。難しいのはキーボードとマウスによる操作を何に置き換えるかだろう。音声認識を利用するか、携帯電話のようなキーボードを使うのか、iPodのクリックホイールのような新しい操作方法を使うのか。いろいろと問題点が浮かんでくる。
当面は、Zaurusのような小型コンピュータを身に着ける。胸や腰にホルダーのようなものを付けて差し込んでおき、必要なときに抜いて使う。ガンマン風コンピュータ利用術。これはウェアラブルとは言いがたいが最も操作性はよいのではないかと思う。米国でこのような使い方をするのは危険かもしれないが(^^;)
最大の問題はそのようにしてまでもコンピュータを使う必要があるのかということである。それでなくても一日中コンピュータを使っているのだ。やはりキラーアプリケーションが必要ということになる。コンピュータを使う必然性である。歩いている時に思いついたことをメモしたいなら紙に書き付ければ済むのである。
GPSとなんらかの記録の連動みたいなことはモバイルコンピューティングのニーズとしては重要と思うが・・・ケータイが先行している。残念ながら現状のケータイは使いたくなるというツールではない。これをもっとマニアックにしたいというのはあるね。
ウェアラブルのコンセプトは身に着けるところにあるので、単なるモバイルとは違う。コードを身体に這わすのはいやだから、各ユニットが無線でつながるっていうのが欲しい。無線化・超小型化がキーポイントか。
アマゾン傘下のA9、「A9.com Maps」ベータ版を公開--街頭写真と地図を提供 - CNET Japanネタ。
当然、街頭写真のサービスが出てきてよいはずと思っていたが・・・維持が大変かも。
MSNテレビはなかなかデザインがよい。番組が充実すれば地上波テレビに取って代わる可能性があるかもしれない。地上波におもしろい番組がないときは覗いてみるのもよいかも。今のところは番組が短すぎるので、細切れの番組の合間のコマーシャルがうるさくて興ざめ。
疲れが溜まっている。休み明けにそういうことを言っていてはなさけないが、息も絶え絶えに帰ってくるというのは少し大袈裟という程度。憂鬱が背中の下のほうに漂っていている感じがする。
家に帰ると養老先生のサイン本の抽選に当たったと電話があったという。運が向いてきたかな(^^)v
それは、文字である。このネタはもう少し取っておこう。忘れないためにここに記す。
図書館から本が姿を消す--米大学が進めるデジタル化の現状 - CNET Japanネタ。
図書館にデジタル化されて保管された本は貸し出ししなくても自宅から読めるのだろうか。図書館の持つ情報をフルに活用できるように保管するのはむずかしい技術だろう。人が一週間に一冊、80年間読んだとしても高々4,000冊程度である。県立図書館には60万冊の本が所蔵されるという。さて、あなたの読むべき本はどれだろう。
不気味に光る東の空を眺めながら帰宅の車を走らせた。商工センターに入ると雨粒が落ちてくる。夜も少し過ごしやすくなってきたが、台風の影響のようだ。今日はディスカバリーが無事に帰ってきた。よかった。
「神々の世界」を読んでいるとインダス文明の話が出てくる。モヘンジョダロやハラッパーの世界最古の遺跡の話は歴史の授業の記憶として残っている。それが小学校だったか、中学校だったか記憶が定かでない。世界最古の遺跡という話の後で、アーリア人の侵入の話が出てきて、えーっ、さらにそれより古い話もあるのかと不満に思った記憶がある。しかし、最近の学説ではアーリア人は存在しなかったということになっているのだそうだ。マハーバーラタやラーマーヤナとかの言葉に触れて、昔を懐かしく思いだした。人類の歴史はさらに遡れる。
昨晩はまた暑さが戻ってきた。と思うと、今日夕方は雨だ。不安定な天気が続く。帰りの車の外気温表示は26℃だった。はつかいち大橋の温度計と同一の指示値だった。雨で車が冷えているからだろう。
「神々の世界」、今ようやく上巻の500ページを越えたところ。現存する最古のタミル文学作品の「トルカッピヤム」という書物は、サンガムという古代の文献を集めた図書館にあったとされている。そのサンガムは二つ目のものだという。人類の叡智を伝えるのは図書館なのである。インダス=サラスヴァティー文明(インダス文明のこと)の考古学的証拠は今では9000年前まで遡れる。それ以前の話である。
今日はなんとか予定通りに仕事をこなして、さっさと帰宅したが、道が異常に混んでいて、帰るのに1.5倍は時間が掛かった。定点での外気温表示は33℃。雨が降っていないせいだろう。昨日と比べると7℃も高い。疲れが溜まっている。しばらく横になって休む。昨日届いたDENONのDVD-2910にBill Evans TrioのCONSECRATION - the lastを入れて。
DVD-2910は同じくDENONのサラウンドアンプAVC-1870に同軸ケーブルでデジタルでつないでいる。スピーカーはロジャースLS3/5Aモニターが生き残っている。AVC-1870はサラウンドアンプなので、5.1chで7台のスピーカーを駆動できるのだが、ステレオでつないでいるだけ。DVD-2910はMP3やWMAも再生可能である。無論、DVDオーディオもスーパーオーディオCDにも対応できる。新しい時代のオーディオ環境がようやく実現できた。しばらく音楽を楽しもう。
最近200年ぐらいの科学技術の進歩に大変目覚しいものがあるということには誰もが同意するだろうが、人間が本当に進歩しているかどうかは、イラクや中東での争いやアフリカの問題、北朝鮮の動向、毎日あらゆるところで起こる事件をあげつらうまでもなく、疑問を感じることは多いだろう。人間の解剖学的な所見は3-4万年変わらないのである。
月の最初のほうで「記憶の妙薬」というタイトルを残した。現在から4600年ぐらい前に現れた400~450の記号からなる世界最古の言語?(インダス=サラスヴァティー文字)は解読されてない。残されている4200程度のサンプル文字列は解読するには短すぎるらしい。文字というものは人間の記憶力を弱めるものという認識が昔はあった。プラトンの「パイドロス」に書かれている。文字は記憶の妙薬ではなく、思い出すための妙薬なのである。「神々の世界」では口承を重要視する文化が有史(文献の存在する歴史)以前にあったと主張している。
さて、科学技術の発達で、WWW(World Wide Web)という主にテキストからなる地球規模の知識のネットワークを手に入れることになった人間は進歩できるのだろうか。
昨日のこと。散歩にTSUTAYAに出掛けたのだが、家を出るとあぶら蝉がなにごとかと思うほど慌てたようにあちこちにぶつかりながら飛び回っている。
いぶかしく思いながらバス通りまで歩いていくと、通りに面した住宅の木の蝉も騒々しく飛び回っている。ふと見上げると木の枝で何か黒いものが羽ばたいている。カラスだなと思った瞬間、クマゼミかミンミンゼミを銜えたカラスが飛び立った。蝉は銜えられたまま警告を発するかのように鳴き続けた。
昨日、TSUTAYAから帰って思ったのは、コンピュータ関係の月刊誌を買わなくなったこと。SoftwareDesignとかUnix Magazineを最近買ったことがない。習慣の問題もあるのだが、人間が消費可能な情報量にも限界があるだろうし、最新の情報はWebで得られるので、速報性を旨とする雑誌の重要性は相対的に低下しつつあるからだろう。Web Publishingの時代になりつつあるのだ。
本でさえ、Web Publishingに移行する可能性がある。必要に応じて、紙に印刷製本するビジネスが出てくる可能性がある。いわゆるPOD(Print On Demand)。PDFと印刷製本済みの両方が売られるようになる。印刷製本済みにはPDFが添付される。そうすると本がデスクトップでインデックス化できるようになる。と思ったのは、オライリーのPDF HACKSに「執筆と出版」という章が設けられていたからである。PDFのメリットとして、紙の本では実現できないハイパーリンクがあることも忘れてはならない。紙の本のメリットは寝転んで読めることと背表紙のような実体があるが故の記憶への刺激力であろう。
テレビの報道を見ていると、日本は戦後60年戦争をしなかったという表現があったのだが、自衛隊の人々はイラクに派遣されているじゃないかと思った。そのようなきれいごとの表現はもう少し躊躇してもよいのではと思う。但し書きが必要である。世界平和に向けての日本のプランを示せるのかどうか。そういうことが今回の衆院選で問われても良いはずだ。そのような観点からのリーダーシップが必要だろう。根底においては、人間として日本人はどう生きていくのかということが問われるはずである。問題山積の時代である。
YORO-MANIAXは養老先生の消息を知るために大変有用なサイトである。日経BPではスキャナで昆虫を撮る記事と出会うし、養老先生の情報は今やあらゆるところに溢れようとしている。アマゾンで検索すると187件ヒットする。これらをもれなく収集するのも大変難しいことだろう。
YORO-MANIAXを見ていると、まだまだ雑誌に新しい連載や記事があることがわかった。中央公論(中央公論新社)でも久しぶりに買ってみようかとイオンの未来堂に昼から出掛けた。鎌倉傘張り日記(56)の記事のタイトルは「政治嫌い」。今や日本の進むべき道を示せる人は養老先生しかいないのではと思うのだが、「いちばん大事なこと - 養老教授の環境論」の「これからの生き方」を参考にして考えてみるのもよいと思う。答えは自分で考えよである。田舎に参勤交代せよというのが一つの提案ではあるのだが。
Voice(PHP MAGAZINE Voice)の記事を立ち読みして、ブータンの話を楽しみ、後生って、今生の次の死んでからのこと(来世)だよなと今更ながら思い、今生のことばかり考えている現代人の心が病む理由が見えるような気がしてくる。見開き2ページの記事だがよかったな。少し予定と違って、中央公論の9月号と「亡国のイージス」上下巻をもってレジへ向かう。家の書斎にはそれぞれ700-800ページある「神々の世界」の上下巻と「教皇暗殺」4巻、「ホーキング虚時間の宇宙」、「Twelve Y.O.」、「PDF HACKS」、「iPod & iTunes HACKS」、「THE MISSING MANUAL iPod & iTunes」、「XML Topic Maps」などが積み重なって待っている。そんなに買ってきてどうするのとまた言われそうだが・・・本というものは積読するものなのだ(^^;)
中央公論の目次を見て、目に付いた記事を読む。希望学という学問を始めているとURLが記事の最後に記載されていたので、希望学で検索してみた。
中央公論ネタそのⅡ。サンスクリット語(サンスクリット - Wikipedia)はインド=ヨーロッパ語族に属する言語である。マハーバーラタやラーマーヤナのインドの古典叙事詩もサンスクリット語で書かれている。インドの最古の口承文学のヴェーダもそうである。かなり古い言語で、「神々の世界」によれば、モヘンジョダロやハラッパーで発見されたインダス=サラスヴァティー文字がサンスクリット語の初期の形態と考えている学者もいる。
中央公論2005年9月号、玄侑宗久「さすらいの佛教語」第四回には、「娑婆」が本来のサンスクリットの「サハー」、「大地」の意味、仏教語としては「この世」を表すとある。「サハー」の語根は「サフ」で「耐え忍ぶ」という意があり、「サハー」には他に「自由な世界」という意がある。この世は心の持ち方で、耐え忍ぶもの(忍土)になったり、自由な世界になったりするという話。
「神々の世界」に、モルディヴのピラミッドをストゥーパ(仏舎利塔)と考えているという記述があって、「ストゥーパ」は「卒塔婆」のことかなと思う。仏塔 - Wikipediaを読むと、その通り。
震度6弱の地震。マグニチュード6.8(後で7.2に、震源の深さも20kmから40kmに修正)。津波注意報も出ている。
盆休みも最終日、世の中は帰省ラッシュ。昨日は二度目のお墓参りに出掛けたが、宮島付近は大渋滞だった。宮島墓苑に通じる道も二号線の渋滞を避ける車で大渋滞だった。盆連休最終日に少しスクリプトを書くことができたが、スクリプトを書くだけのドライビングフォースを生み出すことがなによりも必要である。必要は発明の母である。私の場合、必要はスクリプトを書くためのドライビングフォースである。スクリプトで大抵のことはできるなと実感することが最近は特に多い。そのスクリプトも極めて簡単なものである。様々なデータがデジタル化され、HTMLで統合してまとめることができるようになった。いよいよ、読み、書き、算盤、プログラミングの時代になったと思う。
更新日記関連のスクリプトはカテゴリのキーとタイトルを連想配列データとしてスクリプト中に持っていたのだが、カテゴリを追加するたびにすべて書き直す必要があるので、外部のテキストファイルから読み込むことができるように変更した。「メモる」システムが使っているmemoディレクトリのcategory.txtがあれば、それを使うようにスクリプトを改造した。「メモる」システムと更新日記を統合して取り扱う仕組みを構築するためにも必要な処置である。
記事間のリンクは、今は更新日記検索して、検索結果から該当ページを表示させ、CopyURL+でURLとタイトル文字列を取得し、更新日記コンソールでリンクを生成して、更新日記記事に張り付けるという作業をしている。これは自動化できるはずなのでスクリプト化するかなあと思ったりしている。更新日記検索スクリプトをちょっと改造して、TeraPadのツールに登録すればよい。
更新日記や「メモる」システムの記事をRDB化して様々なクエリに対する応答として新しい表現を実現するということもあるのだが、データ構造をどうするのかという問題は一朝一夕には答えが出ない問題である。これはじっくり取り組むべき課題だろう。現在程度のデータサイズではRDBにするほどのものでもないし、現時点では実用上十分な応答性を確保しながらテキスト処理で自在に加工できる。
当面は「実践実用Perl」版"PDF HACKS"を考えてみよう。
村上さんのサイトを久しぶりに覗いたら、変わりつつあるソフトウェア開発の価値観があった。ホーティカルチャー(horticulture)とは。
プログラミングは園芸学である。言葉だけの連想だが、うーむ、と思った。その感覚はわかるような気がする。「メモる」システムを栽培して育てているような感じがするからである。あちらを耕しては、こちらを耕し、そちらに水を撒く。デスクトップが開墾地に見えてくるから不思議だ。この柔軟性をもたらしているのは、データがテキストであることとパターンマッチングによるテキスト処理がプログラミングの中心にあることによると思う。
昨日は東京、今日は大阪、出張中は仕事以外のことは考えないように新聞も買わなかった。広島に帰着すると本に呼ばれて、フラフラとジュンク堂へ引き寄せられる。
ブレインサイエンスの棚で養老先生の本を吟味する。目次を見ながら、本の解剖学の二冊がどうしても欲しくなって、儘よとレジへ向かう。悪いことにオライリーのハック本の棚のそばを通るとFLASH HACKSという背表紙が目に入る。儘よとそれも引っ掴んで、レジへ。乗り越しにご注意!!という帯の本を市電の中で読み耽りながら、帰宅。乗り越しはしなかったが、もう一冊のほうの帯には、「読書、この悪癖だけはやめられない!!」なぜ、読書が悪癖なんだ。
っていう日経の特集記事を読んでいたら、最近の人間は、無論ごく一部の人だと思うけど、CDを買ってハードディスクにコピーするとCDそのものは捨ててしまうのだそうだ。信じられないが、まあ、自分が標準と思ってはいけないということだ(^^;)
今朝、「日本全国8時です」を聞きながら、森本毅郎氏がiPodとNetwork Walkmanを購入したことを披露したので、ほーっと思ったのだが、月尾先生のiPodで記録できる15,000曲をすべて聞こうと思うと1ヶ月間夜も休みなく聴き続ける必要があるとの話にへーっと思った。ほーっとかへーっとか失語症気味だが、音楽配信の話題はポピュラーということだ。森本毅郎・スタンバイ!のページを調べてみるとインターネット放送をやっている。さすが、最先端(^^)v
「神々の世界」では、北半球の氷冠は12万5000年前から成長を始め、2万1000年前に極大に達する、その後に生じたメルトダウンは1万8000年から本格的に始まり、7000年ぐらい前に完了しているとしている。日経サイエンス2005年9月号(Vol.35,No.9)の「人類の文化の夜明け 早かった象徴表現の起源」によると、現人類の発生は4-5万年前と言われてきたが、最近の調査研究では、19万5000年前まで遡れる可能性が出てきている。詳しいことは本に任せるとして、氷冠の成長とメルトダウンを挟んで現人類は滅亡の危機に晒されながら、生き延びてきていることになる。この間に海面は120m上昇している。インダス文明等、世界最古と言われる文明が出現するのは、氷冠のメルトダウン後なのである。
象徴的表現の起源は洞窟壁画や出土する石器や骨で作られたフルートなどで知られることになる。現在のような電子文明が過去に存在した可能性は少ないだろうが、考古学や地質学等がこれから何を教えてくれるか大変興味深い。しかし、たったの数千年で文明がここまで来たのだとすれば、20万年もあれば、解剖学的に同じ人類なら何度もここまで進歩できてもおかしくないかもしれない。現在は大変特異な時代であるとも考えることができる。
Shintarou3さんにBuffer overrunが出る問題や、総メール数35万件のうち、17万件弱しか登録できない状況を報告して、対応をいろいろとしていただいた。ありがとうございました。やりとりは10数回に及んだ。お蔭様で、今では33万件を越える登録数になっている。一つはHTMLメールの登録への対応、もう一つは件数が多すぎるのでGDSそのものの処理が追いつかない問題への対応。後のほうは、処理のスピードを設定できるようになったので、ブラグインの設定画面の「徐々にGDSに登録する」をチェックして、500件/分でしばらく運用した。これはコンピュータにかなり負担が掛かる設定のようだ。しかし、大量の処理をしているのだから仕方がないことでもある。今は設定値を変えながら、コンピュータが静かに動く設定を探している。現在は1~10件/分の設定を試している。現在35.7万件のうち33.4万件が登録されている。少しずつ登録数が増えているようだ。
Googleマップの開発者が語る 注目のWebアプリ開発手法「Ajax」 : IT Pro ニュースネタ。
確かにJavaやFlashではWebの他のシステムとの連携に欠ける感じがする。ソフトウェアのインストールも必要になる。CGIでもJavascriptをどう活かすかがキーポイントになりそうだ。
広くアプリケーションを使ってもらおうと思えば、インストールを楽にしないと現実的でない。特にクライアントではそうなる。「実践実用Perl」も環境を構築しようと思うと難しくはないが大変ではある。まあ、スクリプタ希望ならこの程度できないでどうするということになる(^^;)
日経エレクトロニクス2005年8月15日号にジョージ・ルーカスの「デジタル・シネマの父」というインタビュー記事が出ていた。ディスクはすぐなくなるという話だった。ディスクのようなメディアは海賊版が多くて映画制作の障害(十分な資金を映画制作に投入できない)になっているらしい。映画はフィルムではなく、デジタルで映画館や家庭に高画質配信する時代が来る。確かに映画館の画質はそう満足するものじゃないなあと思う。
Industrial Light & Magicを見れば、1977年にStar Wars Episode Ⅳから始まる歴史(Industrial Light & Magic - Inside ILM)を知ることができる。Pixar(Pixar Animation Studios)はLucasfilmのコンピュータグラフィック部門がSteve Jobsに買収されてできたことも再認識した。
この記事がなぜ、Intelに分類されるのか。新作映画のオンライン配信実現へ--米Intelが新会社設立を支援 (MYCOM PC WEB)が、日経エレクトロニクスの記事を連想させたからである。Revelations Entertainmentを開くとFlashが動くのだが、なかなか見事だ。インテルが出資しているClickStarへのリンクもある。デジタル・ホームを推進しているインテルのIDF Spring 2005を復習しておこう。IDF Fall 2005(Intel Developer Forum)は8/23から始まる。
DDJ>Intel Developer Forum 2005 Tuesday Wrap Upネタ。DDJからのメールのリンクからアクセス。
4個以上のマルチコアプロセッサが出てくるのは2007年。アップルが発表した上級機にIntelを搭載する時期と合う話である。CNET Japanの記事もまとめておこう。
ラウンドアップ:Intel Developer Forum開催、製品戦略が明らかに - CNET Japanネタ。各記事へりリンクがあるので便利。MYCOM PC WEBの記事リストも載せておこう。
24時間バッテリ駆動・常時接続のHandtop PCという概念は重要だと思う。それこそがモバイル・コンピューティングに必要とされているものである。ハイパフォーマンスPCでは二桁個のコアを持つマルチコアの可能性が示されたというから、Cellはアドバンテージはあっても1年ぐらいしかないだろう。Jobsの省電力Intelの選択は当然なのかもしれない。
残りの記事をリストアップしておこう。
iPod miniでMy Foolish Heartを聞きながら書いている。標準添付のイヤホンも悪くないよねと思う。意外とイヤホンやヘッドフォンというのは良い音で聞けるものだ。ただ、頭の中で音が鳴るのが嫌でなければだが。
iPodを愛しすぎる人たちやサイボーグ消費者なるものの記事はへーっと思うだけだが、これは習慣や慣れが絡んでいる。僕はあまりイヤホンは好きじゃない。何か落ち着かないし、耳がムズムズしてしまうからだ。なぜ買ったか。iTunesの機能をすべて試したかったから。PDAとしても使えそう。ということかな。
iPodはiTunesとセットで考えなければならない。他の音楽プレーヤやPDAにはiTunesがない。
スローライフを志向するiPodの強み - CNET Japanを興味深く読んだ。
携帯機器で音楽を聴くという趣味は僕には基本的にはないので、iPod miniはお蔵入りになりそうだが、iPodの真髄はiPod Shuffleにあるのではという気がする。マシンの操作方法なんて気にせずにとにかく自分の好きな音楽を聞きたいんだというニーズにはマッチしているだろう。スローライフというよりはシンプルライフかな。
どのような情報やデータでもそうだが、活用できる蓄積の仕方は難しい。iTunesもよくできているが、データ量が増えていくと、曲を探したいとは思わなくなる。もっとおもしろい仕掛けを作れる可能性はあるけどね。閉じたアプリケーションでは難しい。
アップルを大歓迎する日本の音楽業界の謎 - CNET Japanネタ。よいまとめである。
人間は音楽配信よりはキラキラ輝くディスクをライナーノーツやタイトルカバーと一緒にケースに収納し、取り出し、プレーヤーに入れてPlayボタンを押すことのほうを好む。実体と行為を愛するのだ。コンピュータの電子回路を流れる電流や、ハードディスクに記録された磁気信号は目に見えない。iTunesのようなソフトウェアやiPodのようなハードウェアを使う音楽配信システムは、音楽データにメタ情報や関連情報等を付加して、如何に実体のあるもののように見せることができるかが重要である。これも情報を大量に集積しつつ、全体と部分を見通しよく取り扱う問題に通ずる。いずれは、DVD/CDプレーヤ自体をコンピュータにつないで音楽やビデオをデータベース化し、情報をPCで閲覧しながらオーディオを制御したいものだと思う。
私とiTMSの25日 - 日経エレクトロニクス - Tech-On!ネタ。
人によって消費行動が異なるのがおもしろい。僕は初日以来購入はストップしている。DVD-2910は手持ちのCDライブラリを再生するのに使われている。まずはそれで十分。実は本を買いすぎているので、音楽にまで資金が回らないのが実情である(^^;)
デザインがしっくりこない。フォントが変だし、表示も途中で途切れたりしておかしい。先走って入れていたiTunes4.9をアンインストールして、iTunes4.9の日本語版をインストールしてみたが、変わらない。味気ない日本語フォントでも、せめてアップルサイト並みの雰囲気にはしてほしい。
それから、150円/曲は高すぎる。日本盤は仕方ないにしても(買わないから関係ない?^^;)、外盤を安く販売して欲しい。試しに、Herbie HancockのCantaloupe Islandをアルバムで購入してみた。「ミュージックストアを検索」を使って、アーチスト名で検索した。アップルIDは取っていたので、アカウントの設定は簡単。全6曲で150円×6=900円。アートワークはクリックすると画面一杯に広がって表示されるが、ライナー・ノーツはないし、米国サイトにあった音楽データベースも使えない。これではコンピュータで音楽を聴くお買い得感はない。取りあえず、PCの再生音は期待できないからね。
→10曲以上のアルバムは頭打ちになっていて一律1500円設定のようだ。これでは通常のものはCD外盤と大体同じか高い設定になるのでは・・・うーむ、アマゾンで調べてみると、輸入版対比、価格は低めの設定と言えるが、ライナーノーツのない点、CD-Rに焼いたりする手間と費用を考えると、割安感があるかどうかは疑問だろう。Cantaloupe Islandを例にとって比較してみよう。価格は送料は含まないが、一定額以上の購入にまとめれば送料無料である。外盤って日本のほうが安いのかな・・・
→よく調べるとアーティストのバイオグラフィは英語版につながった^^;アーティストのアルバムのリストも出る。音楽を好きな人たちが作っているだけある。手抜きはなかった。素晴らしい。
ダウンロードしたデータはPCには5台まではコピーできるらしいのだが、もしかしてマシンを5回更新すると、聴けなくなるってことじゃない。これって困るよね。その頃には新しい仕組みで動いているってことかな? CDに焼いて、取り込むことはできるか・・・
手元にあったCD-RW 650MBに購入したアルバムを焼いてみた。CD-RWのディスクをPCのドライブに入れると、iTunesはディスクが入ったと知らせてくれて、プレイリストを選んでディスク作成ボタンを押せという。初めてだが、超簡単だ。40分のアルバムが10分で焼ける。ヤマハのCDプレーヤが壊れた後、オーディオシステムにつないでいるPS2のドライブはCD-RWは認識してくれないので再生できない。娘の残していったMDコンポのオートチェンジャーに放り込むと見事に再生する。まずまずいい音だ。PCの音の貧弱さに愕然とする。比較すると思ったよりひどいな。何か考えなくては・・・
音楽を聴く習慣というものは危ういもので、すぐ途絶えてしまう。他のメディアがあるからである。PC+インターネット、テレビは強力なメディアだろう。音楽を聴く機会は車に乗っている時が重要かもしれない。車を運転しながらPCを操作したり、テレビを見るわけにもいかないからである。しかし、その時はラジオが強敵になる。人間の持つ時間が有限であるが故に、メディア視聴率が問題になる。人間の有限な時間を拡張するようなメディアこそが必要なのである。
特異なメディアはPC+インターネットだろう。PC上ではインターネットを介してあらゆるメディアが融合しつつある。音楽が復権を果たすためにはインターネットを利用するしかないかもしれない。インターネットから、オーディオ、車へとメディアが流れていく。媒介するのは必ずしもiPodではないかもしれない。CD-R(W)でもよいなあと思った。iTMS or Podcast→iTunes→CD-R(W)→オーディオ(車)という流れが定着しそうな気もする。iPod miniは意外と使わない。散歩のお供になるぐらいかな。iPodは大量の曲を格納できるが、その中から必要なものを取り出して聞くのはいくら操作性がよくても難しいし、面倒である。シャッフルして、適当に聴くためのツールである。CDに焼いて、実体化したコレクションにしておくと今日はこれとこれをと選ぶことができる。実体的物質世界とコンピュータのなかの世界をつなぐ、ここにも興味深い趣味の世界がある。
iTunes→CD-RWs今日は久しぶりに、LPのThe Man with the Hornを聴きながら、日記を書いている。Longhornじゃないよな。Creative、PCとホームシアターを結ぶDTSエンコーダー「DTS-610」 (MYCOM PC WEB)の記事が気になる。クリエイティブ、5.1ch対応の小型USBオーディオBOXを発表 (MYCOM PC WEB)でもよいかも。
iTunes Music Storeは品揃えに注力して欲しい。Bill Evansも品揃えは少ない。米国サイトでは59点のアルバムがヒットするが、日本ではたったの12点だ。Keith Jarrettはオーディオブックのみ、2点という有様だ。
オーディオブックというメディアはちょっとおもしろい。Keith Jarrettへのインタビューと曲から構成されている。Fresh Airというタイトルで、元はRadio | WHYYというラジオの番組だが、45分ぐらいで300円だったので買ってみた。WHYYのサイトを見るとラジオ放送もインターネットと融合してより強力なメディアへと変貌を遂げつつあることがわかる。
DENON - デノン - Premium Audio Brand [ 会社情報/ニュースリリース/S-301 ]を読むと、iPodの接続も考慮している。ホームシアターもいずれはあらゆるメディアに接続することになるだろう。これからは、オーディオ・ビデオ・TV・ラジオなどのメディアは、PCからコントロールしたり、ライブラリを管理したり、関連情報を整理したりすることになるのだろうと思う。ホームシアターもPCとの接続性が今後は重要になるのではないだろうか。我が家ではPCとオーディオシステムを媒介するのはCD-Rということになりそうだ。これもiTunesのお蔭かも・・・ヤマハのCDプレーヤが壊れたときから思っていたプレーヤの新調をこれをきっかけに果たすことになった。
サイン本を受け取りに行くついでに中央通のヤマダ電機に寄って、CD-Rを調達した。10枚が970円で一番安い音楽用CD-R、TDKのぐるーん、GROONに決めたんだが、レジでは870円だった。久しぶりなのでポイントカードを作ってもらって、ぶらぶらとAV関係の階からPC関係の階に移るとPC用のCD-Rがある。そうだよな1枚50円ぐらいであるはず。まあ、仕方がない。他にはCD-Rに文字を書き込む熱転写やインクジェットプリンタがある。そこまで踏み込むとインクリボンやインク代を含めてかなりのコストが必要になるはずだ。とりあえず、プラケースにポストイットを貼り付ける方法でお茶を濁すことにする。数が増えれば何か管理する方法が必要になる。通常の厚みのプラケースは背表紙に何か書き込めるが、スリムなケースは難しいかもしれない。何か適当なラベルを探そう。
帰宅して、音楽用CD-Rを使って、iTunesでKeith JarrettのFlesh Airを焼いてみる。問題ない。焼くのに要する時間は、45分番組で2分も掛からない。CD-RWとは雲泥の差だ。試しにPS2のドライブに入れてみると問題なく再生できる。CD-RWとCD-Rは異なるメディアだということを再認識した。
米国サイトのiTMSの価格とAmazonのCD価格を調べてみた。ものによるのだろうけど、iTMSの価格は別に安いわけじゃない。むしろ高い場合もある。あまり変わらないと考えたほうがよさそうだ。けっして価格破壊になっているわけではない。
日本の場合はどうか。アマゾンでは輸入盤でも輸入先のUSとUKでは随分違ったりして、価格差がある。iTMSもそのレベルにある。そういう意味ではあまり変わらないということはできる。輸入盤について言えば、競争があるのでそれほど変わらないということができるだろう。
日本のアーティストのアルバムはどうか。これは少し価格を押し下げる効果があったのじゃないかという感じがする。150円/曲の設定は画期的だったのかもしれない。要はトータルの販売額が増えるかどうかだ。音楽マーケットの拡大につながるかどうかの実験だろう。我々のような今はCDレンタルやCDショップはほとんど使っていないが昔は音楽に関心を持っていたユーザーが注目するのは間違いない。iTunes/iPodという仕組みは強力だろう。CD価格とiTunesの価格を比較して、CDのほうが多少高いぐらいであればCDを購入したほうがよいだろう。データで買ったとしてもCD-Rに焼くことになるだろうし、iTunesにはインポートすれば済むことだから。
好スタートには僕も貢献したかな(^^)試しに使ってみようという人も多かったのではと思う。継続するメリットがあるかどうかが問題である。実体がない分のお買い得感がどれだけあるかである。CDを買ってインポートするのと競争だが、音楽のマーケットの拡大に貢献するのは間違いないだろう。
iTMSの問題点。表示データを範囲指定コピーができない。新作アルバムや限定トラック等のタイトル表示の下が途切れて見苦しい(僕のマシンだけかな)。アルバムの価格表示が不完全で見えないことが多い。
iTunesからレシートが届いたのだが、HTMLメールは文字化けしている。文字コードはSJISなのにcharsetがISO-8859-1になっているからだ。せっかくかっこいいデザインなのに表示させるたびにエンコードを指定する必要がある。まだまだ細かいところは不十分。
肝心な品揃えがいまいちなのも気になる。五嶋龍などの話題のアーティスト名を入れてもヒットしない。オンラインショップは品揃えが命である。吉田拓郎は?(^^;)
調べてみると五嶋龍のユニバーサルミュージック(UNIVERSAL MUSIC - UMUSIC JAPAN -)や吉田拓郎のフォーライフ(FOR LIFE MUSIC ENTERTAINMENT - PARADISE DIGITAL -)はSME系で、株式会社レーベルゲート-Label Gate Co.,Ltd.-へ出資している。ダウンロードサービスは複雑になっていて、OpenMG対応の音楽ダウンロード・メガサイト Mora [モーラ]とWindows Media DRM9(WMDRM)対応機器向けの音楽配信サービス- MusicDrop -に分かれている。うーむ。Keith Jarrettもユニバーサルミュージックなのか(Keith Jarrett : BIOGRAPHY)。ただ、MoraやMusicDropにKeith Jarrettが収録されているわけではない。
がんばれ! iTunes Music Store、日本のネット配信に革命起こせ - nikkeibp.jp - 柔らかいデジタルネタ。
日経BPのサイトを見ていて見つけた記事。曲に関する情報の提供と表示をデジタルならではの工夫をしてはという提案がある。iTMSのアーティストのバイオグラフィーは他のアーティストへのリンクを作ることによって、販促に貢献するような仕組みにしている。しかし、これだけでは不十分であることも事実だ。インターネット上の音楽情報の検索・リンクの仕組みを考えるとよいかもしれない。
情報処理2005年8月号(Vol.48 No.8 486号)ネタ。解説に「世界の文字と文字符号(前編)」が出た。「インターネット時代の文字コード」の著者の一人、三上喜貴氏が著者である。言語間デジタルデバイドの解消を目指した言語天文台の創設に注目。サンスクリット文字は既に日本語Windowsでも表示可能である。Unicodeの有効性を感じることができる場面である。
言語の興亡の歴史には大変興味がある。言語には文字を持たないものもある。「神々の世界」に出てくるヴェーダはもともと口承文学で、それがサンスクリット文字で編纂されて書物として残ることになった。
PC上で『マックOS X』の実行を可能にするハッキングネタ。
Mac OS Ⅹ for IntelはPC用に販売されるようになるのかもしれない。もう既にMacはPC並みに安くなっているし、ハードからの儲けは少ないのかも。Mac OS Ⅹを大量に売ったほうが儲かるかもしれない。Macを使うなら、AppleデザインのPCを使いたいという傾向も強いだろうから、それほど、AppleのMacの売り上げに影響はないかもしれない。標準Intel PCでMacを動かしたほうがコスト的にも得という判断も有り得る。
Windows VistaとMac OS Ⅹの両方をインストールしたマシンが来年は動いているかもしれない。VMwareでも動くみたいだし、来年がいよいよ楽しみかも。
かな・・・
Xbox 360、価格は299ドル99セントに--日本の販売価格は非公表 - CNET Japanネタ。さて、Xbox360って何だったか、思い出そう。直感的には高いとは思わないが、安いとも思わない。
IE7が「Windows Internet Explorer 7」に名称変更 : IT Pro ニュースネタ。マイクロソフトは何を考えているのかよくわからないが。
最近はRoRとかDjangoとか、Web Frameworkがはやりだ。PerlはCatalystなんだが、Windowsではインストールがどうかなと思っていた。Poderosaがあるので、Windowsへインストールを試してみようとトライしてみた。しかし、はじめてみると、Cygwinにインストールすることになるなと思った。CPANモジュールを使って、インストール。すごい複雑なプロセスが始まったが、全部デフォルトで最後まで完了した。素晴らしい。httpサーバーもPerlで動く。CatalystでDesktopサーバーを作るということも視野に入るかもしれない。
catalyst.plは/usr/binにインストールされていた。Cygwinに入っているPerlは確認すると5.8.6だった。CPANシェルによるインストールは依存性のあるライブラリを次々にインストールしてくれるので、ラクダ(^^;)
Catalyst on Windows Desktopスキャナで読み取った雑誌記事などをコンピュータ上で読みたい場合にファイルを探して画像ブラウザで表示させるのはちょっと面倒な作業になる。ここはデスクトップサーバーの出番である。
画像ファイルはHTTPサーバーのドキュメントルートの適当なフォルダに格納することにしよう。ここでは、imageというフォルダにjpegの画像ファイルとして格納した例について述べる。imagelist.cgiはフォルダにある拡張子.jpgのファイルをリストアップして、ファイル名でソートし、表示ファイル名と前後のファイル名をパラメータにして画像表示用のimageviewer.cgiを起動するハイパーリンクを作る。imageviewer.cgiは指定画像を表示するとともに前後のファイル表示とファイルリスト表示のリンクを示す。「リスト | [前のファイル名] ← [ファイル名] → [後のファイル名]」のように表示する。
imageviewer.cgiimagelist.cgi
#!/Perl/bin/MSWin32-x86-object/jperl.exe $imagedir = $ENV{'DOCROOT'} . "/image"; $cgidir = $ENV{'CGIDIR'}; opendir(DIR,$imagedir); @imagefiles = grep(/\.jpg$/,readdir(DIR)); closedir(DIR); print "Content-type: text/html;\n\n"; print "<html><body><ul>\n"; dbmopen(%IMAGEDB, 'imagedb', 0666); foreach $file (sort @imagefiles){ push(@buffer,$file); if(scalar(@buffer) == 2){ $file2 = $buffer[0]; $file3 = $buffer[1]; $IMAGEDB{$file2} = join("\t", "", $file3); print "<li><a href=\"$cgidir/imageview.cgi?image1=$file1&image2=$file2&image3=$file3\">$file2</a>\n"; }elsif(scalar(@buffer) == 3){ $file1 = shift(@buffer); $file2 = $buffer[0]; $file3 = $buffer[1]; $IMAGEDB{$file2} = join("\t", $file1, $file3); print "<li><a href=\"$cgidir/imageview.cgi?image1=$file1&image2=$file2&image3=$file3\">$file2</a>\n"; } } $file1 = $buffer[0]; $file2 = $buffer[1]; $IMAGEDB{$file2} = join("\t", $file1, ""); print "<li><a href=\"$cgidir/imageview.cgi?image1=$file1&image2=$file2&image3=$file3\">$file2</a>\n"; dbmclose(%IMAGEDB); print "</ul></body></html>\n";
imageviewer.cgi
#!/Perl/bin/MSWin32-x86-object/jperl.exe require 'cgi-lib.pl'; &ReadParse(*in); $cgidir = $ENV{'CGIDIR'}; $file1 = $in{'image1'}; $file2 = $in{'image2'}; $file3 = $in{'image3'}; $imagedir = $ENV{'DOCROOT'} . "/image"; print "Content-type: text/html;\n\n"; print "<html><body>\n"; print "<img src=\"/image/$file2\"><br clear="all><br>\n";" dbmopen(%IMAGEDB, 'imagedb', 0666); ($bfile1,$ffile1) = split(/\t/,$IMAGEDB{$file1}); ($bfile3,$ffile3) = split(/\t/,$IMAGEDB{$file3}); print "<center><a href=\"$cgidir/imagelist.cgi\">リスト</a> | <a href=\"$cgidir/imageview.cgi?image1=$bfile1&image2=$file1&image3=$ffile1\">$file1</a> ← $file2 "; print "→ <a href=\"$cgidir/imageview.cgi?image1=$bfile3&image2=$file3&image3=$ffile3\">$file3</a></center>\n"; print "</body></html>\n"; dbmclose(%IMAGEDB);
さて、日曜工作的紙芝居ブラウザはちょっと頭を捻れば書けるが、画像に関する情報も一緒に表示するためには、画像に関する情報を入力管理する仕組みも必要である。
一つの方法は「メモる」システムを使うことである。画像リストに画像ファイルのURLとタイトル(入力フォームにしておく)をパラメータにしてmemol_edit.cgiを起動するリンクを作っておけばよい。
もう一つの方法は、一連の画像ファイルに関する情報をRSSにまとめておくことである。例えば、養老先生の昆虫館に関する記事の画像であれば、一つのRSSにまとめて記述する。画像ファイルとRSSのファイル名の付け方は規則的にしておくと便利かもしれない。
セマンティックなブラウジングをしようと思えば、その前にデータ作りが不可欠であり、これを効率よく無駄なくスムースに行えるような枠組みが必要である。すべてにもれなくデータを付与しようとすると挫折してしまうし、そもそも始めようとしないだろう。関連するデータを日頃から日記の中に埋め込んでいけば、それをスキャンして拾い上げることも可能である。これこそ、知識循環型データベースの極意になるのではと思う。日記指向型データベースは知識循環型データベースのフロントエンドなのである。
HTMLベースのイメージブラウザも便利なのだが、画像を拡大させようと思うとそう簡単にはいかない。このような場合にはPDFファイルがあると大変便利である。一連のシリーズの画像ファイルをPDF化してページを繰るようにして閲覧できると便利だろう。中島さんのPDFJを使ってみよう。更新日記→書物化プロジェクトの取っ掛かりとするには手頃な課題となるだろう。
"PDFJのインストール"については中島さんのサイトの説明を参照してください。new_imageメソッドの画像サイズのデータには正確な数値を与える必要があるので、get_imgsize.plをライブラリとして使わせていただくことにした。Perlライブラリのディレクトリにget_imgsize.plとして保存してください。無論、jperl/Perl5.005_03環境にインストールできるので楽しみましょう。
養老先生の昆虫館の記事なら、5ページしかないので、OpenOffice.orgのWriterに貼り付けて、PDFで出力することも可能であるが(実際、最初はそのようにしてPDFファイルを作成したのだが)、50ページもあるととてもそのような作業はする気にならない。このような場合にはスクリプトの出番となる。
imagepdf.plの出力したPDFファイルimagepdf.pl
require 'get_imgsize.pl';# http://www.aleph.co.jp/~fujiwara/perl/get_imgsize.pl use PDFJ; $titlekey = $ARGV[0]; #jpegファイルの幅と高さの最大値をピクセルで文書サイズとする。 my $doc = PDFJ::Doc->new(1.3, 486, 724); opendir(DIR,"."); @jpgfiles = grep(/${titlekey}\d+\.jpg$/, readdir(DIR)); closedir(DIR); foreach $src (@jpgfiles){ ($pxwidth,$pxheight) = &get_imgsize($src); $width = $pxwidth; $height = $pxheight; $page = $doc->new_page; $doc->new_image($src, $pxwidth, $pxheight, $width, $height)->show($page,0,0); } $doc->print("${titlekey}.pdf");
PerlスクリプトにJavaのクラスをインポート - Java::Import 0.01公開 (MYCOM PC WEB)ネタ。
perl.com: Perl Needs Better Toolsネタ。
最近のPerlユーザーは弱気になっている。「大学ではプログラミング言語としてJavaかPythonを教えている。GoogleもPerlは使わない」ってわけなんだけど、そんなことはどうでもよいことだと思う。Perlが優れた言語であることは間違いないからだ。記事の趣旨は、中規模から大規模の開発にPerlを使うなら、開発用ツールに関する本記事を読めということ。
僕は開発用のツールにはあまり興味はない。エディタがあれば十分である。それほど大規模な開発をやるわけではないからかもしれない。日曜プログラマにはエディタで十分である。
本格的な開発をやるとすれば、最近なら、.NETかJavaなんだろうけど、趣味でやっているとそれほど必要性も感じない。ビジネスでコードを隠したい場合はそのようなコンパイル言語が必要かもしれない。オープンならそのような考えは不要である。もっともPerlにおいてもPerl6ではそのようなニーズにも対応できるようになるわけだが、隠して意味があるほどのコードが書ければ慶賀の至りではある。
LAMP(Linux,Apache,MySQL and PHP/Perl/Python)やWAMP(Windows,...)なら、Perlなどのスクリプト言語で十分だ。最近はJavaもPHPに押されているらしい。スクリプタから見ると、.NETやJavaはオープン標準からはずれた特殊な環境である。Perl6/Parrotが出てくれば、最高のパフォーマンスをもたらすかもしれないが、それまでじっくり待てばよい。大変革には時間は掛かるだろう。来年のβはどうなることやら。今のところ、jperl+Perl5.8は十分に強力な選択肢である。まあ、あと5年ぐらいは使うつもりでね。Perl6が充実した環境になるには最低それぐらい掛かるのではと思う。Intelの二桁個マルチコアマシンなら、jperl+Perl5.8のままでもパフォーマンスは十分すぎるほどになるかもしれないし、Perl6がなくて困っているわけでもない(^^;)
[Revised: 2005-08-27]
senya_search.cgiが動かない。なんだろうとスクリプトを調べるがわからない。HTTPサーバーをApacheからanhttpdに切り替えると動く。それで、Apacheのerror.logを調べる。原因は、Content-typeヘッダのコロン(:)が抜けていたためだった(^^;)anhttpdはヘッダがなくてもCGIが動いたりする。Apacheは厳密だ。URL中のCGI引数もきちんとURLエンコーディングして渡さないと動かない。Apacheをjperlで動かす場合、「実践実用Perl」で紹介したjuri_encodeサブルーチンのような機能は必須となる。
OSCON 4.4: Inside Ponie, the Bridge from Perl 5 to Perl 6ネタ。
Perlの現在の状況が簡潔に概観され、Ponieの問題について述べられる。PonieはPerl5.10のParrot版で、Perl5をParrotでそのまま動かそうというものである。Perl5はCによる拡張であるXSを持っているのでその部分が特に問題になるらしいが、難しそうなことが窺い知れる。LarryはP5toP6のトランスレータを書いているとのこと。昔、a2pというAWKtoPerlのトランスレータがあった。「AWKを256倍使うための本」にある住所録スクリプトをPerlに変換するとそのまま見事に動いたので、感心した記憶がある。これもオリジナルはLarry Wallが書いていたはずである。
PerlをCGIで使う場合のパフォーマンスと言えば、mod_perlの使用も考慮に値するだろう。WindowsのApacheで使えるかどうか調べてみた。使えるみたいだ。オープンな世界もいつのまにか、Windows環境へのサポートが充実した。最近はなんでも調べると大体見つかる。mod_perlの使い方を少し調べてみてもよいかもしれない。しかし、Perl5.8が前提になるのだろう。
マイドキュメントフォルダを検索するCGIスクリプト(ファイル名とテキストファイルのみ検索する)は検索結果のリストからfileスキーム(プロトコル)で文書へのリンクを張っていたが、Windows XPではIEとFirefoxの両方とも動作しなくなっていた。セキュリティ上の問題なのだろうと思われる。元々、fileスキームは正式にはサポートされていないから仕方がない。
解決策をと考えていたのだが、リンクからstart.cgiを起動して、startコマンドでファイルの関連付けを使って表示させることにした。startコマンドの最初の引数は空で与え(通常はコマンドプロンプトのtitleになる)、次の引数で関連付けで起動したいファイル名を与える。コマンドプロンプト上におけるように、startコマンドの引数に単にファイル名を与えても、関連付けされたアプリケーションは起動されず、タイトルにファイル名が表示されたコマンドプロンプトが起動されるだけである。statusフレーム(8/5/2005 (Fri.) [Web Development] Web 2.0)に表示するファイル名をCGIで出力する。
my_documents.cgi
#!/Perl/bin/MSWin32-x86-object/jperl.exe require 'cgi-lib.pl'; # my_documents.html のテキストフォームからの検索パターン文字列を取得する &ReadParse(*in); if($in{'pattern'}){ $pattern = $in{'pattern'}; }else{ $pattern = ".";# 「マイドキュメント」すべてを検索する } # 環境変数 $cgidir = $ENV{'CGIDIR'};# CGI スクリプトのパス $mydocdir = $ENV{'USERDIR'}."\\My Documents";# マイドキュメントフォルダの取得 # 検索したいファイルの拡張子を指定して、マイドキュメントフォルダから # 検索対象となるファイル名のフルパスのリストを得る。 @mydocfiles = &getfiles($mydocdir, "\.(txt|sxw|doc|sxc|xls|sxi|ppt|sxd|pdf|png|gif|bmp|jp.*g|html|htm|xml|rdf|rss|awk|c|pl|py|rb|tcl)\$"); # CGI 先頭部分の出力 print <<HEADER; Content-type: text/html <html> <head> <title>「マイドキュメント」検索結果</title> <META HTTP-EQUIV="Content-Type" content="text/html; charset=Shift_JIS"> <link rel="stylesheet" type="text/css" href="/mystyle.css"> </head> <body> <div class="emph">「マイドキュメント」検索パターン: $pattern</div> <br> <table><font color=\"#000000\"> HEADER # メモファイルの日付を現在日付で取得する $date = &date; # リストアップしたファイルを検索する foreach $mydoc (sort @mydocfiles){ $match = 0;# ファイル名にマッチしたことを示すフラグの初期化 $docurl = &juri_encode($mydoc);# memol_edit.cgi 用に URL をエンコード ($doctitle = $mydoc) =~ s/^.+\\([^\\]+)\.(txt|sxw|doc|sxc|xls|sxi|ppt|sxd|pdf|png|gif|bmp|jp*g|html|htm|xml|rdf|rss|awk|c|pl|py|rb|tcl)$/$1.$2/i;# ファイルタイトルを取得 # memol_edit.cgi 用に ファイルタイトルをエンコード $endoctitle = &juri_encode($doctitle); # バイナリファイルを含めて、ファイル名をまず検索する if($mydoc =~ /$pattern/io){ $mydoc_enc =&juri_encode($mydoc); print "\t<tr bgcolor=\"#eeeeee\"><td><a href=\"$cgidir/start.cgi?file=$mydoc_enc\" target=\"status\">$doctitle</a></td><td><a href=\"$cgidir/memol_edit.cgi?date=$date&docurl=$docurl&title=$endoctitle\" target=\"main\">メモ作成</a></td></tr>\n"; $match = 1;# ファイル名でマッチしたことを示すフラグ } # ファイル名でマッチしなかったファイルで、かつ指定した拡張子を持つ # テキストファイルについてはファイル内容も検索する。 if($match == 0 && $mydoc =~ /\.(txt|html|html|xml|rdf|rss|awk|c|pl|py|rb|tcl)$/i){ open(FILE, "<$mydoc"); while(<FILE>){ chomp; if(/$pattern/io){ $mydoc_enc =&juri_encode($mydoc); print "\t<tr bgcolor=\"#eeeeee\"><td><a href=\"$cgidir/start.cgi?file=$mydoc_enc\" target=\"status\">$doctitle</a></td><td><a href=\"$cgidir/memol_edit.cgi?date=$date&docurl=$docurl&title=$endoctitle\" target=\"main\">メモ作成</a></td></tr>\n"; last; } } close(FILE); } } # CGI 最終部分出力 print "</font></table><hr></body></html>\n"; # ファイル名パターン検索(サブディレクトリも再帰的に調べる) sub getfiles{ my($dir, $pat) = @_; my(@dirs); opendir(DIR, $dir); # パターンにマッチするファイルのフルパスを配列で取得 push @files, grep /$pat/, map { $_ = "$dir\\$_" } readdir(DIR); rewinddir(DIR); # . と .. を除いたサブディレクトリを取得する push @dirs, grep -d && !/\.\.?$/, map { $_ = "$dir\\$_" } readdir(DIR); closedir(DIR); # サブディレクトリのファイルを再帰的に調べる while($dir = shift @dirs){ &getfiles($dir, $pat); } return @files; } # 現在日時から yyyy-mm-dd 形式の日付を得る sub date{ ($mon = (localtime)[4] + 1) =~ s/^(\d)$/0$1/; ($mday = (localtime)[3]) =~ s/^(\d)$/0$1/; $year = (localtime)[5] + 1900; return $year . "-" . $mon . "-" . $mday; } # Jperl 用 URL エンコーディング sub juri_encode{ my($str) = @_; $str =~ s/([^a-z0-9\-_.!*'\(\)~ ])/length($1) == 2 ? sprintf "%%%1s%1s%%%1s%1s", split("",unpack("H4", $1)) : sprintf "%%%02X", ord($1)/egi; $str =~ tr/ /+/; return $str; }
start.cgi
#!/Perl/bin/MSWin32-x86-object/jperl.exe require 'cgi-lib.pl'; &ReadParse(*in); if($in{'file'}){ $mydoc = $in{'file'}; }else{ $mydoc = "."; } print "Content-type: text/html;\n\n"; print "<html><body><p>$mydocを表示します。</p></body></html>\n"; system("start \"\" \"$mydoc\"");
PXPerlのcpanバッチでCatalystをインストールしてみると、Template-Toolkit関連以外のモジュールは大体うまくインストールできたようなので、CPANでTemplate-ToolkitのREADMEを調べてみた。Windows用にはActivePerl用のPPMパッケージがあるというので探した。
TWiki . OI . ActivePerlPackagesから、PPMでTemplate-Toolkit 2.13をActivePerl5.8にインストールして、関連ライブラリを含めてPXPerlにマニュアルコピーした(^^;)。そうすると、CygwinにインストールしたCatalystと同様に動いた。CatalystのWikiには、Ruby on Railsとの比較がまとめられているが、あまり意味があるとは思えない。
風呂上りで、日付が変わってしまった(^^;)perl.com: Catalystネタ。
Catalystを試すのにはちょうど良いサンプルになりそうだと思っていたので、トレースしてみた。今日は記事の最後にあるSample Application:MiniMojoが動くことを確認した。必要なライブラリはPXPerlにcpanからインストールしてみたが、DBD::SQLiteのXS拡張モジュールはやはり難しいので(VC++のコンパイラが動くところまでいったが、結局力尽きて、ActivePerlからコピーした。DBD::SQLiteはPPMパッケージがある。)、ActivePerlでインストールするほうが無難かもしれない。ActivePerlにもcpan.batがあるので、PPMパッケージがないようなら試すとよい。おそらくモジュールを山ほどインストールすることになる。SQLiteはモジュールをインストールするだけでなく、コマンドライン版も入手しておくこと。
MaypoleはModel-View-Controllerという概念を提示したものでJavaのStrutsと同様のもの。最近流行のWeb Frameworkの先達の一つなのだろうと思う。Simon Cozens氏がスタートさせたプロジェクトで、今年、Linux Journal Editor's Choice Awardを受賞して話題になった。
Catalystもこれを出発点としている。既にSimon Cozens氏は開発から離れているのでどうなるのかなと思っていたが、新しいメンバーを得て開発が再開されたようだ。CygwinでMaypoleもインストールしてみようとしたが、インストールは完了しなかった。
CatalystのAjax Wikiも文字コードの呪縛から解放されることはない。WindowsではブラウザのTEXTAREAからの入力はShift_JISコードになる。文字化けする。view.ttにMETAタグでcharset=Shift_JISを加えても、効かない・・・TEXTAREAの入力をPerl5.8で単に処理するには無理がある。Windows上ですべてをUTF-8で取り扱うという構想はブラウザに阻まれてしまった。
TS Networkingの浜口さんのFGALNETのリンクが切れていたので、他のページに張替え。NIFTY SERVE(現@nifty)はパソコン通信としては消滅したわけで仕方がない話ではある。FGALsはWebフォーラムとして展開するという選択はしなかった。それも一つの見識であろう。インターネットの大海は遥かに広く深い。パソコン通信の時代は終わったのである。インターネットのコミュニティがどのような形態で継続されるのか、大変興味深い。FGALTSをさらに発展させるべく生まれたTSNETはメーリングリストとWikiから形成されている。
TSNETでLLDNが話題になったので、日記にも少し記録しておこう。LLDNとはLightweight Languages Day and Nightの略である。ただ、私はLightweight Languagesという表現は余り好きではない。この表現は誤解を招くのではと思う。Scripting Languagesでよいのではないかという気がする。
XMLgawkがどの程度の力を持つかどうかはまだわからないが、より便利になることは間違いない。簡潔なスクリプトで複雑なことを簡単に処理できるというところに差別化の焦点を当てようということだろう。
LLDNの話題とは関係ないが、PXPerlを少し使ってみた。ActivePerl以来、凄いものが出てきたという気がする。SciTEというエディタはUTF-8環境に移行してもよいなと思わせるだけの力がある(Contributorsの先頭にAtsuo Ishimotoの名前を見つけてしまった)。PugsやParrotも一緒にインストールされるし、最強のディストリビューションである。しばらく使ってみよう。C++コンパイラを指定しておくと、cpan.batでXSを持つライブラリをインストールできるはずだが、Template-ToolkitにはVC++/nmakeはNOT OKを出した。Catalystに依存性のあるライブラリのほとんどは問題なくインストールできたが、Template関連モジュールがないために動かない。しかし、このような環境があれば、Windows上でまずXSを開発してみようという人も出てくる可能性はある。ディストリビューションを開発しているPixiGreg氏はそのために作っているわけだが。
SciTE/PXPerlPugsについては、次にまとめておこう。Autrijus氏に、そしてPerl6に幸運を!
Squeakは随分以前から触っているのだが、本気で取り組むところまで進まない。仮想マシンになっているので、他の環境との交信をどうするのか、他の環境をどう活かせるのかがよくわからない。閉じた世界になってしまうような感じがするのである。Squeakで何をするのかという目的を見出すまでの長い道程の途中にあるというか、何ができるのかを知る過程にあるということだろう。新しい言語環境ではまずPerlでできることはどうすればできるのだろうと考えてしまうのだが、それが見つからないと中々先に進めないことになる。メディアオーサリングツールということなので、Perlでできるようなことをするのとは違うのだろうと思ってみたり、・・・
最近つくづく感じるのは、未来は変わるということである。技術の進歩が世界を変えていく。その影響が具体的に現れ始めた。急激に変化が訪れる。過去10年間の変化も大変大きかったが、これからの10年間の変化はもっと大きくなるかもしれない。
ニューヨークタイムズが新聞をWebに移行する(紙版と電子版を統一するだったかな?)という話を最近どこかで読んだ。NYTのElectronic Editionがそれを指すのかもしれない。あっ、そうか、昨日の日経の「ネットと文明」だったかもしれない。それで、NYTを調べようと思っていたんだっけ。立花氏はThe Times 、NYT、朝日新聞に言及されているので、電子紙面と合わせてリンクを作っておいた。[Added and Revised: 2005-08-28]
オーディオブックは確かに車社会用のメディアかもしれない。僕も往復合わせて二時間毎日車に乗るので、その時間を如何に有意義に過ごすかは重要な課題である。iPod & iTunes HACKSには「iPodを愛車に永久装備する」というハックが載っている。車のセンターコンソールを改造するという本格的なもの。好きだけでもできない作業だろう。しかし、運転しながらクリックホイールを操作するのは危険だろう。見ずに手探りで操作できるようになるかもしれないけど(^^;)
【レポート】O'Reilly Open Source Convention - Goole Maps/Ajax/Web 2.0~オープンソースの起こす第2のパラダイムシフト (MYCOM PC WEB)ネタ。Ajaxについての説明は的確である。
「実践実用Perl」ではフレームを多用したシステムを提案した。デスクトップをフレームで四分割し、ブラウザの画面は、各種のアプリケーションを起動するitemフレーム、カレンダーを表示するcalendarフレーム、アプリケーションのリスト表示等補助的な表示をするsubmainフレーム、アプリケーションの主表示をするmainフレームに分かれている。target属性でフレームごとに起動するCGIを割り付けることによって統合的なシステムを実現している。Ajaxを導入するとどうなるかとぼんやり考えているのだが、まずは小さなシステムからテストしてみたいと思う。本質的には変わらないと思うが、デザインやパフォーマンスがどう変化するのかに興味がある。
Memol System Now!最近の「メモる」システムはPodcast対応やArrangeNote表示対応のためにmainフレームの下に小さなstatusフレームを設けている。
Slashdot:Developerネタ。Web Frameworkについては、いろいろと目移りがしてしまうのだが、CherryPyのサイトでApacheのmod_rewriteモジュールが気になった。Ajaxについてはメモ。