jFD開発したりしなかったり日誌
2004-09-18 [長年日記]
_ jFD2
タブ化してみた。
まだ操作系を詰めなければならないが、かなりいい感じ。
素敵。
ただ、別の問題が。
今まで1プロセス1jFDな造りだったのだが、作ったり消したりするようになって、
jFD2を閉じてもガベージコレクションに回収されない。
スレッドとスタティックオブジェクトからの参照を開放してやらないといけない。
何気にシングルトンをいろいろなところで使ってるので、きちんと探して参照を消さねば。
2004-09-16 [長年日記]
_ メガネ
どうもコンタクトをウォシュロムのにしてから合わないんだが、
出社してもまだ目がゴロゴロする感じがあったので、
トイレで外して水道で洗ってみたらビックリ。
破れた。
悪いほうの目なんでかすんじゃってどうしたもんだか。
で、よく考えたら前からメガネを新しくしようと思ってたので、
タイミングもいいし買っちゃうことにした。
今までのは2年前に買った5000円のやつで、デザインが気に入らなかったり
レンズの汚れが目立ってきていた。
「目見えないんで、昼休みにメガネ屋行って買ってこようと思うんですが、
もしかしたら少し戻ってくるの遅れていいですか?
ノートPC持っていって仕事しますから」
と言ったら許可が出たんで、渋谷駅近くのメガネドラッグへ。
お目当てのがあったのだけど、今後数年の自分の顔を決めるようなものなので
なかなか決断がつかず、幾つかに候補を絞った中で着けては外し着けては外しを
繰り返しまくってたら、脳味噌が麻痺してきて似合ってるのかわからなくなった。
結局店員さんの意見を聞いて決断。
男っぷりが上がったのでみんな見にきてください。
ついでに惚れろ。
_ jFD2
試しにネットワーク上のファイルの編集コマンドを実装してみた。
一回ローカルのテンポラリディレクトリにコピーしてMD5ハッシュを取得しておき、
エディタのプロセスを監視して終了したらもう一度MD5ハッシュを計算、
もしも更新されていたらサーバー上のオリジナルに上書き移動する、という仕組み。
仮実装なんでソースは汚いんだが、いや便利だよコレ。
_ jFD2その2
スクリプト機能をいじくってたんだが、永久ループに入ったらしく
リソースを100%持っていったきり返してくれない。
重すぎていくら待ってもタスクマネージャが出てこないんだからまいっちん。
FileFishの性質上、ネットワークにあるスクリプトを実行する、なんてことも
出来そうな気がするんだが、ブラクラ的使い方も出来るんで危なさそうだ。
2004-09-15 [長年日記]
_ これ書いたの誰だー!
いくら古いコードをコメントアウトで残してあったり、大量のうざい
ログ出力文が挟まっていたとしたって、1000行メソッド書くバカが
どこの世の中にいるか!
クラス全体で5000行って、どんなバカが書くんだ。
読むほうの身にもなってくれ。
俺はもう帰るぞ。
_ 追記
「1000行メソッド書くバカがどこの世の中にいるか!」
と書いたけど、今まで山ほど見てきたんだよな、そのくらい。
しばらく自分のソースばかり見てたんで(仕事でソース書いてない)、
耐性が落ちてるんだろうか。
_ お遊び
この前書いたソースの行数カウンタースクリプトに手を入れて
平均行数、最大行数を調べられるようにして、ドライブ内の適当なソースで
計測してみた。
そこで発見。
オープンソースのJavaライブラリだと平均150〜200行程度になるようだ。
ちなみにFileFishは平均98行、jFD2は89行だった。
ずいぶんコンパクトだが、コメント書くのサボってるだけとも言える。
2004-09-14 [長年日記]
_ 愚痴
ここ、古いソースをコメントアウトして残す習慣あるらしいんだが、
読みづらくてかなわないんで勘弁してくれないかな。
あと、ロジックと同じくらいログ出力文入ってるのも僕の乏しい記憶力を
盛大に無駄遣いしてくれるんで勘弁してくれないかな。
2004-09-13 [長年日記]
_ バカ騒ぎ
行きつけの二子玉川のスナック主催のバーベキューに参加してきた。
当日は10時45分にお店に集合し、クーラーボックス二つに大量の氷と
缶ビールを詰めて、お客夫婦の車で多摩川の神奈川側へ。
前の晩、朝4時までjFD2を書いていて、かなり眠かった。
現場ではひたすら肉肉。
周りではスピーカーとターンテーブルを持ち込んで踊っている一団や、
カップルに投げつけるようなライスシャワーを浴びせている一団
(コスプレ臭いシスター付き)、上半身裸で水溜りに飛び込む
若いお兄ちゃん達など乱痴気騒ぎ全快。
その中で和やかに肉を食いビールを飲んでいたら眠くなってしまい、
コテンと眠って意識を失った。
そして目が覚めると唇に怪しい感触が。
うあ、なんだなんだ、一体何が、と思って起き上がったら女の子が
「はい動かないでねー」
と言いながら口紅をぬっていた。
そしてそのままラメはたかれるわマスカラ塗られるわ、
しまいに髭描かれるわ額に肉と書かれるわの大騒ぎ。
みんなで僕を囲んで写真撮影していった。
ここ数年来で僕が一番美味しかった瞬間かもしれない。
_ jFD2
昨日書いた編集コマンドのリモートファイルの扱いについて考えていた。
jFD2でローカルファイル以外のファイルを呼び出すのは、
編集コマンドの他に実行コマンド(Xキー)と関連付け実行(Zキー)か。
少なくとも編集コマンドだけではないので、テンポラリファイルの管理の
仕組みが必要になるだろう。
考えねば。
_ jFD2その3
Groovyを使ってソースのラインカウンターを作ってみた。
約40行。
確かに記述が少なくて済み、生産性は高いんだが、いかんせん
言語に慣れてないんで時間は倍かかってるのがマヌケ。
Javaの機能だけで書けばいいんだが、Groovy特有のメソッドの使い方が
よくわからない。
まあ、追々慣れるだろう。
2004-09-11 [長年日記]
_ 土曜日は
まずボクシング。
今週は全然行けてなかった。
運動不足気味でへばるのがやたら早い。
それが終わったら登戸まで歩いて電車で川崎へ。
この前修理に出した鞄を回収しにいった。
店員のTさんは以前、渋谷の丸井ワンでこの鞄を買ったときの店員さんで、
ずいぶん久しぶりに会った。
少し話して近況などを。
それから横浜に行き、同じく丸井ワンの店員だったA君の店へ。
お店の服を眺めて、この前僕が買ったパンツなどについて雑談。
閉店後、二人で一杯飲みに。
シューティングゲームについて雑談。
とりあえず平和な一日。
_ 靴
先日壊れて文句を言ったら修理してくれることになったニコルクラブの靴だが
(8月17日の日記参照)、修理から戻ってきた。
元々、靴紐を引っ掛ける部品が指でも曲がる、
「お前、空き缶加工してこの部品作っただろう?」
みたいな感じで怒っていたのだが、戻ってきたらがっちりしたのに交換されていた。
その点は感謝してるんだが、黒かった部品がずいぶんメタリックになってるんですが。
靴のイメージ変わりすぎ。
前回は「格好さえ良ければ機能はどうでもいいのか!」と怒っていたが、
「機能さえ満たせば格好はどうでもいいのか!」と憤慨中。
ファッションブランドの癖に何を考えてるのか理解に苦しむが、
これ以上かかわるのもアホらしいので文句いう気も無い。
もうここでは買わないだけだ。
_ 今、Jude竹使ってガリガリUML書いてるんだけど、自分の脳味噌の
問題点のようなものを感じる。
自明なものとそうでないものの区別が曖昧で、自分にわかってるから
書かないでいいや、というのを仕様書にまで適用しそうになる。
要点だけ書いてあればわかるだろうという憶測が進みすぎて、
要点のさらに要点だけになってたりするので逆に全体がわからない。
いかんわ、これは。
_ jFD2
外部プロセスの呼び出しを試しに実装してみた。
ここらはjFD1のコードがそれなり流用できた。
で、ためしに編集コマンドでエディタを開いたのだが、はて、
ローカルファイル以外はどうしよう。
SMB以外のリモートファイルやアーカイブ内ファイルが直接編集できる
エディタなんて聞いたことも無いんで、やはりテンポラリディレクトリに
コピーしてから編集、ということになるか。
ついでにプロセスを監視して、エディタが終了したときに
編集対象ファイルが更新されていたら、リモートにコピーする、
なんてのも面白いかもしれない。
2004-09-10 [長年日記]
_ Groovy
昨日書いた画像ダウンロードスクリプトをいじってて驚いたが、
いつの間にか日本語がちゃんと使えるようになっていた。
素晴らしい。
実はもうちょっとでnative2asciiをかけてくれるストリームを書くところだった。
_ FileFish
相対パス解決アルゴリズムにバグ発見。
バグというか、僕の考えが浅くて実装がえらくいい加減だった。
基準ファイルと相対パスで表されるパスを取得する部分のアルゴリズムで、
http://www.aaa.com/a
に対して
./a.jpg
という風に相対パスを指定した時に、全く何も考えず
http://www.aaa.com/a/a.jpg
にしてた。
よく考えたらaがファイルだったら
http://www.aaa.com/a.jpg
になるんだった。
でもhttpファイルシステムの場合、存在さえすればファイルであろうが
ディレクトリであろうが入力ストリームを取得できるんで、
ファイルとディレクトリをどうやったら見分けられるのかわからなかった。
I氏に相談したら教えてくれたが、
http://www.aaa.com/a
がディレクトリの場合、実は301が帰ってきてリダイレクト先として
http://www.aaa.com/a/
が指定されてるんだそうだ。
しらんかった・・・
2004-09-09 [長年日記]
_ 贅沢言ったらきりがないんだが、
今メンテしてるコードに対して突っ込みたくて仕方ない。
今まで見てきた中ではかなり上質なコードだし、
C言語のベテランとしてはこれは正しいコードなんだろうな、
と思うんだが、中途半端なオブジェクト指向性が読んでてイライラする。
溜め込むのは健康に悪いから突っ込みポイントをテキストファイルにメモしていったら、
10個くらい(個々のソースにではなく、全体に共通する傾向についての突っ込み)が
簡単にリストアップできてしまった。
他人に理想のソースを求めても仕方ないのだろう。
自分の理想は自分で実現するしか無いらしい。
_ jFD2
スクリプト実行機能をちょっと整備してみた。
設定ファイルにスクリプトフォルダを用意して、その中にあるスクリプトファイルをリストアップし、
ダイアログでコンボボックス表示してユーザーに選ばせ、そのスクリプトを実行する。
で、ためしに以前どこかで書いた、
「URLを入力すると、そのHTMLファイルを読み込み、リンクを抜き出して
画像ファイルだけカレントディレクトリに保存する」
というスクリプトを書いてみた。
比較的頻繁に改行や空改行をしているが、50行で収まった(もうちょっと増える予定)。
素晴らしすぎ。
俺って天才だぜー(こう思う瞬間がプログラムの醍醐味)
_ 今の仕様ではjFD2はスクリプト言語にGroovyを使うのだが、これが慣れてないんで大変。
気をつけないと素のJavaとほとんど変わらないソースになってしまう。
あと、charの使い方がよくわからない。
'a'と書いてもStringとして扱われていて、メソッドの引数に指定したら
「その型のメソッドは無いよ」
と言われてしまった。
最終的に
'a'.charAt(0)
と書いて無理やりcharにしたが、もっとましな手は無いだろうか。
2004-09-08 [長年日記]
_ Gmail
オレンジニュースのkakudaさまからGmailアカウントゲットしました。
イケメンあっとまーくじーめいるどっとこむです(全部アルファベット小文字。スパム避け)。
すみません、先日nogさんに頂いたアカウントはポカをやらかして消滅した模様です。
本当に申し訳ありません。
最近の僕は恐ろしく筆不精ですが、良かったらメールください。
頑張って返事書きます。
_ まだ大丈夫
mixiでakiko嬢の日記を読んでたら、知らない単語が。
「GRASPパターン」
まず最初にゲームボーイアドバンスSPパターンと読んだ時点で終わってる。
BじゃなくてRだ。
初めて聞く言葉だ。
最近情報収集をサボって、手持ちの道具のみでコードを書いてる気がする。
俺はいつの間にこんなに不勉強になってしまったのだろう、
こんな不勉強なこっちゃ今まで馬鹿にしていたヘッポコピー連中と同じになってしまう、
もうおとなしく引退して田舎に帰ろうそうしよう、と思ったが田舎に帰る前に
紹介記事を読んでみたところ、ごくごく当たり前の、僕が普段からやってることに
名前を付けているだけだった。
オッケー俺様まだ大丈夫。
まだまだ若い者には負けられませんよ。
_ FileFish
ぼちぼち今公開しているバージョンに比べて手が入ってきたので、
次のバージョン公開しようかな。
今回の目玉はこんなとこ。
・色々なところの高速化
・多少インターフェイスの変更(名前がおかしいメソッドがあった)
・解釈可能なパスが増えた(HTTPでttp://から始まるのと、ローカルファイルのfile://から始まるURL)
・Windowsのローカルファイルのequalsメソッドで、パスの大文字小文字を区別しないようにした。
・バグ取り
これだけ変わってりゃ次バージョンって言っていいだろ。
_ お金持ちになりたい
と思ったのでjFD2は売れるか考えてみた。
まだ書いてる真っ最中だけど、機能的には一般のファイラーを凌駕する物に
なりそうだし、
値段次第では売れるかもしれない。
そーだなあ、機能制限無しで10万円くらいにしたら、間違えて100人くらい
登録してくれないだろうか。
無理か。
2004-09-06 [長年日記]
_ コンタクト
使い捨てコンタクトが終わりそうなので、実家から戻るついでに
新宿で買ってきた。
うー、たけえ。
とりあえずで1日使い捨てを使ってるのだが、このランニングコストは
まったくもってバカにならない。
2週間のにすればコストは抑えられるが、これだって安くない。
いっそ使い捨てじゃないのを買うという手もあるが、
未だに油断してると外れたりするんで、なくしたらと思うと怖い。
そもそも今回コンタクトにしたのは前から使ってるメガネが似合わなくなったからだ。
髪を短くするようになったら、ふちのでかいセルロイドメガネが似合わなくなったのだが、
だったらメガネを替えたほうが安上がりな気が。
ということで西口のさくらやメガネ館を覗いたら、カルバンクラインのメガネの
とても素敵なの発見。
よく見たらジルボーもメガネ出してて驚いた。
まあ、なんにせよ来月以降だな。
出費が激しくてまいっちんぐ。
_ 地震
風呂上りでパンツいっちょでくつろいでいたところにぐらり。
「あれ?揺れてる?
僕が眩暈起こしてるんじゃないよな?」
と思って明かりの紐を見て確認。
やっぱり揺れてた。
地震だー
でも僕パンツ一丁。
そこで悩んだ。
まず、なんとしても避けたいのはパンツ一丁で生き埋め。
ではどれから着るべきか。
ズボンだと上半身裸で生き埋めになり、セクシーと言えないでもないが
やはり上半身裸というのは体温の体温の流出も激しそうだ。
しかしまずTシャツを着るとなると毛脛を丸出しにして生き埋めということになり、
実に絵的にいけてない。
どっちを選ぶべきなんだ俺はっ、と考えながらビール飲んでました。
_ もちっと考えた
今回はパンツこそははいていたが、それすら無かった場合はどうするべきか。
仮に家が崩れるまで10秒あって一着だけ着られるとしたら、人としてパンツははきたいが
衣服の機能としては足りなさ過ぎる。
Tシャツに下半身まっぱは間抜けすぎる。
仮に手元にコートがあったら保温性という意味では最強だが、全裸コートは露出狂のユニフォームだ。
どうしよう(くだらねえこと考えてないで仕事しろよ)。

_ yohei [バーベキューの写真みたい。みれないかな。]
_ Shunji [家帰ったらアップロードするんでちょっと待ってろい。]