「浅煎り珈琲 Java アプリケーション入門」を見つけて読む。 JavaでMapの実装が幾つもあることを初めて知った。 今までHashtableしか使っていなかったので、性能比較してみた。
VBA を少し勉強してみる。 VBA の関数の引数は値渡しと参照渡しがあり、それぞれ ByVal 及び ByRef キーワードで指定する。 省略すると ByRef で参照渡しになる。
で、以下のコードだが、参照渡しなので F(j) を呼び出した後は j=99 になるはずだと考えた。
Dim i As Integer Dim j As Integer i = 1 j = 2 F(j) MsgBox "j=" & j, MB_ICONEXCLAMATION, "Message" Private Function F(ByRef m As Integer) As Integer m = 99 F = m + 1 MsgBox "m=" & m, MB_ICONEXCLAMATION, "Message" End Functionしかし実行してみると j=2 のままである。
F(j) の部分を i=F(j) に置き換えると、期待通り j=99 になる。 何故ですか?関数の戻り値を受け取るかどうかで関数の動作が変わるんですか? または F(j) ではなく Call F(j) と書けば、期待通り j=99 になる。 でも F(j) とだけ書いた場合でも関数 F() の中の MsgBox は実行される。不思議だ。
ま、記述によって何か意味の違いが出るんでしょうけど。 CやJavaで変な失敗をしている人を笑えないわけで、そう考えると意味もなくスクワット。
とある掲示板で、「チキンラーメンを砕いて卵と飯と一緒に炒めればそば飯」 という記述に出会う。 まあそば飯になるんだろうし、それなりに美味そうだけど、多分やる機会はないだろう。
それにしてもカワチに行けば生活に必要な物が揃った時代が懐かしい。
160GB の HDD もずいぶん安くなったが、このサイズになるといわゆる Big Drive なので、 SP1 の適用されていない Windows XP をインストールするというのは難しいだろう。
調べてみるとWinXP SP1 適用済みCD の作成(無断リンク) というページを発見。しかし難しそうな作業だ。 というわけで Windows XP without SP1(造語)をインストールするドライブは 120GB が容量の上限と考えるのが一番楽だろう。
Javaで、イベントディスパッチスレッドだけでゲーム進行の全てを処理するプログラムを、まだ作りつづけている。 javax.swing.Timer の動作について確かめておきたいことが出た。 例えば1秒間に10回のタイマーイベントを起こすタイマーがあったとして、 何かの処理で3秒ほどブロックした時、ブロックが解けた途端に30回のタイマーイベントが続けざまに起きる などということはないか?と。 javax.swing.Timer は1本のスレッドで待機処理を行うけど、イベントディスパッチスレッドとは別スレッドだからね。
TinyWindow.javaを作成して確認する。 前述のことは杞憂だったようだ。
おお!C言語とは奥が深い。Cには配列へのポインタというものがあることを初めて知った。 配列の要素へのポインタではない。
int main() { char a[5] = "abcd"; char (*p)[]; p = &a; printf("%s", *p); return 0; }
これを使うと何次元の配列でも、大きさが分かっている限りはポインタ1つで渡せる。
#include何と知る必要の無い機能か。 誰かに頭の中身を疑ってもらいたい時にしか役に立たない。void f(char (*p)[][5]){ int i; for(i=0;i<2;i++){ printf("%s\n", (*p)[i]); } } int main() { char a[2][5] = {"abcd","efgh"}; f(&a); return 0; }
実のところ、昔からC FAQ にある 配列へのポインターをどうやって宣言するのかの意味が分からなくて読み飛ばしていたのを、 今初めて理解したというわけなんだ。
秋葉原をうろついていると、COMPUTER PLAZA ZOAでRDF193Hが42,980円だったので買う。 元々コスト優先のチープな機種らしいが。
歪みがあるのは調整で何とかなるのだが、これまで使っていたRD17GZに比べると、黒の部分が灰色がかって見える。 RD17GZどころかRD17GRにも劣るかも。
ついでに一昨年(2002年)の秋に、中古で9000円で買ったRD17GZについてだが、 97年に発売された時は128,000円もした機種であったことを初めて知る。 そのことを知っていれば、使っているときに豊かな気持ちになれたのに。
三日前から玄米飯を食べている。白米の場合の2倍の水で炊くらしいが、硬かったり柔らかかったりと難しい。 玄米炊飯モードなど無い炊飯ジャーで炊いているせいか?
よく噛まないと味がせず、美味くはないが不味くもない。腹持ちがかなりいい。 何となくヘルシーなプラシーボ効果。
宿舎時代に内線ダイアルアップが停められて以来、AirH"を使ってきたのだが、この度AirH" Phoneを使ってみることにした。 相変わらず日本無線のAH-J3001V,AH-J3002Vしか選択肢がない。 秋葉原の石丸電話センターでAH-J3002Vを選択。機種変更手数料込み12,390円。
AirH" Phoneについては、FAQページが大量にあるので困ることはないと言える。 しかし……この機種でファームウェアのバージョンを調べるには、PCにUSBで繋いで「ATI5」とATコマンドを打つ必要がある。 ケータイの画面上で確認できた方がいいと思うのだが。
すき家の豚丼を食べるために新小岩に行く。何とすき家新小岩店は消滅していた。 仕方がないので吉野家で豚キムチ丼を食べる。 注文する時、店員の女の子に「えっ豚キムチ丼?」と怪訝そうに確認された。売れてないんじゃないか? ま、きっと私の発音が悪かったんでしょう。 後は商店街の古本屋で、豊田穣の戦記物を何冊か買って帰る。
工事現場の脇を通ったとき、懐かしい匂いをかいだ。埃っぽいコンクリートの匂い……平砂宿舎の部屋の匂い。
そういえばこの前、平砂宿舎の女子学生の部屋に強盗が押し入ったそうだが、 女子学生は午前三時という時間に施錠せず寝ていたという。 「おいおいおいおいおいおいおいおい」と三十回ぐらい突っ込みたいね。夜這いでも待っていたのか?(不謹慎)
しかし古いニュースを今更話題にするのも恥ずかしいものがある。 つくばちゃんねる2で話題にされていないかとちょっと探してみたが見つからなかった(多分あるはずだけど)。
とあるCG系サイトで、ソウルキャリバー2についての話があり、興味を持つ。 しかし技表を見て、やる前から挫折。 記憶力は10代の特権……などという言葉が思い浮かぶ事自体、老いの表れか……。
PS2版のソウルキャリバー2を買ってやってみる。 1つ1つの技コマンドは簡単なのだが、やはりあまりにも種類があって覚えられるものではない。 どの操作でどの技が出るかを体で覚えないとだめってわけだね。
会社で、とあるCプログラムを読んでいると、以下のようなコードがある。
char array[10]; ... memset((char *)&array, 0x00, sizeof(array));ふーむ……char配列へのポインタをcharポインタにキャストしているが、問題ないのだろうか?
さらに別の所にも同じような記述がある。
char array[10]; ... if(strchr((char *)&array, 'a')){ ... }うーむ。キャストすると配列の先頭要素へのポインタと同じ値になるわけではあるが。 キャストを削って Visual C++ でコンパイルしてみると、 「間接参照のレベルが 'const char *' と 'char (*)[10]' で異なっています。」 と警告されるわけで、やはりまずいのではなかろうか。 私自身、配列へのポインタを知ったのはつい最近のことで偉そうなことも言えないのであった。
以下の実験をしてみた。
void g(int (*p)[5]){ printf("%d\n",sizeof(*p)); } int main(int argc,char **argv){ int array[5]; g(&array); }配列のポインタがあるのならば、当然にそのポインタから配列の大きさを知ることができるべきであろう…… と思いついてやってみた。確かに大きさは分かる。
ところで
void g((*p)[5]){を
void g((*p)[6]){にしてみると、 Visual C++は「'int (*)[6]' と 'int (*)[5]' で配列の添字が異なります。」と警告を出した。 添え字が違うと警告が出るということは、 思ったより何かの役に立ちそう……立つのか?役に立つ局面を思いつかない。 大体、文法違反で警告を出しているのか、文法違反じゃないけどVisual C++は警告を出すのか、分からないもんなあ。
私が最初に作った大規模プログラムは、DOS-BASICで動く格闘ゲームである。 スクリーンショットだけでも思い出として公開したいところだが、引っ越しの時にPC-98を押し入れにしまってしまったし、 DOS-BASICのプログラムはスクリーンショットを取るのが大変なのだ。 というかやり方を忘れてしまった。 確かVRAMをBSAVEしてつなぎ合わせるんだったか、あるいはSTOPキーを押しながらリセットして何かするんだったか……。
2つ目に作った大規模プログラムは、Quick Cで作ったRPGである。 1年半の労力をかけた作品なので、Windowsに移植したいと思ってソースを読み直してみたが、
他にも文字列リテラルを扱う時、
char message[] = "メッセージ"; /* 配列にコピーする */と書くよりも
const char *message = "メッセージ"; /* 文字列リテラルへのポインタ */と書いた方が、当然にメモリと処理時間の節約になるわけだが、当時の私はそんなことも理解していなかった節がうかがえる。
そんなわけで、移植するとしたら随分時間が掛かるだろうという結論が出た。 また、会社で明らかにまずいCプログラムを見ることがあるわけだが、初心者はかなり似たような発想をするのだということを知った。
今日は Java での XML の読み込みについて、<tag>VALUE</tag> の VALUE の部分が、まれに部分文字列になってしまうバグに悩まされる。 そして org.xml.sax.ContentHandler の characters(char[] ch,int start,int length) について重大な思い違いをしていることに気が付いた。 これは一度に文字列を渡してくれるとは限らず、何度かに分けて渡すこともあると、ちゃんとドキュメントに書いてあるのに、 一度に文字列が渡されることを期待したコードを書いてしまっていたのだ!(ちょっと考えれば当たり前の仕様だが)
貴重な休日の時間が費やされた……プログラミングは日曜日の午後にやるもんではない。
真木洋三の「東郷平八郎」(上・下)を読み終わった。 上巻は薩英戦争や平八郎が英国に留学する話なのだけれども、正直どうも退屈だった。 一方、下巻はクライマックスの日本海海戦があるせいばかりでもなかろうが、面白く一気に読める。 真木洋三は検索してみてもあまり出てこず、どうもマイナーらしいが、著作には面白そうな物が多く読んでみたい。
7時間寝て起きたが、やっぱり眠いので2時間昼寝。 椎名誠がかなり昔に絶賛していた「大西洋漂流76日間」を、先週図書館で借りてきていたので読む。 実際とても面白いが、返却期限までにはとても読めないので、文庫版を通販で買うことにした。
JavaにはZIP形式のファイルを扱う機能があるが、圧縮ファイルを出力するときにCRCと圧縮後のサイズを指定しなければならない。 指定しなくても出力はできるのだが、解凍ソフトに「ファイルが壊れています」と警告されるファイルができてしまう。
検索してもいまいち解説ページが少ないので、作成した。
JavaでZIPファイルを作成する
しかしこれ、ZipOutputStream の解説だけなので ZipInputStream も作らなきゃなあ。
元々の動機はゲームのセーブデータをXMLに出力したら随分かさばるので圧縮したいってだけなのよね。
J-SPEEDの無料ダイナミックDNSサービスを利用していたのだが、4月いっぱいで無料期間が終わるとのメールが届いた。 継続するには自分のWebサイトにJ-SPEEDのバナーを貼ればよいらしい。
何に使っているかというと、自アン+(アンケート形式の掲示板サイト)のHTMLを軽量化してAirH" Phone用の Compact HTMLに変換するスクリプトを自宅サーバで動かしているわけだ。 しかしこれは自分専用のサービス(?)であるし、強いて継続したいかと言えば少し迷う。 バナーはごく小さな物らしいとフォロー。
ペリカン便の不在連絡票が来ていた。インターネットで再配達を申し込めるようなので試す。 すると住所氏名電話番号を入力しないと再配達は申し込めないようだ。 クロネコヤマトや郵便局のシステムは伝票番号を入れるだけでよかったような気がするぞ。
仕方がないので入力して進もうとすると、「住所の入力形式が違いました。やり直して下さい」というエラーページになり、 「戻る」ボタン(ブラウザの『戻る』ボタンではなく、ページに表示されているボタン)を押すと入力が全て消えていた。 だめだこりゃ。
JavaScriptがONになっていないとまともに使えないようなので、今度はちゃんとONにしてもう一度入力。 再配達希望日として一年後の日付を選べる(年の選択肢が2004年と2005年の2つある。が、月の選択肢は4月と5月のみ)など、怪しげなシステムだ。
今日見た変なプログラム。
int f(char *str) { /* str が空文字列なら○○する */ if(0 == strncmp("\0", str, sizeof(*str)){ ... } ... }ま、書いた人の意図通りには動くだろうからよしとしよう。
こっちは割とよくある、というか私も昔やっていた間違い。
int f(char *str) { /* str が空文字列なら○○する */ if(NULL == *str){ ... } ... }そもそも関数の設計書に「NULLで終わる文字列」と書いてあるから仕方ないか。せめて小文字なら……。
さて明日から連休、どのくらい休めるであろう……と考えていたら、 連休中の休日を全て平日扱いとしたスケジュール表が配られた。いやん。 私は土日の2日間休めるのでまだいいとだけ書いておこう……。
今のパソコンを組み立てたのがちょうど3年前の連休であった。 実は「連休初日にマザーボードを交換してAthlon 64 2800+にするぞ!」と意気込んでいたのだが虚しく潰えた。 「くぬぅ来月こそは!Athlon 64 3000+にするぞ!」と野望を上方修正しつつ猛仕事。
「ブルース・オールマイティ」のDVDを、ジム・キャリー主演ということで評判を一切調べず購入する。 下手に調べると買う気がなくなって「レンタルでいいかー」となることが多いので。よくあるよね。
大変面白い。指が7本になるシーンは巻き戻さないと気づかなかったが……。注意力の低減か。
しかし本編では気にならなかったが、NG集と未使用シーンは、MPEG特有のノイズが大量に乗って画質の悪さに唖然とした。 今まで「DVDは画質が悪い」という言をネットで見かけても「そんなに悪いかな?」という感覚だったのだが、 なるほどこれは画質が悪いと言われても全く仕方がない。 いや、本編は画質悪くないんだけどね。そんなにDVDの容量はぎりぎりなのか。
久しぶりに深酒して下痢してしまった。 雨でもあるので部屋に閉じこもってファーレントゥーガ。オリジナルシナリオFT演義(無断リンク)を楽しむ。
そういえばラストサムライがレンタル開始されているので、夕方外出し、借りてきて見る。 ずいぶん前の話になるが、友人達と「A.I.」を見に行った後、映画の内容に突っ込みまくって苦笑されたことがある。 いちいち突っ込まずに素直に感動するべき映画もあるのではないか……と、反省した。というかちょっとトラウマの思い出なので煩悶した。
官軍の土下座は最敬礼の方が日本人の感覚として自然ではないかとも思ったが、どっちでもちょっと変だから土下座の方が分かりやすいということでありかも。
休出と残業に追われる日々が続いている。 私の作業は、Cプログラムソースを見て、プログラムのテストケースを列挙することだ。 今日見たプログラムに配列をループで比較するという部分があったのだが、配列の長さより一回多くループするため、最後のループで配列を1要素はみ出した所を読んでしまう。 私は、当然これは単純ミスであろう……と作成者に確認した。
すると、「配列をはみ出すのは最初から予測している。スタックに変数がどう積まれるか承知しているし、変な結果にもならないから何も問題はない」という答えが返ってきた。 確かにループ変数で分岐条件が入っているので、実装依存であることに目をつぶれば何も問題なく意図した通りに動くのだ。
あまりにも意想外の返答であったので、思わず「そのような危険な書き方をあえてする必要があるのですか?」と言ってしまい、 相手は明らかにむっとした様子で「変な部分にアクセスしていることは分かっているが、見やすさを重視したのだ。他の人が後から修正する場合もやりやすいだろう」 と強調するばかりであった。
後で冷静に考えてみると、「配列の外にアクセスするのはCの規格に反しています」と言えば良かったのだ。 とは言え、私もMS-DOSの頃はスタックの実装を不必要に知りたがったりしてCの規格を軽視していたわけで、誰もが通る道なのかもしれない。
Cプログラミング診断室(無断リンク)に、 構造体のメンバをご苦労にもいちいち列挙してコピーしているプログラムが挙げられていたが、 私の居るプロジェクトにもまさにそういう実例が見かけられる。
Cの構造体は代入演算子でコピーできるので、自分のプログラムには「構造体は代入演算子で全項目コピーできる」というコメントを入れることにした。 何か文句を言われたら逆らわずに同じようなコーディングをするつもり。プログラムを生成するプログラムを作ればいいだけの話よね。
COBOLのプロジェクトに関わると、「ひとつのプログラムで変数は全て同じ名前と型を持っている」とか「同じ処理内容が整然と並んでいるのは美しいことである」 などという美学を、「理解」できるようになり、「理解して尊重」できるようにもなる。恐ろしい。
今週は土曜が休み。7時間半寝て起きた後、やっぱり足りないので2時間昼寝。前も同じ事を書いたような。
自アン+(アンケート形式の匿名掲示板)で、ギルティギアイグゼクス青リロが勧められていた。 「青リロ」の意味が分からないので検索し、多分「ギルティギアイグゼクス#リローデッド」のことであろうと推察して買いに出る。 が、見つからなかった。
一昨年から、毎日歩数計で歩数を測っている。 今のプロジェクトに常駐するようになってから、帰路の歩数が翌日分としてカウントされることが多くなった。
そんなわけで今日も午前様なのだが、本社から「6月末までの契約だけど7月末までの延長依頼が来ている。どうよ」 というメールが届いていて目眩。思わず、禁酒4日目にも関わらずポケットウイスキーをぐっと一杯。弱!!
非礼でないと思われる限度ぎりぎりの表現で「嫌です」というメールを出す。 もともとは5月末までだったのが6月末、7月末、その先を考えると世にも恐ろしい。
先日の契約延長拒否メールが功を奏したようで、「とりあえず6月末まで」との返事が伝えられた。 「とりあえず」がとても気になる。
5月は土日のどちらかは休めたのだが、6月はそれも叶わぬことに。 休日は午後から出社してもよいことになっているのが大きな救いだが……?
愚痴をこぼしていても仕方がないので、C言語の話。 グローバル変数はなるべく使わない方がよい、というのを変に解釈したCOBOL使いが居たのか、 プログラム中で使う変数を全て巨大な一つの構造体に詰め込み、main関数で一つだけ宣言して 後はその構造体をそれぞれの関数にポインタで渡し、事実上のグローバル変数として使用しているプログラムが大量にある。 ってこれも愚痴じゃん。 フォローしておくと、そういう書き方をすることを強要されてはいない。とても、とても大きな救いだ。
今日は22時で解放。帰ってから、Googleで「デスマーチ 残業」で検索してみる。 平日23時まで残業、土日が午前休の現状は、まだまだデスマーチではないようだ。 自分の甘っちょろさが感じられるが、同時に事態が刻々悪化している現プロジェクトからは一日も早く抜けたいとの思いを強くする。
ところで先の検索でかかった2chのスレッドで、平成14年春の某銀行関係のプロジェクトはすさまじいことになっていたらしいことを知った。 ちょうどその頃私は就職活動をしていたのだが、面接で「某銀行のシステムトラブルは何故起きたのだと思いますか?」という質問があり、 私は「システム統合で大変だったと聞いています。テストが足りなかったのでしょう」としれっと答えたのだが、 相手が非常に微妙な表情を示したのをよく覚えている。そうか、そういう意味だったのか……。と、勝手に察した気分の私。
ところで「微妙」はいわゆる若者言葉だが、この場合は「一種言い難い」とか「一種形容しがたい」と言うべきだろうか。しかしこれもgoo国語辞典で出てこない。
朝の4時に飛び起き、寝ぼけて顔を洗って髭を剃ったところで目が覚めて寝直す、といったことが最近割とある。 高校3年の時に似たようなことがよくあったのを思い出した。 してみると睡眠時間を大いに削られるのは受験生時代以来なわけで、まだまだ大学生気分が抜けていない証左。
それにしても学生時代にC++を極めておくのだった。あんな言語はなかなか覚えきれないからして。 と書くといかにも今C++で苦労しているかのようだが、実際にはまるで逆で、C言語ばかりの超楽勝な作業なのである。 下手プログラムの愚痴を日記に書いておいて言うことではない気もするが。 で何が言いたいかというと、やっぱり趣味のプログラミングをする時間が無いと悲しいなあという話なのだ。
一日も欠かさず見る自アン。天気予報は見忘れても自アンは必ず見るッ!!
そういうわけだから今日目に付いた自アンネタを挙げていきたいと思う。 自アン民でない人お断り。
あろうことか!11時なのにもう寝てしまうとのたまう俺様参上!
クーラーがないと、もう頭がクーラークーラするねん
帰路にて、味ぽんで見て笑った。
フゥ。アドレナリン?
大分前に、AAA!CAFEから「MySQLのベータテスターにならないか?」というメールが送られてきた。 暇が無いので放置しているのだが、新しい自アン風アンケートシステムを作りたいと思う。 自アンを知らない人のために解説しておくと、投票箱が何百箱とあって、 それぞれの箱で全く別の話題について投票を行うシステムである。 投票箱はユーザーが自由に設置することができる(2ちゃんねるなどの掲示板のスレ立てと同じ)。
以前にJSP/Servlet+MySQLで自アン風アンケートシステムを作りかけた(未公開)ことがあるが、 これは箱テーブルと票テーブルが各1つずつというものであった。 箱テーブルの主キーは箱ID、票テーブルの主キーは箱IDと投票番号。
しかしMySQLはロックがテーブル単位であり、行ロックが無いという。 投票箱が何百とある時にたったひとつの票テーブルで投票をまかなえるものであろうか? 一人組織票抑制機能などはSQLでの問い合わせで行えるので、いちいちログファイルを読むよりは早いはずだが……。
とりあえずPHPとMySQLの組み合わせは未経験なので、時間ができたらやりたい。 問題は、自アン系サイトは最大手の自アン+を除いては、パフォーマンスが問題になるほどに利用者が多くないこと。
何と今日は定時で帰れる。しかも土日が休み。この前の日記の愚痴が恥ずかしい。 スケジュールに切れ目ができて私を含む一部のメンバーだけ休めるってことなんだけど。 その一部以外のメンバーは相変わらず残業と休出なり。我々も来週からまた残業と休出であろー。
さて定時帰りとくれば秋葉原なので、LogicoolのコードレスマウスMX-700を買った。 エアーパッドソール(マウスの下面に貼って滑りをよくするシール)を貼って史上最強のマウスパッド(商品名)に載せて使っても少しだけ重い。 今まで使っていたマイクロソフトの有線マウスはかなり軽かったので、コードレスの分重さを相殺してとんとんというところ。
またマイクロソフトの有線マウスに比べると、ホイールのスクロール量が少ない(ドライバの設定で変えられるはずだが設定しても変わらない?)、 ボタンが左右ボタンとホイール以外に5つもあり間違えて押してしまうこともなくはない、など慣れの問題が発生する。
ところでACアダプタを電源に繋げないと、マウスは使えても充電ができないので注意。 私は電源に繋ぐのを忘れて、充電ができないのはエアーパッドソールを貼っているせいかと勘違いして剥がしてみたりしてしまった。
近所の古本屋に行く。私が越してきた頃は普通の古本屋だったのだが、ここ半年間でずいぶん扱う商品が広がっている。 ペットボトルのおまけのフィギュア、鉄瓶などの古道具、中古ビデオ、中古DVD、アンティーク人形、ジッポライター、 全部覚えてないので書ききれないが、こういう風に脈絡無く手を広げるというのは経営状態がかなり危ないのであろうから 今の内に欲しい本は全部買っておくことにする。
この前の日記で書きそびれたが、先週の金曜日は東プレのキーボードRealforce 106も買ったのであった。 店で触ってもピンと来ず、予備知識が無ければとても買わなかったであろう。
先人達の言う、超過勤務手当をもらっても使う暇が無い状態を微賤の身ながら味わっている状況なので、評判を信じて迷わず購入。 学生時代は「結構忙しいけど金銭的には余裕があってPC関係に浪費できちゃう身分」に憧れ、実際今現在がその通りで、そういう意味では理想通りの人生になったじゃないかって感じだけど、やっぱり休日の朝にコーヒーを片手に趣味プログラミングがしたいよと言いつつ、そんなものは普段忙しいからこそ憧れるのであって、学生時代そういうことをしていたわけじゃないってことよ馬鹿めこの自分。
噂に違わず恐ろしく使い勝手のいいキーボードなのだが、まだプログラムは一文字も打てていない。 ただこの日記を書く時、3行ぐらい書いては「つまらん文章だ、こんなもんを読む人はさぞ時間を無駄にするだろう」と全部消すことを3,4回繰り返しているのであり、この文自体もその対象であり、これぞプログラマの好きな再帰法。 ともかくこれはいいものだ。店頭での試し打ちなど全く当てにならない。
Realforce 106にはWindowsキーが無い。デスクトップ表示の「Windowsキー+D」だけは使うのでちょっと困った。 デスクトップ表示を無変換キーに割り当てるソフトでもないかと考えたが、まー結局デスクトップを頻繁に表示させないやり方に慣れるでしょー。
何だか今週も休める。サブリーダーが「これから更にどんどん大変になるから今の内に休んでおこう」と説明していた。ふっ。 実はまだ徹夜はしたことがないのだが覚悟しなければなあ。寝るところ(ソファー)が一つしかないのがかなり不安。
そういうわけで休みの日は何かしなければならないという観念は捨てて、自アンの箱を全て読破本を読むことにする。
松永市郎「先任将校」がとても面白い。
タイトルだけ見ると戦記物なのだが、昭和十九年にフィリピンの600キロ東の海上で雷撃を受け沈没した巡洋艦「名取」の生き残りが短艇に乗って陸地に帰り着く話で、著者は生還者の一人である。
実はまだ半分ほどしか読んでいないけれど、戦記物に興味がなくても漂流記の類が好きな人には間違いなくお勧めだ(生還者は乗組員の一部だけなのでこういう書き方は不謹慎かもしれない……)。
「体調悪いので午後から出社させて下さい」とメールを送ったところ、「体調悪いなら今日休んでもいいですよ」との返事をいただいたので、ちょっと迷ったが休ませてもらうことにした。 先週はずいぶん残業が少なかった(21時ぐらいで帰れた)上に土日休んでおいて月曜休むのはどうよ。まあ、実際今は作業が少ないので休める時に休んでおこう。 と、今日記を読み返して書いてないことに気づいたのだが、再度の延長依頼があって結局7月末まで延長になったのだ。 しかし読み直すと私も随分めちゃくちゃ書いてるな……実際、スケジュール上大きな締め切りが7月末にある関係で修羅場が予想されるのは本当なのだ。と言い訳。
自アン+がらみでかーずSPというサイトを見てみる。 世の中には面白いFLASHを作る人が居ることを知った。 FLASHベンチマーク「萌えふらマーク2003」をやってみる。スコア3000、22000中16000位。 結構低い(Athlon(Thunderbird) 1.33GHz GeForce4MX440)。 画像回転のベンチマークはJavaで作ってみたことがあるが、やはりFLASHの方が2倍ぐらい速いかも?
そうだ……すっかり忘れていたがAthlon64を買うのだ!8月こそは!しかし電源と発熱は大丈夫かねえ。 ケースに付いている電源ユニットを350Wという容量だけ見て買ったからなあ。 以前、電源ユニット・ケースの知識と実践という、多分かなり有名なサイトを検索で見つけて読んだことがあるが、結局どこのメーカーの物がいいのか分からなかった。