2008-02-01 :-)
_ 朝ったー
0540 起床。ねむ。
_ [プロジェクト シルフィード]通勤ったー
プロジェクト シルフィード
ゲーム未プレイ。作曲は以下の方々。
- 福井健一郎
- 谷岡久美
- 中野順也
- 西隆宏
福井健一郎さんの「Project Sylpheed Main Theme」はアレンジして他の曲にもいくつか使っています。中野順也さんの「7th Special Operation Wing "Night Ravens"」は武蔵伝 2 「Last Battle」に似ていて中野順也さんらしい曲です。曲を聴いた瞬間に中野順也さんの曲だと分かります。福井健一郎さん本人が出演した PV に「Project Sylpheed Main Theme」が使われていたので「プロジェクトシルフィードはジェットコースターのゲームだ」という印象が強いです。
PV はこちら → PROJECT SYLPHEEDオリジナル・サウンドトラック
B000JBWYOK
_ 仕事
0830 出勤。
_ [ヤッターマン]ヤッターマンを見た
ヤッターマンについては
- 20 年くらい前見てた
- ほとんど記憶にない
- オープニングはだいたい覚えている
- ドロンジョ一味は覚えている
- ヤッターマン側はさっぱり覚えてない
- どんな声だったとか
- なにを生業にしてるとか
- ファンのみなさまへ は読んだ
ようするにとくに思い入れはありません。
そのような前提の私が巷で話題のヤッターマンを見てみました。第 2 話?
オープニングはライブ会場で聴くぶんには問題ないと思います。
アニメには合ってませんが。
アニメ全体はどうもテンポが悪い感じがするのだけどあんなものだったかしら。
2008-02-02 :-)
_ 朝ったー
0700 起床。チャリったー
_ [Postfix]Postfix-2.5.0
pkgsrc を cvs update -dP して mail/postfix-current が 2.5.0 だったので make update clean-depends して完了。
_ 計算機の現状を整理しよう
ホステス名 | OS | 機種 | 購入年月日 | 備考 |
sumire | WindowsXP | Dell DimensionXP | [ 20040312#p06 ] | WindowsXP起動失敗。その後再現せず |
hitomi | NetBSD | Prime Magnate LM | [ 20061015#p07 ] | |
kahori | NetBSD | Mac mini | [ 20050430#p03 ] | |
yukina | NetBSD | VAIO PCV S710のディスク | 1998 | NetBSD起動失敗。その後復旧せず |
最近 sumire が起動しない現象とyukina が起動しない現象が発生しました。yukina は VAIO PCV S710のディスクに NetBSD をインストールし、Dell DimensionXP に付けて使っています。yukina に使っているディスクは 10 年前のディスクです。正確な年月日は記録してませんが PCV S710 が 10 年の製品なので 10 年前の物とみなします。むしろよくも 10 年も故障しなかったものです。sumire は 4 年前の製品です。4 年前のディスクなのでそろそろ故障してもおかしくなさそうです。根拠はありませんが。
ディスクが故障する基準として使用年月を考慮すると、次に故障しそうなのは kahori です。Mac mini のディスクにインストールした NetBSD です。数年前の夏に kyun さんが「 Mac mini のディスクが死んだ 」と言っていたので( ref. ひとりごと ) kahori のディスクが故障するとしたら夏の時期だろうと予想してます。
夏といえば FIVA 206VL のディスクが必ず故障していた時期です[ 2002-09-12 ][ 20030613#p04 ]。どうも夏には縁があるようです。今年の夏はどんなことが起きるんでしょうか。ドキドキしますね。
2008-02-03 :-)
- 2008 年の抱負
- 北海道へ Canon EOS 30D を持っていって風景撮影する → 済
- もうひとつの今年の目標
- flickrをプロアカウントにする → 済
- 毎月有給休暇を消化する → 済
- 写真を毎月 100 枚撮る → 済
_ 映画を見てないです。
「写真を毎月 100 枚撮る」は flickr にアップロードした枚数を数えることにしました。自動化すると楽かもしれません。
Archives / Posted in / 2008 / January (133 photos)
私が 1 月に書いた目標は GTD でいう「プロジェクト」に相当するようです。
_ [Spybot]Spybot が WindowsXP の hosts に追記していた
C:\WINDOWS\SYSTEM32\DRIVERS\ETC\HOSTS のファイル。
こんな。
# Start of entries inserted by Spybot - Search & Destroy 127.0.0.1 babe.the-killer.bz 127.0.0.1 www.babe.the-killer.bz : 127.0.0.1 www.infectedkernel.com 127.0.0.1 qippi.com 127.0.0.1 www.qippi.com # This list is Copyright 2000-2007 Safer Networking Limited # End of entries inserted by Spybot - Search & Destroy
_ [クリナーレ][アンジェラス][パックマン][リッジレーサーズ]今日のリッジレーサーズ
- EX ツアー 39 に挑戦しようとした
- EX ツアー 39 をプレイするためにスペシャルクラスの車が必要らしい
- 以下のいずれかでスペシャルクラスの車をもらえる
- PRO 19「Duel with Crinale」 クリナーレとの duel
- PRO 20「Duel with Angelus」 アンジェラスとの duel
- PRO 21「Eat Up Or Die」パックマンとの duel
- あと何か
- 以前「Duel with Crinale」をやった
- クリナーレが無限ニトロを使ってくれる
- 勝てるか!!!と放置していた
- でも勝たないといけないらしい
- がんばる
- 以下クリナーレの行動パターン
- こちらが抜くとニトロを使って追い抜く
- こちらが後ろにいると同じくらいの速度で走る
- クリナーレ対策
- 後ろにピッタリくっついていく
- 追い抜いてもどうせ追い抜かれるのでニトロを溜めておく
- ニトロ 3 回ぶん溜めておく
- 3 周目の残りの距離がニトロ 3 回ぶん使いそうなくらいの距離になったらニトロ連発して追い抜く
- そのまま逃げ切る
こんな感じで「Duel with Crinale」に勝ってクリナーレを貰いました。
でもクリナーレのドリフトが滑りすぎて使いづらい。
「Duel with Angelus」をやることにしました。
対策はクリナーレと同じ。
アンジェラスを貰いました。
勢いに乗って「Eat Up Or Die」をやりました。
BGM はもちろん「Eat'em Up!」
「Eat Up Or Die」に勝ってパックマンを貰いました。
- せっかくだから PRO ツアーを制覇しよう
- PRO 22「Jupiter Drift」 CPU は全員アンジェラス
- PRO 23「Mr.Drift's Nightmare」 CPU は全員クリナーレ
- こちらはアンジェラスを使用
- 速度 350 km/h の世界
- ニトロを使うと 400 km/h いくよ
リッジレーサー 7 の動画を見て「400 km/h でドリフトかよ!そんな速度の世界でプレイできるか!!」と思ってたのだけど、やってみると出来るもんです。
_ [クラシックショコラ][おやつ]おやつ
クラシックショコラ( ref. ちゃんと作れるスイーツ pp.26-27 )。膨らみませんでした。手順は前回[ 20080127#p07 ]と同じです。湯煎したけど前回とは違ってあまり膨らみませんでした。ということは卵黄の泡立てが足りなかったかしら。
2008-02-04 :-)
_ [ブルードラゴン][植松伸夫]通勤ったー
ブルードラゴン
ゲーム未プレイ。作曲は植松伸夫さん。植松伸夫さんのやりたい放題になっています。「水辺」ピアノの音を使った奇麗な曲です。「予兆」前半はピアノの音だけを使って後半になるとノイズが混ざった音を使ってより怪しい曲になります。「のどかな日々」はリコーダーを使った曲です。やわらかい。リコーダーを使うとかなり穏やかになりますね。「古代の要塞」などギターを使ってロック風味にした曲が多いです。「Eternity」はイアン・ギランが歌ってます。植松さんは大喜びなんじゃないでしょうか。「封印解放」たぶんラストバトルの曲です。冒頭はゆるやかな曲調で始まり、ギターが混ざりロック風味になり、さらにコーラスが加わって盛大な曲になります。歌詞はたぶん日本語です。歌が 2 曲あります。「BAD BUT BAT」歌っているのは小桜エツ子さん?「Happy Birthday」は川澄綾子さんによる歌です。
B000JBWYRW
_ フィードリーダーなんて要らねーよ
俺にもそう思っていた時期がありました。
2008-02-05 :-)
_ 朝ったー
0540 起床。ねむ。
_ [細江慎治][佐宗綾子][相原隆行][ブシドーブレード]通勤ったー
ゲーム未プレイ。作曲は細江慎治さん、佐宗綾子さん、相原隆行さん。画像は TYPE-S ですがこのパッケージに「TYPE-S」の CD と「ブシドーブレード」の CD が入ってます。たしかブシドーブレードがバトルのゲームだったはずなのでバトル曲が多いことを期待したのだけどバトルっぽい曲はあまり多くないです。全体的に雅楽の楽器の音が使われてます。佐宗綾子さん「天守閣を目指す者達」がいかにもバトル曲になってます。ナムコ「鉄拳5」に似た曲調です。佐宗綾子さんらしい曲になってます。
_ 仕事
0830 出勤。
_ [体験][感動]体験を話すのが下手
朝会ネタにシエナ・ウインド・オーケストラ[ 20080126#p02 ]のネタを話そうとしたんですけどね。コンサート当時は以下のようにテンションが高かったです。
- オーケストラなんて分からないよ!!でもとりあえず行ってみる ><
- アンコールで観客が降りてきた!すげー人数wwww 何人居るんだよwwww
- 舞台に参加した客は楽しいだろうなあ (´ω` )
このときの感動体験を朝会で伝えようとしたのだけど普通に淡々と報告して終わりました。体験談を面白おかしく話すスキルが足りません。コミュニケーション(笑)
_ [Safari][apple]アップルはいまだにアップルコンピューター
Safari for Windows をインストールしてディレクトリの名前が Apple Computer でした。
C:\Documents and Settings\miwa\Application Data\Apple Computer\Safari
Firefox アドオンで使ってる機能を Safari で実現できたら Safari がいい感じに使えるんだけど。
2008-02-06 :-)
_ 朝ったー
0540 起床。ねむ
_ [ファントム・キングダム]通勤ったー
ファントム・キングダム アレンジアルバム
ゲーム未プレイ。アレンジャーは以下の方々。
- 相原隆行
- 高木洋
- 佐宗綾子
- 酒井良
- 齋藤博人
- 金子剛
- 寺嶋民哉
- Mihaela
「The First Battle」はたぶんバトル曲なのだろうけどあまり戦いた(おののいた)感じがしません。運動会で使いそうな雰囲気の曲です。「暗闇の彼方…」はスパニッシュな曲になっています。な?緩急をつけた曲で、いろいろな展開を楽しめます。「私がボスだ!」はバトル曲っぽく激しい曲になっています。
B0007WZXBM
_ 仕事
0830 出勤。
_ 社内報に書いた 2008 年の抱負
抱負は社員全員が提出するものなんですが提出しておいて自分は何を書いたか忘れてました。社内報が先日届いたので自分で書いた 2008 年の抱負を読みました。
三輪晋:ドイツへ行ってビールを飲む。
がんばってくださいね。
_ [パターン]昨日の敵は今日の友パターン
パターン名
昨日の敵は今日の友パターン
概要
当初は主人公の敵として登場した相手が、物語が進むにつれて主人公たちと共闘するようになる。
解説
少年向けの作品( 少年漫画やゲームなど )に見られる。登場当初は憎き敵として振舞うが、その後主人公たちと馴染むことにより親近感を持たせ、以降の物語の登場人物として定着する。
用例
- 残虐超人として登場し、後にキン肉星王位争奪編でキン肉マンチームとして参戦したラーメンマン
- 砂漠の盗賊として登場し、後に孫悟空と一緒に地球防衛したヤムチャ
- ドラゴンボールを奪うために地球に襲来し、後にブルマとの子供を作ったベジータ
- ホイミスライムは なかまになりたそうに こちらをみている
ref. KANOU.JP: パターン アーカイブ
_ 召喚呪文メーカー
( via Unknown Quality
召喚なのに「帰れ」と言われました。
みわの召喚呪文
我、忘れられた境界に繋がれし者。
汝、見目麗しい空間に貢ぎし者。
うろ覚えの誓約に従いママの元へ帰れ!
その隠された網タイツを以って、道行く肉親に
シンプルな波紋を刻みつけるのだ!
_ [NHKクローズアップ現代]NHKクローズアップ現代 「ソフトウエア危機」を見た
( via Okumura's Blog )
こういう「デスマーチを抜けよう!」と話を聞くたびに、
無菌状態で技術者を育てるのはどうなのかと思う。
いや、もちろん過剰な労働を技術者に与えるのは間違っていると思うけれども。
でも、入社直後の技術者にある程度スパルタ教育的な労働は必要だと思うし、
むしろ華盛りである事を煽るようなウェブ業界よりも、
空自、陸自なんて防衛事業のが安全だったり、
あんまりこういう言い方するのはよくないけれども、
『逃げ場』にしているワーキングプアだって多いんだから、
こういう呼びかけのやり方はどうかと本当に思う。
...
...
ごめんなさい。
ネタにするには無理がありました。
ウェブ業界ってなんだ自分
_ [タグクラウド]2007 年を代表する単語のタグクラウドを作ってみる
2006 年と同じです[ 20061225#p09 ]。
かき集めて
% find ~/diary/2007/ -name "*.td2" | xargs cat >> td2007
実行
% tagcloud.pl td2007 2007
出来上がったタグクラウド。崎元仁さんよりかろうじて植松伸夫さんが大きいです。
_ [Impress Watch][Plagger]Impress Watch の RSS 全文フィードを読む
Impress Watch は RSS をフィードしてます。たとえばこんな。
しかしこれらは全文フィードではありません。
本文を読むためにはリンク先を辿らなければなりませんが、いまどきそんな面倒なことは誰もやりません。全文フィードが欲しいです。
それPla
Plagger します。こんな config です。feed は上記に列挙した物だけです。
global: assets_path: /home/rin/plagger/assets timezone: Asia/Tokyo plugin_path: - /home/rin/plagger/plugins log: level: debug encoding: euc-jp cache: base: /home/rin/plagger plugins: - module: Subscription::Config config: feed: - http://pc.watch.impress.co.jp/sublink/pc.rdf - http://dc.watch.impress.co.jp/cda/rss/digicame.rdf - http://www.watch.impress.co.jp/av/sublink/av.rdf - http://rss.rssad.jp/rss/gamewatch/index.rdf - http://k-tai.impress.co.jp/cda/rss/ktai.rdf - http://internet.watch.impress.co.jp/cda/rss/internet.rdf - http://bb.watch.impress.co.jp/cda/rss/broadband.rdf - http://robot.watch.impress.co.jp/cda/rss/robot.rdf - http://kaden.watch.impress.co.jp/cda/rss/kaden.rdf - module: Filter::ResolveRelativeLink - module: Filter::EntryFullText config: store_html_on_failure: 1 # - module: SmartFeed::All # config: # title: impress - module: Filter::Rule rule: module: Deduped module: Fresh mtime: path: /home/rin/plagger/cache/impress.tmp autoupdate: 1 - module: Publish::Feed config: format: RSS dir: /home/rin/public_html/plagger/feed filename: %u.rss
実行。
% /usr/pkg/lib/perl5/site_perl/bin/plagger -c config.impress.yaml
出来上がり。
http://www.area51.gr.jp/~rin/plagger/feed/
SmartFeed::All して 1 つのファイルにまとめたら 2.5MB になりました。さすがに大きすぎるのでフィードごとのファイルにしました。こんな感じです。
Plagger を毎日 0 時に実行して Impress Watch のフィードを更新させることにします。
2008-02-07 :-)
_ 朝ったー
0540 起床。ねむ。
_ [ファンタズマゴリア][植松伸夫]通勤ったー
ファンタズマゴリア
すいませんゲームミュージックではないです。植松伸夫さんのソロアルバムです。たしか私が学生のころに読んでいたファミマガ( いまは休刊 )の読者投稿のところに「FF6 の TVCM に使われた曲がファンタズマゴリアに収録されている」と書いてあったので買いました。ジャケットは鳥取砂丘で撮影したそうです。
インストゥルメンタルだけでなく歌の曲もあります。歌といっても曲を背景にして詩を朗読するような感じです。「ANGEL HANDS」は弦楽器中心の曲です。弦楽器の柔らかい響きが「天使の手」を表現しています。「おきざりのちいさな…」は子供が「自分のことをもっと愛して欲しい!」と叫ぶ悲痛な曲です。歌つき。「DOGS ON THE BEACH」はまさに犬が駆けているような軽快な曲です。「FINAL FANTASY」はファイナルファンタジーシリーズの「FINAL FANTASY」のアレンジです。歌っている少年?の声がキレイです。
「FINAL FANTASY」が使われている FF6 TVCM はこちら。
B000059O5K
_ 放送自粛
「相棒」や「京都迷宮案内」や「西村京太郎サスペンス・十津川警部シリーズ」といったドラマは放送自粛しませんね。とくに西村京太郎シリーズなんてかなりトリッキーだから鉄道関係者は目を光らせそうなものですが。
いまどきはゆとり世代対策として「ビーバップハイスクール」も放送できないかもしれません。30 代はゆとり世代ではなくて良かったですね。
ref. シゴフミ第七話の放送自粛の意味するところ
_ Microsoft の D
名前が悪い。
他の「D」と重複するからではなくてウェブ検索しづらいからです( プログラミング言語 C を想像するといい )。
「D」は正式名称ではなくてコードネームらしいので名前が変わるかもしれませんが。
2008-02-08 :-)
_ 朝ったー
0540 起床。ねむ。
_ [近藤浩治][スーパーマリオブラザーズ]通勤ったー
ファミコン サウンドヒストリーシリーズ マリオ ザ ミュージック
マリオシリーズの音楽です。作曲はマリオブラザーズ以外は近藤浩治さんでしょうか。収録されているシリーズは以下( via amazon )
- マリオブラザーズ
- スーパーマリオブラザーズ
- スーパーマリオブラザーズ2
- スーパーマリオブラザーズ3
- スーパーマリオブラザーズUSA
- ドクターマリオ
- ヨッシーのクッキー
スーパーマリオブラザーズ 1, 2, 3 はプレイしました。スーパーマリオブラザーズ2 は 1-1 くらいしかやらなかったかもしれません。スーパーマリオブラザーズ 1 の曲とスーパーマリオブラザーズ 2 の曲があまり変わっていなかったのにたいして( 全部同じ? )、スーパーマリオブラザーズ 3 は 1, 2 の曲は使っておらず、また使っている音が変わっていたので「ずいぶん雰囲気が変わったなあ」という印象がありました。スーパーマリオブラザーズ 3 の地上面の曲はかなり優しい曲になっています。まるで散歩しているような優しい曲です。スーパーマリオブラザーズ 3 には各ワールドマップごとに曲があるのですが、このアルバムには収録されていません。残念。
スーパーマリオブラザーズではステージクリアの残り時間が少なくなると( 残り 60 秒だっけ )曲のテンポが速くなります。曲は同じなのだけどテンポを速くするだけです。それだけでプレイヤーに焦りを感じさせることができるんですね。
B0002CHR16
_ 仕事
0830 出勤。
_ 昨日書いた日記の youtube の埋め込みをフィードしてないことに気づいた
今朝になって昨日の日記[ 20080207#p02 ]のフィードを読みました。
_ [screen][cygwin]cygwin に screen パッケージがあったのでインストールした
SJIS をエンコードできないので .screenrc に以下を追加。
termcapinfo cygwin KJ=SJIS defencoding SJIS
_ [テスト駆動開発入門]テスト駆動開発入門
「何を以ってプログラムは正しいというのか」を最初に書いておく。
テスト用のコードを「テストコード」と呼び、製品用のコードを「プロダクトコード」と呼んでます。
プロダクトコードを変更する単位はテストコードと同じ単位にする。変数名を変更してテスト。メソッドを変更してテスト。サブクラスを削除してテスト。
4894717115
_ [リファクタリング]リファクタリング
以下についてまとめたカタログ集です。
- プログラムを変更するための判断材料
- プログラムを書き直すときのための手順
「書き直さなければならないような設計が悪い」という伝説はありますが設計は変更されるものです。リファクタリングしたらテストを忘れずに。
4894712288
_ とりあえず買ってみる、役立つかどうかはあとで考える
上記 2 冊は、はるか昔に高林哲さんのサイトで書評を見かけたので買った本です( 高林哲さんのサイトが namazu.org にあったころ見かけました。0xcc.net には書評は無いようです )。
本を買ったときの判断基準は「高林哲さんが話題にしていたから」でした。書評の内容では判断していません。「読書感想で批判しているひとが居た。じゃああまりよくない本なのだな」などとは判断しません。実際にその本が自分のモノになるかどうかは読んでから考えればよいです。でもたまに「そんな本は f*ck だ。読んでないけど」と云っているひとを見かけます。本を読まずに本の内容を判断できるはずがありません。なのでそのようなひとは「読んでない」と云いつつじつは
「その本はちゃんと読んだけどわざわざ読んだ事を報告する義務はないでしょ。ところで本の内容は全然ダメね。ほら。こっちの本のほうが良いわよ。貸してあげるからちゃんと勉強しなさいよね。まったくもう」
というツンデレなのかもしれません。
_ [はてなグループ][RSS][Plagger]はてなグループの RSS の全文フィードを読む
Plagger => HatenaGroup => feed
こう?
global: assets_path: /home/rin/plagger/assets timezone: Asia/Tokyo plugin_path: - /home/rin/plagger/plugins log: level: debug encoding: euc-jp cache: base: /home/rin/plagger plugins: - module: Subscription::Config config: feed: - http://twitter.g.hatena.ne.jp/diarylist?mode=rss - http://area51.g.hatena.ne.jp/diarylist?mode=rss - http://mohican.g.hatena.ne.jp/diarylist?mode=rss - http://tumblr.g.hatena.ne.jp/diarylist?mode=rss - http://subtech.g.hatena.ne.jp/diarylist?mode=rss - http://naoya.g.hatena.ne.jp/diarylist?mode=rss - http://ogijun.g.hatena.ne.jp/diarylist?mode=rss - http://rubyist.g.hatena.ne.jp/diarylist?mode=rss - http://freebsd.g.hatena.ne.jp/diarylist?mode=rss - http://vim.g.hatena.ne.jp/diarylist?mode=rss - module: Filter::ResolveRelativeLink - module: Filter::EntryFullText config: store_html_on_failure: 1 - module: Filter::Rule rule: module: Deduped module: Fresh mtime: path: /home/rin/plagger/cache/hatena.tmp autoupdate: 1 - module: Publish::Feed config: format: RSS dir: /home/rin/public_html/plagger/feed filename: %u.rss
ここに作ってます → http://www.area51.gr.jp/~rin/plagger/feed/
Subscription::HatenaGroup してみたらグループ参加者ごとに feed を作ってしまった。
- module: Subscription::HatenaGroup config: group: subtech
_ [4行日記]4行日記
- 【事実】はてなグループを読むために Pla った。
- 【気づき】subtech は全文フィードを用意している( Hatena::Group::Subtech::Feed )。はてなの標準には全文フィードは無いのか?他のひとはどうやって読んでるんだ?まさかグループ所属してるひとのフィードをひとつずつ読んでるわけではあるまい。
- 【教訓】とりあえずやってみた。誰かの目に止まれば「それ○○で出来るよ」とツッコミが入るかもしれない。入らないかもしれない。やってみないと分からない。
- 【宣言】とりあえずやってみる。
2008-02-09 :-)
_ [自動車][HONDA][ホンダ][インターフェース]「Hondaインターフェイス デザイン展」開催
( via [mixi] しぶさん )
行ってきました。松屋 7F。展示フロアは 1 部屋を借りたくらいの広さです。狭さ?10 畳くらい。展示内容は計器盤( 速度計、タコメーターなど )、1970 年から 2010 までのホンダ車の計器盤の歴史です。運転席のデザインです。写真撮影禁止だったので写真はありません。
- 運転するときの視点の移動距離を少なくする
- ドアの開閉状況を認識しやすくする
- 文字を少なくする
- 絵を多くする
- 車種によって計器表示の優先順位を変える
- 明かりを変えて文字を認識しやすくする
といった配慮がありました。FCXクラリティの計器盤も展示されていました。これはカッコいい。SF 風味です。一度実物を見てみると良いです。ただ、ハンドルやブレーキなどのインターフェースも期待していたのだけど、そーいった装置は展示されていませんでした。
ref.
_ [area51][バーデン・バーデン][ドイツ] area51 新年会 2008
@バーデン・バーデン( Google マップ )
miwarin、kuro、kamo、larm、yoshi、bunji
はるか昔 2000-09-09 岩男潤子 コンサートツアー1999〜2000 @東京日比谷野外音楽堂のコンサート後にだれか( おそらく kuro )に連れていってもらった店です。店の名前を覚えてなかった( 日記にも書いてなかった )のだけど hori が店の名前を教えてくれました。hori++
エロイ話題しか覚えてないです。bunji が Nikon D40 を買ってました。レンズが 30mm F1.4 でした。明るいですね。
2008-02-10 :-)
_ 買い物
482228350X
_ 買い物
gauche.night のチケット。
_ [飯][蔵][クラシックショコラ]飯
蔵で飯。
miwarin、cerbe、hiroym、ohguchi、YAMAGATA、fujiwara、NOB、ねこ
- FF6 の主人公は誰か
- 結論:ロック
- ティナではない
- ティナは物語の中心人物だけど
- 「AKIRA」のアキラとか、「ドラえもん」のドラえもんのような立場
- エドガーでもない
- 代々 FINAL FANTASY のタイトルロゴになるキャラクターは主人公ではなかったから
- ( ref. ファイナルファンタジーVI [ 20061026#p14 ])
先日ついったんが
と言ったので
とフォローしたら
とツッコミを貰いカッとなったのでクラシックショコラを持参しました。これで私もリア充です。家族以外のひとに自分が作ったものを食べてもらうのは初めてです。評判が気になるので関係者のブログ等をウォッチします。
夫妻の嫁さんのほうから \ 時期的にお菓子を貰いました。こちらは向こうを一方的に知っているけど、向こうがこちらの名前を知っていたことに驚きました。
2008-02-11 :-)
2008-02-12 :-)
_ 朝ったー
0540 起床。ねむ
_ [谷岡久美][ファイナルファンタジー・クリスタルクロニクル リング・オブ・フェイト]通勤ったー
ファイナルファンタジー・クリスタルクロニクル リング・オブ・フェイト
ゲーム未プレイ。作曲は谷岡久美さん。略して FFCCRoF。前作の民族楽器を使った音楽と異なり、今回はコード・エイジコマンダーズに似た雰囲気の音楽になっています。1 曲目「Ring of Fates」はメインテーマのような位置づけでしょうか、他の曲にもアレンジして使われています。「最終決戦」はオルガンの音を使い、最後の戦いにふさわしい壮大な印象の曲になっています。
B000ULV3G4
_ 仕事
0830 出勤。
_ 写真では何を表現したいかが大事
( 山本和彦さんとこ )
僕は写真を撮るとき一番大切なのは、「何を表現したいのか」考えながらシャッターを切ることだと思っています。そういったことをまとめてみます。デジカメを買ったものの、自分で撮るといい写真にならないなぁと思っている人の役に立つかもしれません。
まさに私のためのページです。ありがとうありがとう。
水中撮影などに触れて紹介しています。私もいくつか本能的に実践してることがありますが、さすがに水中撮影はやったことがありません。「動物は表情を撮れ」は仕事場新年会[ 20080201#p06 ]で Mk さんが撮影したものがまさにそうですね。動物ではなくて食べ物ですが。元動物というか。
_ ヲレがカラオケで歌えそうな一般層に近い歌
用語の定義
- 一般:ヲタク方面の文脈でいう「一般」のこと。「逸般」ではない。たとえば「田村ゆかり?だれそれ?」「初音ミク?なにそれ?」というような反応をするひとびとのこと。
歌えそうな歌
- 塊魂?
- しかし初代「塊魂」以外の曲はあまりカラオケにない
- TM NETWORK はセーフ?
3 秒考えましたが他に無いようです。
会社のひとから「カラオケ行こうぜ」と誘われて自分がどう振舞うのか楽しみです。
_ [tdiary][spam]うちの tdiary の spam 対策の現状
@miwarinの日記は2.2.0なので、こないだの対策は入ってないんじゃないかなー?
名前が出てきて驚いたのだけど、たださんが正しいです。うちの tdiary は trunk ではないです。「hsbt++」したのは
ではなくて、こちらのほうです↓
そこで spam フィルタの判定基準である 14 日前のエントリはコメント欄を閉じて POST リクエストすら行えないようにしてみたところ spam はさくっと収まった。
- load average が 2 以上あった[ 20070627#p07 ]( core2duo だから 2 以上? 知ったかぶりです )
- hsbt さんとこで「14」という数字を見た
- tDiary の設定 -> spamフィルタ -> 日付けによるフィルタがあることを知った
- 「14日以上前の日付けへのツッコミはspamとみなす」に設定した
いまの load average はこんなです。おかげで load average が下がりました、という意味で hsbt++ でした。タイミング的に紛らわしくてすまぬ。
load averages: 0.07, 0.06, 0.06 16:02:28 69 processes: 66 sleeping, 2 zombie, 1 on processor CPU states: % user, % nice, % system, % interrupt, % idle Memory: 472M Act, 113M Inact, 3964K Wired, 16M Exec, 472M File, 148M Free Swap: 128M Total, 128M Free PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND 797 www 2 0 8416K 7136K poll 3:29 0.05% 0.05% httpd 20 root 18 0 0K 20M syncer 22:07 0.00% 0.00% [ioflush] 829 quickml 2 0 5828K 5648K select 18:57 0.00% 0.00% ruby18 1374 www -4 0 8780K 7344K semwait 3:41 0.00% 0.00% httpd 2393 www -4 0 8848K 7472K semwait 3:34 0.00% 0.00% httpd 1051 www 2 0 8960K 7532K poll 3:33 0.00% 0.00% httpd 1006 www -4 0 8896K 7436K semwait 3:32 0.00% 0.00% httpd 1215 www -4 0 8684K 7100K semwait 3:32 0.00% 0.00% httpd 1244 www -4 0 8864K 7276K semwait 3:31 0.00% 0.00% httpd 436 www -4 0 8808K 7524K semwait 3:28 0.00% 0.00% httpd 1010 www -4 0 8684K 7408K semwait 3:28 0.00% 0.00% httpd 1406 www -4 0 8844K 7352K semwait 3:27 0.00% 0.00% httpd 8394 rin 2 0 35M 12K netio 1:00 0.00% 0.00% <perl> 698 root 2 0 188K 524K kqread 0:38 0.00% 0.00% syslogd 1273 root 2 0 300K 988K select 0:36 0.00% 0.00% sshd 102 root 18 0 1116K 3156K pause 0:28 0.00% 0.00% ntpd 163 root 2 0 1124K 2084K select 0:26 0.00% 0.00% sendmail 2 root -18 0 0K 20M smtaskq 0:24 0.00% 0.00% [sysmon] 244 root 2 0 6144K 7108K select 0:20 0.00% 0.00% httpd 454 postfix 2 0 396K 844K kqread 0:13 0.00% 0.00% qmgr 28211 root 2 0 200K 496K kqread 0:09 0.00% 0.00% master 632 tinydns 2 0 160K 252K netio 0:07 0.00% 0.00% tinydns 21 root -18 0 0K 20M aiodoned 0:05 0.00% 0.00% [aiodoned] 299 rin 2 0 1208K 1628K select 0:04 0.00% 0.00% screen-4.0.3 637 dnslog 2 0 60K 356K piperd 0:02 0.00% 0.00% logger 315 root 18 0 1116K 328K pause 0:01 0.00% 0.00% ntpd 237 root 10 0 268K 416K nanoslee 0:01 0.00% 0.00% cron 24642 rin 2 0 11M 12M select 0:01 0.00% 0.00% perl 991 root 2 0 1044K 1128K select 0:01 0.00% 0.00% dhcpd 16215 rin 28 0 164K 880K CPU 0:00 0.00% 0.00% top 26823 rin 18 0 492K 2124K pause 0:00 0.00% 0.00% zsh 3902 rin 18 0 948K 1748K pause 0:00 0.00% 0.00% zsh 16296 rin 18 0 436K 1224K pause 0:00 0.00% 0.00% screen-4.0.3
_ [ドラゴンクエスト]金管五重奏による「ドラゴンクエスト」コンサート
@第一生命ホール
勝どきのほうです。去年と同じ会場です[ 20070226#p09 ]。金管五重奏は毎年この時期に開催されるようですね。演奏は東京メトロポリタン・ブラス・クインテット( 東京都交響楽団のブラスセクションの方々です )。すぎやまこういちさんはコンサートと違い指揮者ではなく司会のみです。
去年は登場時に「東京・中山 GI競走ファンファーレ」を演奏しながらコンサートが始まったのだけど、今回は普通に始まりました。
最初に感想
普段のオーケストラと異なり、五重奏で音の数が少ないので音を聴き取りやすい。ひとつひとつのパートの音を楽しめる。私はオーケストラの各パートの音を聴き分けられないので(熟練してるひとは聴き分けられるのだろうけど) 五重奏はありがたい。オーケストラはシチューや鍋のようにたくさんの味をまぜて味わう料理だとすると、五重奏は刺身や漬け物のように素材を味わうようなもの。
メンバーは 6 人なのでひとりひとりの出番が多くなり、会話が多くなる。これは良い。人数が少ないから小回りがきくというか。
曲目
上記ページより引用というかコピペ。
〜第1部〜
- 序曲(I)
- 遥かなる旅路〜果てしなき世界(II)
- 世界をまわる(街〜ジパング〜ピラミッド〜村)(III)
- そうだあの時は(VIII)
- レクイエム(II)
- 冒険の旅(III)
〜第2部〜
- 序曲のマーチ
- Love Song 探して(II)
- 戦いのとき(III)
- 高貴なるレクイエム〜聖(V)
- 星降りの夜(DQM)
- 対話(VIII)
アンコール
- イエスタデイ(ビートルズ)
- ローマの雨(ザ・ピーナッツ)
詳細
- 序曲(I)
ドラゴンクエストの初期の「序曲」です。
- 序曲のマーチ
ドラゴンクエストの 4 以降の「序曲」です。ドラゴンクエスト 3 までとは出だしが異なります。
- 遥かなる旅路〜果てしなき世界(II)
「遥かなる旅路」はローレシアの王子とサマルトリアの王子のパーティのフィールド曲です。トロンボーンがメインになり、低い音で静かに演奏し、始まったばかりのまだ先が見えない険しい冒険の道のりを表現していました。
「果てしなき世界」はムーンブルクの王女参戦後のフィールド曲です。こちらはトランペットがメインになり、「遥かなる旅路」とはうって変わってとても明るい曲になりました。
- Love Song 探して(II)
全員ミュートを装着して演奏してました。ぽわっ ぽわっ という音で演奏です。かわいい。すぎやまさんが言うには「コッコッコッコッ という音だね」。
- 冒険の旅(III)
トランペットがメインの編曲です。トランペットメインなのはオリジナルのオーケストラ曲も同じです。こうして聴いてみるとこの曲は行進曲なのですね。魔王に挑む勇者たち。
ドラゴンクエストの曲を演奏する
ドラゴンクエストの音楽をアレンジし、演奏するときの苦労などをすぎやまこういちさんがクインテットメンバーに訊いていました。メンバー全員に訊いてたのだけど全ては覚えてないです。覚えてるところだけ。
- 高橋(トランペット and 編曲)「ドラゴンクエストの元の曲はオーケストラ用に書いてある( すぎやまさんが書く )。五重奏なので元の曲から使う音を絞る。すぎやまさんはこの曲でどの音をメインに使っているのか、どの音を抽出するのか、それを考えながら編曲している」
- 小田桐(トロンボーン and 編曲 )「曲を書く作業は好きなので苦にならない。ドラゴンクエストの曲はなんと言うのだろう、素朴な感じ、懐かしい感じがする」
- 中山(トランペット)「編曲された楽譜を受け取るときがいつも緊張する。楽譜を見て『そうきたか!』と思うときもあるしホッとするときもある。おおむね『このパートはやりたくないなあ』というパートの担当になることが多い。編曲は難しくても練習しているといつの間にかマスターしている」
- 安藤(パーカッション)「五重奏用の編曲なのでいつもパーカッション用のパート譜が無い。今日はテューバ用のパート譜を使って演奏してる。今度はパーカッション用のパート譜も書いてね」
2008-02-13 :-)
_ [デブサミ][Developers Summit 2008]Developers Summit 2008 - デブサミ2008
@目黒雅叙園
「Joel on Developers Summit」
joel の話なら聞かないはずないだろ、ということで聞きました。同時通訳ではなくて逐次通訳というか。プレゼンが物凄く面白いです。時間の半分くらい笑ってました。Microsort への dis りが素敵。
- joel の理論
- 人を幸せにする
- 感情を考慮する
- 美学にこだわる
人を幸せにする
- 写真をアップロードしようとしただけなのにいつの間にか Windows のシステム管理をしていた
- 俺は写真をアップロードしたいだけなんだよ!
- コンピューターを管理したいわけじゃない
- コンピューターは私のことを嫌っている
- コンピューターに制御された
- 学習性無力感
- うつ病の原因のひとつかもしれない
- 世界に対して自分が何もしていない、という無力感
- 治療法
- 簡単な作業をする
- 窓を拭く
- 料理を作るなど
- 自分が何かをやっている感を取り戻す
- ヲレは本能でこれをやった
- 簡単な作業をする
- ソフトウェアの場合
- ユーザーに「俺ってソフトウェアを支配してるじゃん」感を持たせる
- アクションからフィードバック
- 1 秒かかってちゃ長い
- 1 秒未満
- テレビのリモコンを操作 → 画面が切り替わらない → あれ? → 遮蔽物があった
- この「あれ?」まで 1 秒かかるようではダメ
感情を考慮する
- SUV 車は安全だ、とアピールする
- 車内にカップホルダーを置く
- 幼いときにいつもそばにあった温かい物
- 母の温もりを連想させる
- 安心
- という流れらしい
- 丸みをつける
- Windows のウィンドウは 2000 では角があった
- XP になって丸くなった
- XP は安全です :-)
美学にこだわる
- iPhone
- バッテリーを操作できないようにした
- 物理的に余計な外部インターフェースをそぎ落とした
- 機能をしぼったインターフェース
- 見た目
- 見た目が素晴らしい物は見えない部分の処理をがんばっている
- 誤帰属( Misattribution )
- 原因を勘違いする
- たとえば吊り橋理論
プレゼンのコツ
- 絵を見せよう( 誰の絵だっけ )
- ジョークを入れる
- 音楽を使う
- これでとりあえず聴衆には「何となく楽しかった」感を味わってもらえる
joel の新刊のサイン会を開催してたのでサインを貰いました。握手したときに joel が目を合わせませんでした。照れてたのかしら。joel かわいいよ、joel
ふつうのRubyプログラマに贈るRubyプログラミング講座
- Visitor パターン
- それ send メソッドで
などコードを読むような感じでした。
2008-02-14 :-)
_ [デブサミ][Developers Summit 2008]Developers Summit 2008 - デブサミ2008 2 日目
大規模ミッションクリティカルシステムのプロジェクトチームビルディング
羽生田文晴
- NTTデータのひと
- プレゼン資料の字が小さい
- 最前列に居たけど読めない
- 背景と文字の色が同じ
- 読みづらい
- 話が抽象的なのでつまらない。守秘義務があるからか?
- コンピューターの歴史を振り返る
- 要らない
- とっとと本題に入ってほしい
- 「連続運転」のニュアンスが異なる
- IT 業界:メンテナンスのときは止める、障害時に止まるのは仕方ない
- 通信業界:サービスがまったく停止しないこと、無停止
- サーカス
- iモードを処理するシステム
- 秒間 N 万アクセス
- 高負荷
- 通常時の負荷は問題ではない
- ピーク時( あけおめメール、災害時 )を処理できるかが問題
- CPU 負荷 100% でもダウンしないこと
- じゃあサーバーを増やせば良いだろ
- いいや問題はそこじゃない
- 各々のサーバーが極限状態を耐えられるかが問題
- マネジメント
- 用語を定義する
- 設計思想を共有する
- なぜこれをやるのか
- なぜこうするのか
- 士気を高める
- プロジェクトメンバーに浸透させる
- 基本的なことだけどこれをやらないと破綻する
スプーンで飛行船を飛ばそう!〜子どもにソフトウェア開発とは何なのか伝えよう!
二上貴夫、香山瑞恵、あと NEC のひと
- マジカルスプーン
- 実際に動く物をプログラミングしよう
- でもコードは書かない
- コードを設計する
- 実演
- スプーンを叩いて飛行船を操作する
- 自分が制御する
- ユーザーの制御下にある
- joel が言っていたことと同じか
- 自分が制御している感がある
- 楽しい
- プレゼンのスクリーンを飛行船が邪魔したとか
- 実装
- 組み込み
- エラーはタイムアウト値を計測する
- スプーン叩く音のサンプリングは 200msec くらい
- マイコンはμPDxxxxxx
- NEC の製品だっけ
- マイコンのインターフェースを設計するのはしんどい
- ベテランでもしんどい
- ポートの初期化とかマニュアルを読みながら設計するのは退屈な作業
- それ Applilet で出来るよ
- デバイスドライバ・コンフィギュレータ (Applilet)
鳥の目、虫の目 〜地表へのアプローチ
面白かった。joel のセッションよりさらに笑いました。
石川初
- ランドスケープ
- 地上を設計する
- 建物
- 庭
- 植物を使う
- 外部を設計する
- スケールは大小さまざま
- 土地計画からビル屋上の一面まで
- 樹木がある土地
- そこには木が育つ環境があるということ
- 樹齢数百年の木がある土地
- そこには数百年持続する環境があるということ
- 鳥の目
- 全体を俯瞰する
- 町全体
- 建物全体
- 地図
- 虫の目
- 自分の視点
- 部屋の写真とか
- 廊下
- 地表
- 「人間は世界を地図的に理解したいのではなかろうか」(石川)
- 地図のリテラシー
- 地図を地表と結びつける
- 地形図など他の地図を見よう
- 航空写真と地形図を見比べると別のものが見えてくる
- 渋谷は谷であり青山のほうは峰になってる
- 銀座線は谷(渋谷)から出発して峰に突っ込む
- 渋谷だけ地上 3F くらいにあり他の駅が地下鉄なのはそーいうこと
- 建物は地形を利用して作られる
- 地形的にゆたかな生活
- GPS を持って出かけよう
- GPS の記録を地図に書こう
- GPS の記録で絵も描けるよ
- bs@GPS:地上の星プロジェクト
- 目黒区に描かれたタモリさん
- 品川区、目黒台地をまたぐトカゲ
- 青梅市近郊に描いた「クリスマスツリー」
- 高度も記録する
- 3D 地図に描くと面白い
- カシミール 3D とか
「デベロッパーテスティング・ライブ - 自信を持ってコードを書くための心・技・体 -」
和田卓人
- プレゼン資料の背景色は暗い色のグラデーションがきれい
- FF6 のウィンドウみたいな
- テストしようぜ
- グリーンを期待したが結果はレッド
- レッドを期待したが結果はグリーン
- おかしいぞ? と気づくことが重要
- FizzBuzz でテスト
- off-by-one エラーも発見できるよ
- 目視で検査するのがしんどい結果でもテストなら計算機が判定してくれるよ
- Developer Testing
- プログラマのプログラマによるプログラマのためのテスト
- プログラマが自分のコードに自信を持つため
- 品質のためのテストではない
- でも品質にもつながるよ
- テストはスキル
- 習得可能
- 量は質に転化する
- 写経
ネット・コミュニケーション2.0
- 戀塚昭彦 - ニコニコ動画が生まれたわK
- 在宅勤務について
- 同僚とのコミュニケーションが不足する
- 相手の顔が見えない
- プライベートのイベントはけっこう発生する
- 集中できない
- 対策
- コミュニケーション
- あらゆる道具を使って補う
- リアル重要
- 雑談重要
- 「親しみ」を持たないと本音が聞けない
- 週 1 回出社
- 社内を歩き回る
- 実例:ニコニコ動画
- 知識の共有
- 最初に目標、イメージをメンバーとしっかり語りあう
- コミュニケーションパス
- 実際に動作するプログラムを常に置いておく
- 完成したサービスをイメージする
- コミュニケーションパスを少なくする
- 連絡する相手を減らす
- 多いと面倒になる
- 作業分担して回避
- 株式会社ドワンゴ - 採用情報>特別企画「プロジェクトストーリー」>第一章 ニコニコ始動編
- 在宅勤務について
- 松内良介 - DeNA モバゲータウン開発の裏側
- Microsoft Vista を書いたよ
- 健全化のための技術
- フィルタ
- 自然言語と統計を駆使
- 35 歳(男)から 14 歳(女)への過剰なメールなんてものも検出できるよ
- 目視パトロール
- 日本の技術者にすごいひとは居るよ
- 世界に通じるひとは居るよ
- 外に出ようぜ
- CHEEBOW(関根元和) - Twitで行こう!
- Twit 使ってませんすんません
- Twitter API との戦いの歴史
- 半角、全角の間にスペースとか
- API 制限とか
- Twit でオフ充になりました
- 松野徳大 - コミュニケーションを加速するコミュニティサイトWassrを高速に開発するためのコミュニケーション技法について
- safari でプレゼン?
- 社内ブログとか IRC とか結局本音を書かない
- そこでタバコ部屋メソッド
- 顔を合わせて話す
- 雑談重要
- 毎日勉強会
- コードレビュー
- 印刷してみんなで読むだけだよ
- 雑談する時間を作れるよ
- 大沢和宏(yappo) - 秋月VFD量産計画によるコミュニケーション促進
- Wii Fit についてくる「バランスWiiボード」を PC につないでry を見て、いつかプレゼンで WiiFit を使うひとが登場するだろうと思ってたら登場した
- 最初の時間では動作しなかったので LT の最後に再度プレゼン
- WiiFit を入力デバイスとして使う → Macbook へ入力 → プレゼンを操作
- Mac::WiiRemote かいた - Yappo::Hatena::Diary
- 竹迫良範 - 地域コミュニティに国境はないかも
- Perl は初心者向け言語です( 最もタメになる「初心者用言語」は Brainf*ck! - TAKESAKOのはてな出張所 )
- joel とのツーショット写真を披露していた。けまらしい
- otsune - ネットウォッチ2.0
- 多角的な情報を収集して情報をつなげるとその本筋が見えてくる
- 手動は人生の無駄
- 自動化する
- レスポンスが遅いインターフェースは時間の無駄
- Gmail の UI とか
- del.cio.us の UI とか
- 映像業界のひとは 1/24 秒( 0.0416 秒 )以上は耐えられない
- ゲーマーは 1/60 秒( 0.016 秒 )以上は耐えられない
- 秋元裕樹 - Asiajinでみるエンジニアの海外進出方法
- 覚えるべきなのは英語じゃなくてコミュニケーション
- 完璧主義になることはない
- cho45 - CodeReposにうpする事は恐くないよ
- Subversion 使えれば恐くないよ
- とりあえずコミットするといいよ
- 事例:mobirc
- keitairc が不満だから書いたもの
- 物凄い勢いでコミットされたよ
- みんな HEAD 使ってるよ
- とりあえず参加しようよ
- あまのりょー - 社内勉強会のススメ
- LT のネタのストックを常備
- 6 個くらいあった
- 巻き込み力、巻き込まれ力
- 観測してみた
- イベントのセッションを聞けなかったひと
- 社内に招待して話してもらった
- 社内勉強会
- TIPS
- 予算持ってる上司を味方にする
- 飲み会重要
- Morning Bee
- 早朝読書会
- 同じ本を読んでるひとを巻き込む
- まとめ
- 名前重要
- 社内、社外のひとを巻き込む
- LT のネタのストックを常備
2008-02-15 :-)
_ 朝ったー
0540 起床。ねむ。
_ [ファイナルファンタジー I・II][植松伸夫]通勤ったー
ファイナルファンタジー I・II全曲集
今日から 3 週間くらいファイナルファンタジーシリーズ( 以降 FF )の作品が続きます。FF1, 2 は各々 1 回ずつプレイしました。作曲は植松伸夫さん。CD 1 枚に FF1 と FF2 の曲が収録されてます。CD の最初と最後にアレンジ曲があります。最近の FF は 1 ゲームで 100 曲近くあるのが当たり前になっていますが、このころは曲数が少なかったです。FF1 は 20 曲。FF2 は 27 曲です。FF1 から FF12 までの曲数は以前まとめました[ 20070302#p04 ]。
FF1。使用している音が少ないのでメロディが分かりやすいです。世間では「マトーヤの洞窟」が人気があるようですが( 観測範囲が狭いですが )私は「街」「店」「船」など素朴な曲のほうが好みです。
FF2。ゲームの開始直後にパーティが全滅します。なので「プレリュード」の次に「戦闘シーン」が収録されています。「メインテーマ」はフィールド曲なのですが、暗いです。作品全体に漂う悲壮感を表しています。「チョコボのテーマ」は今では FF の伝統的キャラクターになったチョコボの曲です。チョコボは FF2 で初登場しました。「ファンファーレ」は FF5 「ファンファーレ1」と同じ曲です。「戦闘シーン2」はボス戦の曲です。植松さんの「裏切るような曲」[ 20071020#p01 ]が発揮されています。tr45「店」以降はゲーム未収録の曲です。tr48「ダンジョン」は後に FF6「からくり屋敷」として使われます。
B00005FO1L
_ 仕事
0830 出勤。
_ 仕事場のレイアウト
上司から「事業所のフロアレイアウトの草稿を描いてみないかい」ということでチラチラ描いてみました。ISMS 的な機密保護レベルくらいは考慮しました。あと消防関連で部屋に要求される事項がありそうなんだけどさっぱり分かりません。むしろ素人にやらせるよりも外部業者に金払って設計してもらったほうがいろいろな意味で良いんじゃないでしょうか、と上司にはツッコミしておきました。
_ 仕事場の席にチョコレートが置いてあった
一緒に「【品質】設計者の心得」というメッセージカードも置いてありました。「チョコレートやるから会社にちゃんと貢献しろよ」という飴とムチなメッセージかもしれませんね。
_ デブサミに行って気づいたこと
- 最初から最後まで居ることが体力的につらい
- 会場近辺に喫茶店が無い
- ホテル内の喫茶店のコーヒーは高い( 1 杯 900 円なんて生活は私には出来ない )
- なのでちょいと移動してベローチェでコーヒー飲んで読書したり
- 会場の最前列は空いている
- たまにプレゼン資料の字が小さいひとが居るので最前列のほうがいい
- 講演者のしぐさも見れるし
- プレゼン資料
- 背景色は黒、文字色は白が見やすい
- 背景色をグラデーションしておくとかっこいい
- 「ソフトウェア開発と関係無いんじゃないか?」という講演も聴くといい
- 新しいことが分かるので楽しい
- 全然違う業界の話を聴ける
- 違う業界と自分の業界の共通点を発見したりして楽しい
- 鳥の目、虫の目[ 20080214#p01 ]
- JaSST 2008 ナムコのひとたち[ 20080130#p01 ]
- Embedded Technology 2007 人間中心設計フォーラム2007[ 20071116#p06 ]
- 1 セッション空けておくと時間が余る
- あまのりょーさんから「30分くらい時間を潰すならブースに居るひとと会話して時間を潰せばいいよ」と助言を頂いた
- なっ ブースに居るひとに話しかけるんですかっ そんな恐れ多い おう え あうあ
- という恐怖感
- ブースはまったく行かなかった
- 翔泳社は joel 本があるから行ったけど
_ [Emacs][Mac OS X][akio0911]皆さん、Terminal内でEmacsやVimを使ってますか? - Web2.0職人への軌跡
( akio0911 さんとこ )
コメントを書こうとしたけどやめました。考えてみたら私が Mac mini で Mac OS X を使ってたころは以下のような状況でした。たぶん
- Emacs current を使ってた
- vim は使ってない
- Terminal 内で使ったかどうかあまり覚えてない
- 日本語は問題なく使えてた気がする
- uim と Anthy を使ってた記録はある( [ Mac OS X で uim と Anthy を使う ] )
- なので普通に日本語を使って暮らしてたと思う
幼いころから「Emacs は current を使うもんだ」と啓蒙されて育ったので Carbon Emacs を使ったことが無く、上記のように記憶が曖昧だし現在だといろいろな状況が異なるかもしれないし結局助言にならないのでここでボソボソしておくことにします。
_ [joel]joel が言っていた「美学」
- 無駄な機能を削ぎ落とす
- 必要最小限の機能
- 洗練させる
joel は Apple iPhone と Samsung BlackJack を比較していました。
- iPhone
- 機能を絞る
- やれることを絞る
- 無駄が無くなる
- インターフェースを減らす
- BlaskJack
- 多機能
- なんでもやれる
- インターフェースが多い
joel が言っていたのはたんに華やかという意味ではなくて、単純な機能を実現したので見た目がこうなりました、という意味の美しさだと解釈したけど違うのかしら。Macbook Air を見たときに同じような印象を持ちました。ちなみに Macbook Air 実機を使ったことはないので妄想です。
建築に無駄な装飾をとりのぞくモダンアーキテクチャという流派があるが、ソフトウェアはまだその段階に達していない。ユーザーは装飾を好む。ウィンドウのありえないところに影があったり、金属でもないのに金属の見た目だったり。
そうか。モダンの話題がありました。装飾の話題がありましたね。
_ [tdiary][trunk][current] tdiary current を追いかける
しばたさんから「 trunk にしちゃいなよ」とツッコミを頂いたので tdiary を trunk にしました。current? trunk?
作業ディレクトリは $HOME/usr/local/tdiary-cur です。このディレクトリに以下のような trac.sh を用意します。tracking の trac です。contrib は tdiary-contrib と CodeRepos にありますが tdiary-contrib から取得だけしておきます。でも cp しないことにします。setup, teardown の関数名は RSpec を真似しました。public_html 以下にファイルを cp するので最初に apache を stop しておきます。最後に apache を start します。「それ 1 行で書けるよ」といった処理があればツッコミをお願いします。
#!/bin/sh PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/pkg/bin setup() { pserver=:pserver:anonymous@tdiary.cvs.sourceforge.net:/cvsroot/tdiary modules="core plugin contrib" workdir=$(pwd) tdiarydir=${HOME}/public_html/tdiary sudo /etc/rc.d/apache stop } teardown() { sudo /etc/rc.d/apache start } main() { local op=$1 cvs -d"${pserver}" login case $op in checkout) for mod in $modules; do cvs -z3 -d"${pserver}" co -P $mod done ;; update) for mod in $modules; do pushd . cd ./$mod cvs up popd done ;; esac cd "${workdir}"/core cp -R * "${tdiarydir}" cd "${workdir}"/plugin cp -R * "${tdiarydir}"/misc/plugin } setup main $@ teardown
こんなふうに実行。
% cd ~/usr/local/tdiary-cur % ./trac.sh checkout
cvs up は動作確認してないです。
ref.
_ 買い物
amazon
@lynmock への小遣いをあげるために買ってみました( ref. P3:PeraPeraPrv - とかいろいろ )
( via ただのにっき )
B000YIRSGM
( via [mixi] トヨタ生産方式 )
4828413995
( 誰かが Twitter で「いい!」と言っていた )
B000NVL0T6
( MAD を見て釣られた )
B000SKNOF0
2008-02-16 :-)
_ [能登]能登紀行 1 日目 朝
細江慎治さんと「わお!メガテン!メガテン!最近は『Combustio』や『Listen Up!』などを毎日聴いてるよ!YO! りっすんりっすんりすんりすん!!!1111!」などと会話するなどしている夢を見てウハウハしていたのだけど気づいたら 0700 でした。あれ?たしか 0700 の最寄り駅発の電車に乗るのではありませんでしたか?
寝坊ですね。
まあなんだかんだで集合時間に間に合いましたが。
好調な滑り出しです。
Canon EOS 30D を持参して撮影しまくったんですが全体的に暗いです。光が足りません。光りよ…!
_ [能登]能登紀行 1 日目 風呂
都合により写真はありません。広い風呂は良いですね。露天風呂があったので入ったのですが、あいにくと夜だったので外の景色が見えませんでした。外は吹雪いてました。あと風呂の湯が塩辛かったです。
2008-02-17 :-)
2008-02-18 :-)
_ [植松伸夫][ファイナルファンタジーIII]通勤ったー
ファイナルファンタジーIII
ゲームは 1,2 回プレイしました。作曲は植松伸夫さん。シリーズものの作品には「お!?音楽がいままでと違う」という印象を持つ作品があります。FF3 は「バトル2」(ボス戦の曲)を初めて聴いたときに「 FF2 までと音楽が違うぞ?」という印象を持ちました。FF2 までの曲の音がピコピコ音だったことに比べて FF3 では響くような音を使って( この技法はなんていうんだ? )豊かな曲になっています。
「悠久の風」はフィールドの曲です。穏やかな風が吹く草原を歩くような伸びやかな曲です。このサントラ CD はゲームをプレイしたあと数年後に買ったのですが、この「悠久の風」がどうしてももう一度聴きたくなったので買いました。「悠久の風」のためにこのサントラ CD を買ったようなものです。「山頂への道」はバハムートの巣などで使われています。ダンジョンだけでなくインビンシブル内部の曲にも使われているので、ダンジョンの曲というより冒険を準備している燃え上がる情熱といった印象があります。「チョコボのテーマ」はお馴染みチョコボの曲です。FF2 では 8 小節の曲だったのだけど FF3 から 9 小節以上の曲として定着しました。「クリスタルタワー」はクリスタルタワーでの曲です。冒険当初は頼りない 4 人だったけど今では三賢者のひとりに挑み世界を闇から救う光の戦士として成長した少年たちの力強さを感じとれます。
B00066W4GQ
_ 仕事
0830 出勤。
2008-02-19 :-)
_ 朝ったー
0540 起床。ねむ
_ [植松伸夫][ファイナルファンタジーIV]通勤ったー
ファイナルファンタジーIV
ゲームは 3, 4 回プレイしました。作曲は植松伸夫さん。FF4 からスーパーファミコン( 以降 SFC )です。SFC になってから使用している曲が増えました。FF4 ではとくにドラムの音を使い、重厚な雰囲気を作っている曲が多いです。ただ、全体的に 1 ループしかない曲が多いです。1 ループしてない曲もあります。サントラ CD を買ったのはたしか私が中学生のころです。FF の CD が存在することを知らなかった当時に友人が持っていてサントラ CD という存在を知りました。どうしても欲しくなったので友人から 1000 円で譲ってもらった記憶があります。
- ファイナルファンタジーIVメインテーマ:フィールドの曲です。他の曲にアレンジして使っている部分もあります。
- 長い道のり:使っている場面は忘れました。FF4 ゲーム内にイースターエッグとして「スクウェア開発室」があり( 正式名称は忘れました )、そこでかなりお疲れになっているひとの BGM に使われていたことを覚えています。疲労感がただよう曲です。
- ゴルザベーザ四天王とのバトル:前奏だけで 50 秒あります。
- サンバ・デ・チョコボ:黒チョコボの曲です。FF では初めてのチョコボ曲アレンジです。以降の作品では「○○・デ・チョコボ」の曲が書かれるようになりました。
- ドワーフの大地:「メインテーマ」のアレンジです。地下にある大地です。
- 巨人のダンジョン:巨人とラストダンジョン後半で使われています。
B00066W4H0
_ 仕事
0830 出勤。
_ [XPUG]第20回 XPユーザー会
( via いろんなところ )
予約申し込みました。
●日時
2008/3/7(金) 19:00〜21:00 (開場 18:30)
●場所
マイクロソフト新宿オフィス(小田急サザンタワー)
5FセミナールームA+B
http://www.microsoft.com/japan/presspass/MAP/shinjuku.aspx
アジャイルプラクティスは買っていないし読んでいないけど amazon ウィッシュリストに入ってるので買って読みます。
_ [FF6][ティナ][メインテーマ]FF6 のメインテーマ的曲は「ティナのテーマ」である
用語の定義
- メインテーマ:サウンドトラックに「メインテーマ」の曲名で収録されている曲
- フィールド:街の外 and ダンジョンの外 and 飛空挺ではない場面
- フィールド曲:フィールドに使っている曲
最初にいいわけ
FF6 に「メインテーマ」はありません。なので「 FF6 のメインテーマは何であるか」はそもそも問題になりません。「 FF6 のメインテーマは何であるか」と問われたら、答えは「存在しない」です。そこで、ここではメインテーマにふさわしい「メインテーマ的曲」は何であるかを考えて遊んでみます。
メインテーマとフィールド曲
FF ではメインテーマをフィールド曲として使っていることが多いです。作品ごとのメインテーマの曲名とフィールド曲の曲名は以下になります。
作品 | メインテーマ | フィールド曲 | 備考 |
FF1 | メイン・テーマ | 同左 | |
FF2 | メイン・テーマ | 同左 | |
FF3 | なし | 悠久の風 | |
FF4 | ファイナルファンタジーIVメインテーマ | 同左 | |
FF5 | ファイナルファンタジーVメインテーマ | 4つの心 | 第一世界のフィールド曲。「ファイナルファンタジーVメインテーマ」のアレンジ |
FF6 | なし | ティナのテーマ | |
FF7 | F.F.VIIメインテーマ | 同左 | |
FF8 | なし | Blue Fields | |
FF9 | なし | あの丘を越えて | 「Melodies Of Life」のアレンジ |
FF10 | なし | たくさん | |
FF11 | なし | なし | |
FF12 | FINAL FANTASY XIIのテーマ | たくさん | 「FINAL FANTASY XIIのテーマ」をアレンジして使っている曲が多い |
メインテーマ
メインテーマには以下の特徴があります。
- フィールド曲に使うことが多い
- アレンジして他の曲に使うことが多い
フィールド曲については上記の表のとおりです。アレンジして使う曲は、たとえば FF5 では「ファイナルファンタジーVメインテーマ」が「オープニング」「脱出!」「いつに日かきっと」などに使っています。
メインテーマはアレンジして他の曲に使っていることが多いです。他の曲に使ってこそメインテーマといえます。FF6 にはメインテーマがありませんが、他の曲にアレンジして使っている曲を探すことにより、メインテーマ的曲を推測できます。
キャラのテーマ
FF6 で「ティナのテーマ」を使っている曲は以下になります。
- 予兆
- 目覚め
- 幻獣を守れ!
- メタモルフォーゼ
ティナ以外のキャラのテーマもアレンジして使っている場面はあります。しかし「ティナのテーマ」に比べて使っている場面が少ないです。テーマとアレンジして使っている場面の対応は以下になります。
キャラのテーマ | アレンジした曲 |
ロックのテーマ | 永遠に,レイチェル |
エドガー、マッシュのテーマ | 運命のコイン |
セリスのテーマ | アリア |
セッツァーのテーマ | 墓碑名 |
まとめ
「ティナのテーマ」はフィールド曲に使っており、さらにアレンジして使っている場面が多数です。「ティナのテーマ」はメインテーマとしての特徴を持っています。よって「ティナのテーマ」は FF6 のメインテーマ的曲と言えます。
もっとも、 FF6 はティナを中心にして話が進むので「ティナのテーマ」を使っている曲が多いのは当然です。「予兆」「目覚め」などもティナが絡んだ場面での曲です。
_ [ニコニコ動画][tdiary] tDiary ニコニコ動画プラグイン
入れてみました。tdtds++
% cd ~/usr/local/tdiary-cur % svn co http://svn.coderepos.org/share/platform/tdiary/ contrib-coderepos % cp contrib-coderepos/plugin/nicovideo.rb ~/public_html/tdiary/plugin
wiki スタイルなのでこう書きます。
{{ nicovideo "sm1891632" }}
_ [4行日記]4行日記
- 【事実】チーズフォンデュ[ 20071120#p05 ]を作ったときに買ったパルミジャーノをおろして使った。
- 【気づき】熱したが最後まで粉のままだった。溶けると思ったんだがなあ。2ヶ月くらい冷蔵庫に眠ってたからそれが原因か?
- 【教訓】鮮度重要
- 【宣言】食材はとっとと使う
2008-02-20 :-)
_ [植松伸夫][ファイナルファンタジーV]通勤ったー
ファイナルファンタジーV
ゲームは何度かプレイしました。作曲は植松伸夫さん。私がゲーム音楽に心酔するようになった原因です( きっかけではないです )。FF4 がまだスーパーファミコンの音を使いこなしていない印象があるのに対して、FF5 はかなり完成度が高いです。FF5 の世界が北欧の雰囲気になっていてゲーム全体が穏やかで心地よい世界になっています。「現実逃避して FF5 の世界に住みたい」と思うくらいの世界です。音楽はこのゲームの世界にぴったり合った音楽になっています。激しい曲はあまり無く、全体的に温かい印象です。1 曲目「ファイナルファンタジーVメインテーマ」が FF5 のすべてを表しています。
FF シリーズは FF5 から CD が 2 枚以上になりました。曲が増えたのは「場面における曲」が増えたからです。これまでの FF 音楽が「場所を表す曲」でした。ゲーム中のすべてのダンジョンに「ダンジョン」を使い、ゲーム中のすべての街に「街」を使う、といった使い方です。それが FF5 から「物語の場面を表す曲」になっています。たとえば FF3 ではフィールドは浮遊大陸と地上世界のフィールドがありましたが、使っている曲はすべて「悠久の風」でした。 FF5 はフィールドが第一世界、第二世界、第三世界の 3 つあり、フィールド曲も各々の世界ごとに書いてあります。最初は何でもない今まで暮らしていた世界だったのが( 第一世界 )、じつは別の世界が存在することが分かり( 第二世界 )、世界の全貌が明らかになりエクスデスにより世界が無になろうとしている( 第三世界 ) という曲になっています。曲を聴き進めると FF5 の世界が変貌していくことを感じ取れます。
- オープニング:ゲーム最初のオープニングです。オープニング専用の曲は 5 が初めてです。
- 4つの心:第一世界のフィールド曲です。メインテーマのアレンジです。
- ダンジョン:ダンジョンの曲。恐ろしい魔物が潜むような印象ではなく、神秘的な世界を表現したような曲になっています。
- 街のテーマ:街です。静かで穏やかな印象です。こんな街に住んでみたいですね。
- ハーヴェスト:どこの曲だっけ。harvest( 収穫 )という名のとおり、収穫を祝う祭りのような賑やかな曲です。聴いているだけでワクワクします。
- 想い出のオルゴール:バッツの故郷にあるオルゴールの曲です。オルゴールのぜんまいが尽きるように曲が終わります。
- 暁の戦士:ガラフたち暁の戦士が登場するときの曲です。心を奮い立たせるような勇ましい曲です。
- 未知なる大地:第二世界のフィールド曲です。
- 新しき世界:第三世界のフィールド曲です。第三世界では飛空挺に乗っても飛空挺用の曲にならず「新しき世界」を一貫して使っています。飛空挺に乗ると「新しき世界」を BGM にして飛空挺のプロペラの「シャッシャッシャッ」という音が鳴り響き、それがなんともいえない不気味さを作っていました。
- 決戦:エクスデス戦の曲です。8 小節目辺りからのドラムの音が野蛮さ、野生さ、猛々しさを表しています。植松さん得意?の「期待を裏切る曲」[ 20071020#p02 ]になっています。
- 静寂の彼方へ:エンディングの曲です。基本のメロディを 3 ループする構成になっています。エンディングの進行に合わせて曲が明るくなっていきます。1 ループ目は寂しい曲ですが( ゲームエンディングでは無に閉ざされた絶望感が描かれている場面 )ループするごとに使う音が増えていき、最後は無から脱出する活路を見出した希望を表す明るい曲になります。
- 親愛なる友へ:エンディングの曲です。クルルからシドへ宛てた手紙を読む場面です。解散し各々の生活を始めた光の戦士たちの現状を紹介しています。
- ファンファーレ1:FF2「ファンファーレ」と同じ曲です。
サントラの最後のほうに「ファンファーレ」など SE のような短い曲が集められています。「ピアノのおけいこ1」〜「ピアノのおけいこ8」はゲーム中に登場するピアノを演奏したときの曲です。エンディングを聴き終わり、サントラの最後に「ピアノのおけいこ8」を聴くと「ああ、FF5 が終わったんだな」と実感し、少し寂しくなります。
B00005FNVO
_ 仕事
0830 出勤。
_ [Perl][高林哲][がらくた][コードリーディング]がらくたを読む - all-substrs
高林哲さんの がらくた置き場 にあるプログラムを読みます。
http://0xcc.net/attic/all-substrs
部分文字列を作成するプログラムです。
冒頭にコマンドの呼び出し方と、コマンドの結果の例が書いてあります。
#! /usr/local/bin/perl # # Generate all substrings. # Number of substrings = n * (n + 1) / 2 # # % echo abcd | perl all-substrs # a # ab # abc # abcd # b # bc # bcd # c # cd # d
次の行は使用する Perl のバージョンを要求しています。バージョン 5.004 以上を必要としています。
require 5.004;
次のコードはコマンドラインで指定した標準入力から読み込んでいます。標準入力 <> を "" を区切り文字にして連結しています。
$text = join "", <>; chomp $text;
これと同じことを以下のように書いても実現できるのですが、join しているのはなぜなんでしょうか。
$text = <>;
次のコードがメインになる処理です。gen_suffixes を呼び、その結果を使って gen_prefixes を呼び、その結果を印字しています。
for $suffix (gen_suffixes($text)) { for $prefix (gen_prefixes($suffix)) { print $prefix, "\n"; } }
最初に gen_suffixes を読みます。ここでは文字列 $text の suffix を作成し、@suffixes に格納します。suffix とは suffix array でいう suffix です。日本語にすると「接尾辞」になるけど「suffix」と呼ぶほうが多いようです。
sub gen_suffixes() { my ($text) = @_; my @suffixes = (); do { push @suffixes, $text; } while ($text =~ s/^.(.)/$1/); return @suffixes; # arrange in long order. }
while ($text =~ s/^.(.)/$1/); で $text の先頭から 1 文字ずつ削っていきます。$text を削っていく様子は以下のようになります。
abcd bcd cd d
この文字列を push @suffixes, $text; で 1 つずつ @suffixes へ格納しています。
その結果を使って gen_prefixes を呼び出します。gen_prefixes の $text には gen_suffixes で作成した @suffixes の配列要素が渡されていきます。すなわち abcd bcd cd d について各々 gen_prefixes で処理します。
sub gen_prefixes() { my ($text) = @_; my @prefixes = (); do { push @prefixes, $text; } while ($text =~ s/(.).$/$1/); return reverse @prefixes; # arrange in short order. }
while ($text =~ s/(.).$/$1/); で $text の末尾から 1 文字ずつ削っていきます。たとえば gen_prefixes に abcd が渡されたときの $text を削っていく様子は以下のようになります。
abcd abc ab a
この文字列を push @prefixes, $text; で 1 つずつ @prefixes に格納しています。
return reverse @prefixes; で上記の文字列を格納した配列を逆順に並べ替えて返します。@suffixes の最初の要素を処理したときの印字は以下のようになります。
a ab abc abcd
同様に @suffixes の残りの要素を処理していきます。最終的な印字は以下のようになります。
a ab abc abcd b bc bcd c cd d
_ 買い物
@渋谷タワーレコード、秋葉原ソフマップアミューズメント店
BETTA FLASH ニューアルバム。イベントがあるので買ってきました。
ref.
- 2008/03/15(日) mini ALBUM「BETTA FLASH」発売記念!ライブ&サイン会開催決定!
- 2008/03/21(金) インストアライブ in ソフマップ
- BETTA FLASH - インタビューが続々掲載!
B00120VG6Y
2008-02-21 :-)
_ 朝ったー
0540 起床。ねむ
_ [植松伸夫][ファイナルファンタジーVI]通勤ったー
ファイナルファンタジーVI
ゲームは何度かプレイしました。作曲は植松伸夫さん。スーパーファミコン最後の作品です。CD 3 枚です。冒頭の「予兆」「炭鉱都市ナルシェ」や、サントラにある天野喜孝さんのイラストから受ける印象のとおりに全体的に暗いです。退廃的なイメージがあります。機械文明が発達した世界ということで「戦闘」「テクノdeチョコボ」などエレキギターの音を使った曲があります。
FF6 では FF5 よりもさらに使う音が増えて、豊かな曲になっています。サントラのライナーノーツに以下の記述があります。
例えば 10 人のヴァイオリン奏者が全員で 440 ヘルツの「 ラ 」の音を弾くとします。いくら上手な人が揃っていたとしても、全員で完璧な 440 ヘルツの音程をしかも同時に出すことは不可能ですね? 人によっては 1 〜 2 ヘルツずれていたり少しフライングしていたり出遅れたりしている。しかしそれがいいのです。いや、音の豊かさや厚みを増すたえに、リズムに生き生きしたうねりを与えるためには、そうでなくてはいけないのです。
正確無比が売り物であったはずのコンピューターのその「売り」の部分が災いして、より良いコンピューター音楽を得るためには「程よいアイマイなデータ」を作成せねばならぬというのも皮肉な話ですね。
この「うねり」を実現していると思われるのが「決戦」で使っているドラムの音です。ドラムを叩く音の長さが一定ではなくてバラつきがあります。聴いているとドラムの音の長さにパターンがあることが分かるのですが、最初に聴いたときはこのバラつきに驚きました。他にも弦楽器の音を使っていて音が豊かな曲があるけど、これは「うねり」ではなくてたんに和音を使ったことによる豊かさかもしれません。
- 目覚め:「ティナのテーマ」の前半と後半を同時に使っています。
- ロックのテーマ、セリスのテーマ:最終的にカップリングする二人です。エンディングでは「ロックのテーマ」「セリスのテーマ」を同時に使っています。カップリングの曲を同時に演奏する手法は GIGs[ 20060902#p03 ]で ハヤブサ斬りキャンセル がやってました。
- ガストラ帝国:FF6 は「ティナのテーマ」のアレンジが多いですが「ガストラ帝国」のアレンジも多いです。「予兆」「帝国の進軍」「戒厳令」などがあります。他にあるかしら。
- 妖星乱舞:ラストバトルの曲です。17 分 38 秒あります。かなり長いのですがラストバトルは 4 連戦あり、各々の場面に戦闘曲があります。4 つの曲を「妖星乱舞」1 曲にまとめてあります。なので長くなっています。内訳は 4 曲あるわけです。4 戦目はケフカ戦であり「ケフカのテーマ」のアレンジです。
FF6 サントラのうち私が大好きなのが disc 3 前半の以下の曲です。曲順そのまま。
- 魔大陸
- 大破壊
- 死闘
- レスト・イン・ピース
- 死界
- あの日から...
- 仲間を求めて
「物語の場面を表す曲」の流れです。FF6 サントラはゲームをプレイする前に買って聴いてました。曲を聴きながら曲名を見て、物語のおおざっぱな流れを妄想してました。当時週刊少年ジャンプに多少のネタばれ記事があって「どうやら世界が崩壊するらしい」ということ、FF6 TVCM を見て「船( 飛空挺 )が破壊され、吹き飛ばされる仲間たち」ということは知っていました。そのような中途半端な知識を持ってサントラ CD を聴いていた当時の私の妄想は以下。
「魔大陸という舞台がある、何かと戦闘を繰り広げる、その相手はきっと世界を破滅させるようなとんでもない化け物なのだろう( アルテマウェポン戦 )、激闘むなしく主人公たちは敗れる( ゲームではちゃんと勝ちます )、そして世界が崩壊した、崩壊し死滅した世界、散り散りになった仲間を探し出し、最後の決戦へ向かう」
FF6 の曲はすべて英語名と日本語名があります。「仲間を求めて」の英語名は「Searching Friends」です。なので、どうやら仲間を探すらしいということは分かるわけです。なお、完全な曲リストは以下が詳しいです。
最近音楽は何か作業しながら聴くことが多いですが、FF6 を聴いていたころはサントラパッケージのイラストや曲名を眺めながら集中して聴いていました。だから上記のような妄想になります。そのようにして曲名を眺めながら、世界を想像しながらちゃんと音楽を聴いたのは FF6 が最後かもしれません。
B00066VUUM
_ 仕事
0830 出勤。
_ [Perl][高林哲][がらくた][コードリーディング]がらくたを読む - anchor-lcase
anchor-lcase を読みます。
http://0xcc.net/attic/anchor-lcase
標準入力から読んだ文字列の大文字を小文字にするプログラムです。
冒頭はプログラムの概要が書いてあります。
#! /usr/local/bin/perl -w # # anchor-lcase - convert all "name=" anchors into small letters. # also replace `_' with `-'.
Copyright が続きます。GPL です。
# # Copyright (C) 1999 Satoru Takabayashi <satoru-t@is.aist-nara.ac.jp> # All rights reserved. # This is free software with ABSOLUTELY NO WARRANTY. # # You can redistribute it and/or modify it under the terms of # the GNU General Public License version 2. #
プログラム本体です。最初に use strict; しています。変数の宣言を強制します。
use strict;
標準入力から読み込み、$content に格納します。$content の宣言と定義を 1 行でおこなっています。
my $content = join '', <>;
$content =~ s/name="(.*?)"/"name=\"" . xx($1) . "\""/ge;
$content に含まれる name= を s/// 演算子により置換しています。s/// は文字列中でパターンを探し、見つかれば置換テキストに置換します。この s/// を分解して見ていきます。
name="(.*?)"
置換させたい文字列です( これを「パターン」といいます )。name= のあとにある " " で囲まれた文字列にヒットします。カッコ () でくくることによりグルーピングしています。.*? は「何かの文字が 0 回以上存在するうちの最も短いもの」を表す正規表現です。.* は最長一致になり、? をつけて .*? とすることで最短一致になります。最長一致は「可能な限り長い文字列」を意味します。最短一致は「可能な限り短い文字列」を意味します。
"name=\"" . xx($1) . "\""
こちらは置換後です( 置換テキストといいます )。これをさらに分解します。
"name=\""
ダブルクォート「"」そのものを表すために「\"」とエスケープしています。"name=\"" は name=\" をクォートした文字列という意味になります。"" で
. xx($1) .
. は文字列を連結する演算子です。"name=\"" と xx($1) した結果と "\"" を連結します。$1 には s/// 演算子のパターンの部分に書いたグルーピングが入ります。パターンを () でくくっておくと、置換テキストで $1 として参照できます。パターンに () () と 2 つグルーピングしておくと、置換テキストでは最初のグルーピングを $1 、次のグルーピングを $2 として参照できます。3 つグルーピングがあれば $1 $2 $3 として参照できます。
xx($1) を見てみます。
sub xx { my ($tmp) = @_; ← $tmp には s/// のパターンに書いた name="(.*?)" の .*? が入る $tmp =~ s/_/-/g; ← _ を - に置換 return lc($tmp); ← $tmp を小文字へ変換( lc - Lower Case ) }
このように name を処理し、以下同様に href も処理して、印字して終了です。
$content =~ s/href="#(.*?)"/"href=\"#" . xx($1) . "\""/ge;
print $content;
_ 買い物
( via 角谷HTML化計画 )
4274066940
( via DESIGN IT! w/LOVE )
4794965850
( via Passion For The Future )
402273163X
2008-02-22 :-)
_ 朝ったー
0540 起床。ねむ
_ [植松伸夫][ファイナルファンタジーVII]通勤ったー
ファイナルファンタジーVII
ゲームは何度かプレイしました。作曲は植松伸夫さん。サントラ CD は 4 枚あります。ゲームはディスクが 3 枚あるんですが、ゲームの 1 枚目のディスクだけでサントラ CD の 3 枚分の曲を使っています。
FF7 からプレイステーションです。音そのものはスーパーファミコンのころよりもリアルに近いのだけど、まだプレイステーションを使いこなせていないのか、曲が無機質です。FF6 のほうが曲が豊かでした。FF7 は FF4 のときのような硬さを感じます。
「○○deチョコボ」の曲が 4 つあります。FF シリーズ最多です。
セフィロス戦「片翼の天使」では歌を初めて使っています。歌の歌詞はこちら。google 検索すると空耳歌詞もヒットしますが空耳歌詞は読まないようにしましょう。読むと吹きます。
曲リストはこちら。
曲リストを読んで思い出したのだけど FF7 サントラは限定版と通常版があります。
限定版。
通常版。
B00025E1TO
_ 仕事
0830 出勤。
_ [はてなダイアリー][RSS]はてなダイアリー利用者へ「全文入りRSSフィード」提供のお願い
area51 新年会[ 20080209#p04 ]のときに誰かから( 誰だっけ?よしみつくんだっけ? くろさんだっけ?) はてなダイアリーの全文入りRSSフィードの設定方法を訊かれたので書きます。以前はてなダイアリーのほうに書いた内容[ 2007-05-11 - rin51の日記 ]を引用します。
はてなダイアリー「管理 > 設定 > 公開設定 > RSSの公開設定 」にある「RSSフィードに全文を掲載する」にチェックして、変更ボタンを押す。
_ 読む手段を変える閾値
- 巡回するサイト数が 100 くらいになるとフィードリーダーを使わないとつらくなる
- Twitter の follow 人数が 100 くらいになると Twitter クライアントを使わないとつらくなる
- マイミクシィ人数が 50 くらいになると Plagger を使わないとつらくなる
Plagger じゃなくて mixi 専用ブラウザでもいいわけですが。
_ ケータイのキャリアの変遷(俺の話)
昨日 ML で『 (「・ω・)「 DoCoMo 契約するといいよ』光線を頂いたので自分がいままでどのような基準でキャリアを変えてきたか記憶を辿ってみました。結論からいうと「なんとなく」。以下キャリア変遷
- DoCoMo
- H" ( PHS ですが )
- au
最初に DoCoMo を使ったのは「なんとなく」「よく見かけるから」「坂本真綾が使ってるから」という理由です。H" を使ったのは「友人たちが使ってるから」「ノート PC に H" カードを刺してモバイルしたらカッコイイかなと思ったから」という理由です。au を使っているのは「客先に PHS の電話番号が知れたから」「これまで au を使ってなかったから」という消極的な理由です。サービスを基準にしてるのではなくて思いつきで選択しています。
_ [設計]コーディングは設計である
アサヒのひともそう言っている( らしい )。
ref. かわいそうなマイクロソフト、言いたいことも伝わらなくて - mhatta のジャーナル
米ソフトウエア最大手マイクロソフト(MS)は21日、同社の基本ソフト(OS) 「ウィンドウズ」などの設計図にあたる「ソースコード」を社外のソフト開発者らにも公開すると発表した。同社はこれまで一部情報の公開にとどめてきたが、この方針を大きく転換するものとみられる。
_ ブログ妖精ココロから挨拶された
こんにちはこんにちは!
2008-02-23 :-)
_ [ドラゴンクエスト][すぎやまこういち]都響スペシャル〜すぎやまこういちがやってきた!
@東京芸術劇場
曲目
第一部 すぎやまこういちヒット曲集
- 亜麻色の髪の乙女
- 涙のギター
- 恋のフーガ
- ローマの雨
- 学生街の喫茶店
- モナリザの微笑
- 落葉の物語
- 君だけに愛を
- 花の首飾り
- シーサイド・バウンド
第二部 交響組曲「ドラゴンクエストI 〜VIIIよりエンディング集
- 序曲(I)
- フィナーレ(I)
- この道わが旅(II)
- そして伝説へ(III)
- 導かれし者たち(IV)
- 結婚ワルツ(V)
- 時の子守唄I(VI)
- 凱旋そしてエピローグ(VII)
- 空と海と大地(ピアノ版)(VIII)
アンコール
- トウーラの舞(VII)
- 序曲(VIII)
曲の感想
第一部は私が生まれる前の曲なので思い出も何もないのだけど、なんとなく「すぎやま節」というか、そーいうパターンを音楽から感じ取れます。
第二部はドラゴンクエスト I 〜 VIII のエンディング集です。圧巻です。こうしてエンディングのみを聴いてみると「時の子守唄I(VI)」だけが異色です。暗い。他のシリーズのエンディング曲が「長い戦いが終わった労い」「魔王を倒した祝い」といった曲であるのに対して、「時の子守唄」は不気味な感じで始まり曲全体が静かです。でも「時の子守唄」のそういったところが好きです。
すぎやまこういちさんの おはなし
- 『学生街の喫茶店』は『美しすぎて』のB面だった。ガロが歌ったのだけど『美しすぎて』のおまけ的位置だったのでガロはやる気が無かった。でもあとから売れて結局 200 万枚売れた
- タイガースがなぜ人気があったのか。ルックス、風俗などいろいろ考えられるけど、なによりも音楽が素晴らしかったんだと思う。
- 沢田研二の声には色気がある。素人声じゃなくて「あー」と声を出したときに「この声は良い」と言えるものだった。
- 岸部修三は天性のテノールの声( だったか?忘れた )がよかった。沢田研二などは外に出ようものならファンに囲まれて身動きとれないような状態だった。それに比べて彼は人気が無くて、普通に買い物に出かけられた。沢田研二からは「お前は人気が無くて良いなあ」と羨ましがられていた。
「ドラゴンクエストコンサートで毎回同じことを言ってるのでいつも聴きに来ているお客さんには耳タコかもしれまんが」と前置きし、音楽について 3 つのことを説明しました。
- 音楽は心の貯金です
- 素晴らしい音楽を聴いたときの感動が思い出になる
- 音楽は心のタイムマシーンです
- 音楽を聴けばその当時の思い出がすぐに甦る。ドラゴンクエストの曲を聴いて、ゲームをプレイした当時のことを思い出すことができる。
- 音楽は心の応援団です
- つらいときに音楽を聴いて、勇気を貰ったり励まされたりすることもある
2008-02-24 :-)
_ [NetBSD][ディスク][disklabel][fdisk]NetBSD/i386 計算機に SATAディスクを追加する
参考
作業手順
- dmesg に wd1 があることを確認する
- fdisk -u wd1 で MS-DOS パーティションを作る
- disklabel でディスクラベルを作る
- newfs /dev/rwd1e でファイルシステムを作る
- mount /dev/wd1e /mnt マウントする
- /etc/fstab に書く
_ [NetBSD][macppc][Mac mini]NetBSD/macppc Mac mini を退役させた
% uptime 11:50AM up 179 days, 6:13, 1 user, load averages: 0.17, 0.09, 0.09
% sudo halt -p
_ [La FoneraLa]Fonera を設置した
Mac mini を退役させたので電源を確保しました。
iPod touch の「メール」を Gmail に設定しました。メールボックスの各ラベルにアクセスして初めてメールをダウンロードします。「迷惑メール」に触ったので「迷惑メール」ラベルが付いているメールをダウンロードしちまいました。
受信トレイ
del.cio.us -> Plagger -> Gmail しておいた「あとで読む」もちゃんと読めます。
2008-02-25 :-)
_ 朝ったー
0540 起床。ねむ。
_ [植松伸夫][ファイナルファンタジーVIII]通勤ったー
ファイナルファンタジーVIII
ゲーム未プレイ。作曲は植松伸夫さん。FF では初めての歌「 Eyes On Me 」が入った作品です。FF7 が無機質だったことに比べて音がかなりリアルになっています。FF7 は実験的な音楽だったんじゃないかと思えるくらいに進歩しています。毎回実験かもしれませんけどね。弦楽器の音の豊かさや、ドラムの軽快さに驚きました。実際にオーケストラ演奏( たぶん )もあります。1 曲目「Liberi Fatali」がオーケストラとコーラスの曲です。1 曲目から驚かされます。「Liberi Fatali」の歌詞と和訳はこちら。
FF8 も限定版と通常版があります。
B00025E1TY
_ 仕事
0830 出勤。
_ [mixi]mixi に invite されたのは 2004-04-28 らしい
日記検索したら発見しました[ 20040428#p05 ]。
_ [アジャイルプラクティス]アジャイルプラクティス
本のタイトルは釣りです。
「アジャイル」とあるけどソフトウェア開発プロセス全般についての本です。コードコンプリートや達人プログラマー、ラピッドデベロップメントなどに散らばっているソフトウェア開発プロセスでの「これだけはやっておけ」というプラクティスがまとまっています。コードコンプリートにはコード規約とか変数命名規約など低レベルなこと( 下層という意味 )についても書いてあるけど、そのうちのプロジェクトマネジメント寄りの話題を抽出したような感じです。たとえば毎日のビルドや、ドッグフードを食べるプラクティスがありますが、これらは「闘うプログラマー」( WindowsNT 開発の話 )にもありました。「闘うプログラマー」には「アジャイル」という言葉は出てこなかったけどやってることは同じです。出てきたっけ?
アジャイルの本質は以下 4 つです( p.2 )
- プロセスやツールよりも、人と人との交流を
- 包括的なドキュメントよりも、動作するソフトウェアを
- 契約上の交渉よりも、顧客との協調を
- 計画に従うよりも、変化に適応することを
いままでアジャイルというものがいったいなんなのか消化しきれなかったのだけどこの本を読んでようやく納得しました( 新商品モゲモゲハニャーンを使ったら僕も 5 kg やせたよ!みたいな言い方がキモイかもしれないが )。「アジャイル」「アジャイル」と書くとバズワードのように思うのだけど「アジャイル」という言葉が気に食わないならば使わなければいい。「こうしたらうまくいきそうだ」というプロセスに名前を付けたら「アジャイル」になった、というものです。違う?たとえば以下のようなことは割りとよくあります。
- 仕様が決まらない
- 昨日と言ってることが違う
- 顧客がちゃぶ台をひっくり返した
というのはよくあります。でもやる。仕事だから。しかしこれらにまともに付き合ってしまっては疲れます。振り回されないようにどうするのか、多少でもマシにプロジェクトを進めるためにはどうするのか、といったことも書いてあります。もちろん、この本に書いてあることを実行すれば完璧、というものではありません。ソフトウェア開発プロセスに銀の弾丸は存在しません。アジャイルも銀の弾丸ではありません。
4274066940
_ [コードリーディング][がらくた][shell][Perl][高林哲]がらくたを読む - ascii
ascii を読みます。
ASCII コードを印字するプログラムです。
プログラムはいたって簡単です。ヒアドキュメントしてるだけです。
cat <<"EOF" : EOF
ヒアドキュメントとは「指定した単語以降から同じ単語が現れるまでの間に書いてある文字をそのままリダイレクトする」というものです。上記のように書いておくと「EOF から EOF の間に書いた文字列を cat へリダイレクトする」という意味になります。cat への入力としてヒアドキュメントを使っています。cat の出力は標準出力へ印字されます。ちなみに cat の出力をさらにリダイレクトするには以下のようにします。
cat <<"EOF"> file : EOF
これによりヒアドキュメントに書いた文字列が file へ書かれます。
ヒアドキュメントに書いてあるアスキーコードを生成するために用いたのがコメントアウトしている部分のコードです。
# perl <<"EOP" | column # for (my $i = 32; $i < 127; $i++) { # printf "| %3d %2x %3o %s\n", $i, $i, $i, chr($i); # } # EOP
このコードはおもに 3 つの処理をします。
- EOP から EOP までのヒアドキュメント( for ループ )を Perl へ渡す( shell がやる )
- for ループを処理する( Perl がやる )
- Perl の出力を column へパイプする( shell がやる )
以下のようにしても同じことが出来ます。
perl -e ' for (my $i = 32; $i < 127; $i++) { printf "| %3d %2x %3o %s\n", $i, $i, $i, chr($i); }' | column
_ [コードリーディング][端末][がらくた][制御コード][Perl][高林哲]がらくたを読む - bell
端末でベルを鳴らすプログラムです。
中身はこれだけ。制御コード( または制御文字 )を印字しています。制御コード 07( 16 進数 )はベルを鳴らすための制御コードです。
#! /usr/bin/perl print "\x07";
制御コードってなに?
制御文字(せいぎょもじ)とは、ディスプレイ、プリンタ、通信装置などに対して、特別な動作(制御)をさせるために使う文字である。
通信装置を操作するんだそうです。
よく使う通信装置に端末があります。端末ってなに?
端末とはスクリーンとキーボードから構成され、(ホスト) コンピュータとリモートで会話するために使う装置です。それはパーソナルコンピュータのようにも使えますが、端末は (別な部屋または世界の他の場所にある) ホストコンピュータと遠隔接続されます。
「パーソナルコンピューターのようにも使えますが」ということはパーソナルコンピューターそのものではないのですね。ではいったいなんだというのか?
コンピュータモニタとキーボードにより Linux (X ウインドウの使用を除く) を使用したことがあるなら、あなたはすでに端末とは何かを知っていることになります。なぜなら、それ (もしくは、より正確に言えば ``仮想端末'') を使っているのですから。(キーボードが附属している) モニタは端末をエミュレートします。X-Windows では xterm, rxvt, zterm が端末をエミュレートしています。
私も rxvt などは使ったことがあります。Windows でのエミュレーターはなんでしょう?
PuTTYは、Simon Tathamが作成・公開したターミナルエミュレータである。
Windows には端末エミュレーターとして PuTTY や TeraTerm などがあります。
_ [kakutani] [RSpec][Ruby]日本PostgreSQLユーザ会北海道支部 / Ruby札幌 合同セミナーの動画 - 角谷HTML化計画 (2008-02-19)
- テストとは
- デベロッパーテスト
- 設計からテストまでが設計
- 1, 2 分先の未来
- コードの 4 象限
- 花畑:きれい and 動かないコード
- 4 つのモード
- シンク
- レッド
- グリーン
- リファクタ
- RSpec 実演
- Mac book
- Emacs
- RSpec モード?
- コード書くの速いなあ
- コピペもするんだ
- 3 分間クッキング
ニコニコ動画マイリストを見るにはニコニコ Podder が良いです。
_ [Remember the Milk][Sunbird] Remember The Milk( RTM ) と Sunbird に取り込む
取り込むだけ。
- Sunbird をインストールする
- Provider for Google Calendar :: Thunderbird Add-ons をインストールする
- Sunbird を起動
- Tools メニュー
- add-ons
- install で provider_for_google_calendar-0.3.1-tb+sb.xpi を開く
- RTM を取り込む
- RTM -> 設定 -> 情報
- iCalendar イベントサービス(すべてのリスト) の URI をコピー
- Sunbird の Calendars パネルで右クリック
- New Calendars...
- On the Network
- iCalendar( ICS )
- コピーしておいた URI を Location へ貼り付ける
- RTM のアカウントとパスワードを入力する
- しばし待つ
2008-02-26 :-)
_ 朝ったー
0540 起床。ねむ。
_ [植松伸夫][ファイナルファンタジーIX]通勤ったー
ファイナルファンタジーIX
ゲームは 10 時間くらいプレイして挫折しました( 戦闘があまりにも遅いのでやる気が無くなった )。作曲は植松伸夫さん。プレイステーションでは最後の FF です。冒頭はゲーム中の劇で使っている曲があります。ドラマチックな展開です。ドラマですが。FF6 のオペラ関連の曲のようです。
とくに取り上げておきたいのが「いつか帰るところ」「Melodies Of Life」の 2 曲です。「いつか帰るところ」はリコーダー三重奏の曲です。リコーダーの素朴な音がいいです。「いつか帰るところ」はノビヨのしっぽファン感謝祭[ 20070217#p04 ]で片山理恵子さんたちが実際にリコーダー三重奏してました。たしか。「Melodies Of Life」は白鳥英美子さんが歌っています。とても美しい歌声です。でも歌詞からは悲しい印象を受けます。この 2 曲は VOICES[ 20060218#p09 ]で披露されました。
B00025E1U8
_ 仕事場のひとが es 端末を持ってたので見せてもらった
普通の Windows モバイル端末なんですね。
_ 花粉症の影響が来たかもしれない
鼻汁が止まらない。
2008-02-27 :-)
_ 朝ったー
0540 起床。ふむ
_ [仲野順也][浜渦正志][植松伸夫][ファイナルファンタジーX]通勤ったー
ファイナルファンタジーX
ゲームは 1 度プレイしました。作曲は仲野順也さん、浜渦正志さん、植松伸夫さん。プレイステーション2での最初の FF です。PS2 であるからか、音が FF 9 までと比べて格段にリアルになっています。作曲 3 人が各々の味を生かした曲を書いているので多様な曲を楽しめます。とくに各々の特徴が出ている曲がラストダンジョンでのバトル曲です。以下 3 つ。
- シーモアバトル:シーモア戦。作曲は植松伸夫さん。裏切るような曲[ 20071020#p01 ]です。
- 召喚獣バトル:召喚獣戦。仲野順也さん。基礎になるゆったりしたメロディの上に速いリズムの音を乗せています。とても激しい曲です。仲野順也さんらしいバトル曲です。
- 決戦:エボン・ジュ戦。浜渦正志さん。基礎のメロディに「祈りの歌」を使い、その上に力強いピアノの音を乗せています。
リアルに近い音というかまさにリアルの音だろう、という曲が「スピラの情景」です。実際にアコースティックギターで演奏してるのではないかという曲です。ボディーを叩く音や弦を引く(?)「キュイッ」という音が聴こえます。ライブで演奏するひとが居たら惚れます。
B00025E1UI
_ 仕事
0830 出勤。
_ [珠玉のプログラミング][Ruby][2分探索][コードリーディング][がらくた][高林哲]がらくたを読む - bsearch.rb
配列を 2 分探索するライブラリです。配列要素はあらかじめソートしておく必要があります。
http://0xcc.net/attic/bsearch.rb
これの多機能版が Ruby/Bsearch: 配列を 2分探索する Ruby用のライブラリ にあるんですが「がらくた」のほうを読みます。Ruby/Bsearch のほうに説明図があるのであわせて読むといいです。
コメント部分にアルゴリズムの説明が書いてあります。
# # This method searches the FIRST occurrence which satisfies a # condition of a given block in binary fashion. # # This algorithm is extracted from Jon Bentley's # Programming Pearls 2nd ed. p.93 #
Programming Pearls 2nd ed の p.93 にあるよ、ということですが私は Programming Pearls 2nd ed は持ってません。その邦訳「珠玉のプログラミング」は持ってるので珠玉のプログラミングを見てみます。おそらく珠玉のプログラミング「 9.3 大手術的なコードチューニング - 2 分探索で」 p.117 のことだと思います。p.117 に擬似コードがあります。
l = -1; u = n while l+1 != u /* 不変な表明:x[l] < t && x[u] >= t && l < u */ m = (l + u) / 2 if x[m] < t l = m else u = m /* l+1 = u && x[l] < t && x[u] >= t となっているはず */ p = u if p >=n || x[p] != t p = -1
ここで
- x: 探索する配列
- t: 探索する値
- p: 発見した位置。存在しなければ -1
- u: 探索範囲の上限( Upper )
- l: 探索範囲の下限( Lower )
「不変な表明」とは「 assert みたいなもの」とのことです( p.44 )
コードを読みます。
class Array def bsearch_first : def bsearch_last : def search :
Array クラスを再定義し Array クラスに bsearch_first, bsearch_last, search メソッドを追加しています。
簡単なところから def search を読みます。
# # brute force sequential search. # def search self.each_with_index {|x, i| return i if yield(x) == 0 } nil end
コメントにあるとおり、線形探索します。Ruby の Array クラスが持っている each_with_index メソッドを使って Array の要素をすべて処理します。x に要素、i にインデックス番号が入ります。以下のように使います。
% ruby -rbsearch.rb -e 'p [0, 1, 2, 3, 4, 5].search{ |x| x <=> 3 }' 3
面白いのは整数だけでなくて文字でも探索できるところです。
% ruby -rbsearch.rb -e 'p ["a", "b", "c", "d"].search{ |x| x <=> "c" }' 2
yield(x) は Array.search メソッドの呼び出し側のブロックへ x を渡します。yield を初めて見たときにさっぱり理解できなくて「Ruby プログラマってのはすごいなあ」とカルチャーショックを受けたのですが、荒く言うと、メソッドにブロックをぶん投げて処理させる、という機能です( らしいです )。
def bsearch_first を読みます。Programming Pearls 2nd ed. p.93 を実装してます。
def bsearch_first low = -1 high = self.length while low + 1 != high mid = (low + high) / 2 if yield(self[mid]) < 0 low = mid else high = mid end end if high >= self.length || yield(self[high]) != 0 return nil else return high end end
この下で alias してます。
alias bsearch bsearch_first
alias は別名を定義します。bsearch は bsearch_first と同じ、という意味です。
4894712369
2008-02-28 :-)
_ 朝ったー
0540 起床。ぐにゅ
_ [水田直志][谷岡久美][植松伸夫][ファイナルファンタジーXI]通勤ったー
ファイナルファンタジーXI
ゲームは 10 時間くらいプレイして飽きました。ゲームの拡張データディスクが発売される都度サントラも作られています。私はサントラを追いかけるのを諦めて完全限定生産版を買いました。作曲は水田直志さん、谷岡久美さん、植松伸夫さん。谷岡久美さんと植松伸夫さんが関わったのは最初のみであり( 「プロマシアの呪縛」に植松伸夫さんが 2,3 曲書いてますが )「ジラートの幻影」からはほとんど水田直志さんが曲を書いてます。
FF で初めてのオンラインゲーム( MMORPG というらしい )です。ゲームの形態が FF10 までと異なるので曲の雰囲気もだいぶ異なります。RPG の曲というより普段の生活で使うような曲が多いです。バトル曲は少なめ?
B000M7XT22
_ RSS フィードしてる Wiki があるのでチェックするといいです
ジンベエザメツアーとか、2008年 花見とか。
_ 派生作品に触れたあとに原作を読むと良い
偏ってますが。
原作を読んだあとに派生作品に触れてがっかりした事例
作品 | 原作 | 派生 |
ワンピース | 漫画 | アニメ |
スラムダンク | 漫画 | アニメ |
幽☆遊☆白書 | 漫画 | アニメ |
涼宮ハルヒの憂鬱 | 小説 | アニメ |
涼宮ハルヒの憂鬱 | 小説 | 漫画 |
灼眼のシャナ | 小説 | アニメ |
マリア様がみてる | 小説 | アニメ |
イリヤの空、UFOの夏 | 小説 | アニメ |
ARIA | 漫画 | アニメ |
H2O | 漫画 | アニメ |
原作を読んだあとに派生作品に触れて割りと良かった事例
作品 | 原作 | 派生 |
ガンスリンガーガール | 漫画 | アニメ |
HUNTER×HUNTER | 漫画 | アニメ |
派生作品に触れたあとに原作を読んで良かった事例
作品 | 派生 | 原作 |
機動戦士ガンダム | アニメ | 小説 |
機動戦士Ζガンダム | アニメ | 小説 |
機動戦士ガンダムΖΖ | アニメ | 小説 |
機動戦士ガンダム 逆襲のシャア | アニメ | 小説 |
機動戦士ガンダム F91 | アニメ | 小説 |
機動戦士ガンダム 0080 ポケットの中の戦争 | アニメ | 小説 |
機動戦士Vガンダム | アニメ | 小説 |
∀ガンダム | アニメ | 小説 |
機動戦士ガンダム 0083 STARDUST MEMORY | アニメ | 小説 |
機動戦士ガンダム 第08MS小隊 | アニメ | 小説 |
新機動戦記ガンダムW | アニメ | 小説 |
岩窟王 | アニメ | 小説 |
ドラゴンボール | アニメ | 漫画 |
AKIRA | アニメ | 漫画 |
風の谷のナウシカ | アニメ | 漫画 |
鋼の錬金術師 | アニメ | 漫画 |
トライガン | アニメ | 漫画 |
我輩は猫である | ドラマ | 小説 |
タッチ | アニメ | 漫画 |
らんま1/2 | アニメ | 漫画 |
キン肉マン | アニメ | 漫画 |
三銃士 | アニメ | 小説 |
シティハンター | アニメ | 漫画 |
ガンダムはアニメのなかで小説のことを「原作」と書いてあるので小説を原作とみなします。
三銃士のアニメは太古に NHK で放送してたものですが原作と人物の設定が違ったり、あと和訳は原作とは言わないのですが( ref. 原作 - Wikipedia ) ともあれこんな感じです。
_ [bulkfeeds][グラフ][Flash][Ming][コードリーディング][がらくた][高林哲]がらくたを読む - bulkplot
http://0xcc.net/attic/bulkplot
bulkfeeds.net を検索してヒット件数をグラフ化するプログラムです。詳細は以下。
main から読みます。
def main puts "Usage: bulkplot KEYWORD" if ARGV.length != 1 keyword = ARGV.shift count = get_hit_count(keyword) File.open("bulkplot.dat", "a") {|f| f.printf("%d %d\n", Time.now.to_i, count) } data = File.new("bulkplot.dat").readlines.map {|line| line.split.map {|x| x.to_i } } draw(data) end
処理の流れは以下のようになります。
- キーワードをオプションから取得
- キーワードのヒット数を取得
- ファイル bulkplot.dat を開く( 追記用 )
- 時間とヒット数を書く( 追記する )
- bulkplot.dat の全部の行を読む
- 各行の時間とヒット数を整数へ変換する
- グラフを書く
def get_hit_count を読みます。
def get_hit_count (keyword) response = nil Net::HTTP.start("bulkfeeds.net", 80) {|http| query = CGI.escape(keyword) format = path = sprintf("/app/search2.rdf?q=%s", query) response = http.get2(path) } doc = REXML::Document.new(response.body) count = doc.elements.to_a("rdf:RDF/channel/bulkfeeds:total").first.text return count.to_i end
- bulkfeeds.net の 80 番ポートを開く
- キーワードをエンコードする
- XML を取得
- エレメントの配列の最初の要素の最初の子テキストを取得( なんだって? )
- 整数にして返す
HTTP.start のリファレンスマニュアルを読みます。
TCP コネクションを張り、HTTP セッションを開始します。すでにセッションが開始していたら例外 IOError を発生します。イテレータとして呼ばれた時はブロックの間だけセッションを接続し、ブロック終了とともに自動的にセッションを閉じます。
ブロックを指定する利点は 2 つあります。
- 閉じる処理を書く手間が省ける
- ブロック内で例外が発生しても自動的じクローズしてくれる
うれしいことばかりです。この部分はよく見るイディオムです。
def draw を読みます。
def draw (data) chart = MingChart.new(:flash_font => "EfontSerifB.fdb", :x_time_scale => true, :font_size => 42, :x_time_scale_format => "%m/%d" ) chart.add_data(data) chart.draw chart.save("bulkplot.swf") end
グラフを作成して Flash のファイルとして保存してます。
EfontSerifB.fdb は mingplot に付いてます。
そしてまた main を読みます。
ファイルを開く処理があります。
File.open("bulkplot.dat", "a") {|f| f.printf("%d %d\n", Time.now.to_i, count) }
File.open も HTTP.start と同じようにブロックを指定して自動的にクローズさせるようになっています。
時間を to_i して扱っています。
f.printf("%d %d\n", Time.now.to_i, count) : line.split.map {|x| x.to_i }
to_i は起算時からの経過秒数を返します。bulkplot.dat に書くときや、draw に渡すときに起算時からの経過秒数として扱ってるのは、たぶん整数のほうが扱いやすいからだと思います。たぶん。整数として扱っておいて、最終的にファイルに書くときは draw で指定している x_time_scale_format => "%m/%d" の形式でグラフに書きます。
ところで http://bulkfeeds.net/ はもうサービスしてないんでしょうか。
_ [写真][撮影][カメラ][肖像権][著作権][スナップ写真のルールとマナー]スナップ写真のルールとマナー
境内で撮影したときはどうなの? 祭りで撮影したときはどうなの? ライブ会場でこっそり撮影したときはどうなの?といった写真を撮影するときの事例がたくさんあります。
最初にまとめ:許諾を得てから公表する
マナー。こんな感じ。
- 許諾を得る( 可能な限り )
- 堂々と撮る
- ダメといわれたら撮らない
- 不快な思いをさせないようにしよう
- 撮らせてもらっているという心でいよう
- ありがとうを忘れずにしよう
ルール。肖像権や著作権など法的なことです。読んでて混乱したので図にしてまとめました。仕事として撮影するのではなくて私用で撮影する場合を考えました。自信ありません。
402273163X
2008-02-29 :-)
_ 朝ったー
0540 起床。ねむ
_ [崎元仁][松尾早人][岩田匡治][植松伸夫][葉加瀬太郎][ファイナルファンタジーXII]通勤ったー
ファイナルファンタジーXII
ゲームはまだクリアしてません。作曲は崎元仁さん、松尾早人さん、岩田匡治さん、植松伸夫さん、葉加瀬太郎さん。といってもメインで作曲しているのは崎元仁さんです。 松尾早人さん、岩田匡治さんは 2, 3 曲、植松伸夫さんは「Kiss Me Good-Bye」、葉加瀬太郎さんは交響詩「希望」を書いてます。崎元仁さんテイストあふれる作品になっています。崎元仁さん、松尾早人さん、岩田匡治さんnは「伝説のオウガバトル」など「オウガシリーズ」の作曲を担当していました。オウガシリーズを知ってるひとは「オウガっぽい曲」という印象を持つかもしれません。
崎元仁厨全開の日記を以前書きましたが[ 20070118#p05 ] FF12 の曲の特徴を要約すると以下になります。
- オーケストラ風味の音を駆使
- とくに弦楽器、管楽器
- 目立たない音楽[ 20070705#p06 ]
- メインのメロディが分かりづらい
メインのメロディが分かりづらい、というのは同じく崎元仁さんが曲を書いたグラディウスV もそうだったのだけど、メインのメロディを担当する音が目まぐるしく変わります。聴いているぶんには楽しめるのですが、コピーするときは苦労するようです。Over the Sky を書いたひとたちがそう言ってました。
面白いのが「FINAL FANTASY 〜FFXIIバージョン〜」です。FF1 から FF6 までの「FINAL FANTASY」( 以降 旧版 と略す )と FF7 から FF10 までの「FINAL FANTASY」( 以降 新版 と略す )が少し音が異なります。
旧版 FF1「オープニング・テーマ」の以下のところに注目。
新版 FF9「Melodies Of Life〜Final Fantasy」の同じところ。
FF12 の該当箇所。
旧版は 1 つ前の音符から 1 つ下げてるのに対して、新版は 1 つ前の音符から 3 つ下げてます。
FF6 までは旧版の音に馴染んでいたので FF7 からの新版の音は違和感があり、どうしても上記の部分が好きになれませんでした。FF12 で旧版が使われており、むしろ「FINAL FANTASY 〜FFXIIバージョン〜」は FF4 「オープニング」と同じです( FF4 の楽譜は持ってません )。おっさんゲーマーには嬉しいです。
B000EWBCQ0
_ 仕事
0830 出勤。
_ 「IT技術者」ってなんだ?
Mk さん「痛い技術者のことだよ」
_ [ISO8601][日付][時刻]ISO 8601 - 日付と時刻の組み合わせ
<date>T<time> のように日付と時刻の間にTを挟んで表記する。(例:2004-04-01T12:00:00+09:00=日本時間での2004年4月1日の正午)
quickml がログに書く形式はこれだったのね。
module QuickML class Logger : private def puts_log (msg) @mutex.synchronize { time = Time.now.strftime("%Y-%m-%dT%H:%M:%S") # これ @log_file.puts "#{time}: #{msg}" } end
_ [biff][CD-ROM][メール][コードリーディング][がらくた][高林哲]がらくたを読む - cdbiff
cdbiff はメールの到着を CD-ROMドライブを使ってお知らせするツールです。
メールの到着を知らせる biff という伝統的なプログラムがあります。cdbiff は知らせる手段に CD-ROM を使ったものです。呆れるほどくだらないプログラムですバカです( 褒め )。
読みます。
Ruby プログラムです。
#! /usr/bin/env ruby
プログラムの概要が書いてあります。1 行で分かるようなシンプルな書き方を見習いたいです。
# cdbiff - a mailbox flag for a CD-ROM drive
冒頭に Copyright があります。GPL です。
# Copyright (C) 2001 Satoru Takabayashi <satoru@namazu.org> # All rights reserved. # This is free software with ABSOLUTELY NO WARRANTY. # # You can redistribute it and/or modify it under the terms of # the GNU General Public License version 2.
getoptlong というライブラリを要求しています。
require 'getoptlong'
getoptlong は以下のライブラリのようです。SRA のひとらしいです。SRA こわい。
README-ja があるので読みます。
`getoptlong.rb' は、GNU の getopt_long() とまったく同じ方式でコマンド 行オプションの解析を行う Ruby のライブラリです。Ruby バージョン 1.1 およびそれ以降のバージョンで動作します。
getopt_long とはなんでしょう。getoptlong-ja.doc を読みます。.doc とありますが中身は plain text です。
GNU getopt_long() とは? ======================= GNU geopt_long() は、コマンド行オプションの解析を行う C の関数です。多 くの GNU ソフトウェアがこの関数を使用しています。GNU geopt_long() そし て `getoptlong.rb' には、以下のような特徴があります。 * 伝統的な一文字オプションに加えて、長いオプションに対応しています。長 いオプションは `-' の代わりに `--' で始まります (例: `--version')。 * 長いオプションは、一意に定まる限り後方を省略することができます (例: `--version' は、`--ver' と略すことができます。ただし、他のオプ ション名が `--ver' で始まらない場合に限ります)。 * 特殊な引数 `--' によって、オプションの解析を強制的に終了します。
次。使い方を印字します。
def print_usage print "\ Usage: cdbiff [OPTION] -f, --file=FILE Monitor FILE [/var/mail/$USER] -c, --command=COMMAND Execute COMMAND when mail arrives [eject] -i, --interval=SECONDS Monitor at intervals of SECONDS [30] -h, --help Display this help and exit " end
オプションの引数や、デフォルト値( 引数を与えなかった場合 )などを印字しています。[ ] でくくったものがデフォルト値だと予想するたんに cdbiff と実行すると以下の状態で実行されることが推測できます。
- /var/mail/$USER を監視する
- mail が来たら eject を実行する
- 監視する間隔は 30 秒
次。parse_options の定義です。
def parse_options options = Hash.new parser = GetoptLong.new parser.set_options(['--file', '-f', GetoptLong::REQUIRED_ARGUMENT], ['--command', '-c', GetoptLong::REQUIRED_ARGUMENT], ['--inerval', '-i', GetoptLong::REQUIRED_ARGUMENT], ['--help', '-h', GetoptLong::NO_ARGUMENT]) parser.each_option {|name, arg| options[name.sub /^--/, ""] = arg } if options['help'] print_usage exit 1 end return options end
オプションの名前と引数の組のハッシ20040804#p03ュとして使います。
options = Hash.new
parser.set_options でオプションの名前と引数の有無を設定してます。
parser.each_option でオプションの名前と( もしあれば )引数を取得します。
parser.each_option {|name, arg| options[name.sub /^--/, ""] = arg }
name.sub /^--/, "" で name ( オプションの名前 )についている -- を削除します。たとえば --command を command に置換します。「キーは name( オプションの名前 )、値は arg( オプション引数 ) 」というハッシュを作っています。
if options['help'] はオプションに help が含まれていたら print_usage して exit してます。
main の定義を見ます。ここの main は C の main という意味はありませんし Ruby に main というメソッドは存在しません( しないですよね )。main メソッドを定義する必要はありません。高林哲さんが書いた quickml も main から始まっているのでたぶん習慣として main を定義してるのだと思います。
最初にオプションを解析してます。先ほど読んだ parse_options です。
options = parse_options
オプションのデフォルト値を設定します。print_usage に書いてあったオプションです。
filename = "/var/mail/#{ENV['USER']}" command = "eject" interval = 30
filename = "/var/mail/#{ENV['USER']}" では環境変数 USER に設定されている値を ENV から取得してます。ENV は環境変数を表すオブジェクトです。ハッシュと同じインターフェースを持っています。存在しない環境変数を指定すると nil が返ります。たとえばこう。
irb(main):003:0> ENV['notexist'] => nil
このプログラムはお手軽な一発ネタプログラムなので環境変数の有無は気にしなくていいでしょう。
次のコードではオプションを設定しています。もしオプションを指定されていれば。
filename = options['file'] if options['file'] command = options['command'] if options['command'] interval = options['interval'].to_i if options['interval']
この「本体 if 条件」という構文は「if 修飾子」といいます。if 修飾子を使った場合は最初にやりたいことを書けるのでプログラマーの意図が伝わりやすくなります。
次が cdbiff のメインになる処理です。永久ループしてます。メールボックスの更新時刻が現在時刻よりも新しければ CD-ROM ドライブを開けます。
last = Time.now ← 最初に現在時刻を取得しておく while true begin current = File::mtime(filename) ← メールの更新時刻 rescue next end if current > last system(command) ← CD-ROM ドライブを開ける last = current end sleep(interval) ← 30 秒眠る end
File::mtime(filename) の filename にディレクトリを指定するとディレクトリの mtime を返します。なので filename に Maildir 形式のディレクトリを指定しても cdbiff 動作します。ruby すごい。
_ [/bin/sh][shell][pushd][popd]/bin/sh に pushd,popd は無いのだね
tdiary-current を追いかけるためのスクリプト[ 20080215#p10 ]を実行して気づきました。
% /bin/sh $ pushd pushd: not found
_ [トヨタの闇]トヨタの闇
内側から見た富士通「成果主義」の崩壊[ 20040804#p03 ]と似たノリです。
文が扇動的であり頭が悪そうな書き方だったり著者が世間知らずだったりするんですが、それはそれとしてカイゼン活動のために自分が犠牲になるのだったら本末転倒だよなあ。
4828413995
_ m_pixy [おお、きびなご。 なぜか辛子レンコンと馬刺しが混ざってるけど、まあ九州だからね。]
_ みわ [m_pixyさん: 鍋の最後の麺がうまかったです。うどんの麺を少し高密度にしたような触感でした。なんと言う麺か聞かな..]
_ m_pixy [たぶんちゃんぽん麺でしょうね。 スーパーなんかにはあまり売ってないんですよねー。いつも太めのラーメンで代用しています..]
_ みわ [m_pixyさん: 味が染み込んでいてウマかったです。 長崎ちゃんぽん・皿うどんの歴史と由来 http://www..]