2005年 10月 15日

アクセス解析で得る解像度の悪夢

あれってブラウザの表示領域のサイズじゃないんだよね。最近は 1280x1024 な解像度のモニタが多いけど、最大化してみてるやつなんて何割もいない気がする (あくまで想像)。だからアクセス解析で見られる解像度の割合なんて殆どあてにならないし、ましてはそれを参考にして 1280x1024 に最適化しました☆なんてやっちゃだめだ。なんの意味もない。

俺の場合表示領域を 900x600 ぐらいにして見ていることが多い。サイドバーを常時表示しているし、背面にある IRC クライアントを見たいのでこんな感じに。横幅広すぎると読みにくいしね。だから 1280x1024 推奨とか書いちゃってるページはよく横スクロールを求められる。やれやれ

あ、そもそも勘違いの可能性が。

っていうか RSS で読んでるサイトのトピックに「最適化しました☆」ってのがあったからなんとなく書いてみたんだけど、RSS で読んでるんだから関係ないな。頭おかしい

Io and Ruby

最近 Ruby 関連を経由して Io language を見ることが多くてなんかうれしい。別に Io 使ってるわけじゃないんだけど、好きだから。

そうそう実はメガネ重要

ある日、爆弾が落ちてきて / 古橋秀之

とか友達に借りて読んでみた。

友達にはいろいろ借りまくっていて、この本についてだけ書くのは本に対して不平等だろ、とか思いつつ、まぁ、書くのにはそれなりの理由があるんじゃないかな、って誰かに聞いてみたりするんだけど、それは置いておくことにするよ。

某日記で時間系の話、と紹介さていて、しかも友達に聞いたら持っていて、なおかつ、「次会うとき貸すっていっただろ。このカスデコ野郎(意訳)」とか言われてそれなりに期待していたんだけど、期待していたわりに読んだ後気持ちいい (普通は期待ってのは裏切られるものなのだ) ので書くことにしたんだ、たぶんね。

「時間系」についてはあとがきで説明があるんだけど、実際それを感じるのは「むかし、爆弾がおちてきて」と「三時間目のまどか」ぐらいだ。他人の時間と、自分の時間との関係という点では全部だけど、それを言い出すと殆どの物語や小説は時間系になってしまうのでアレですね。

余計な設定を出さないで、ちゃんとぶっ飛んだ設定に必然性みたいなものを見出せるのがよかったと思う。こういう系の小説であんまりそういうの見かけない。

好きなのは後ろの三つ (出席番号0番・三時間目のまどか・むかし、爆弾がおちてきて) かな。とか思っていると、やっぱ俺はハッピーエンドが好きなのか?とか思っちゃうね。思ってるより俺は 単純なようだ。

2005年 10月 11日

サンダーボルト

今日見た夢。俺は女性だった。21歳。ちょっと前に書いたやつの効果?

  • サンダー
  • 小麦粉
  • 乳鉢
  • 日本地図
  • 自転車
  • 監視
  • 見つかる
  • 近道

www.bumpofchicken.com

少し前にまた少しデザインが変わってたのは知っていたのだけど、ふと今日になって「 HTML ソースがまともな気がする」と俺の近くを浮遊している妖精さんが言ってきたので見てみたら、なんか普通によかった。

accesskey やら title 属性を活用しているし、CSS を切ると必要以上の画像はなし。デザイン的なものはちゃんと CSS に分離されてた。定義リスト使ったほうがよさげな部分があったりするけど普通的には関係ないところだろうなぁ。だがしかし、CSS ファイルの書き方は汚かった(謎

PLAN DE SENS っていう会社がデザインしているようだけど、コーディングもやってるんだろうか。謎だ。同じ会社の別のサイトを見てみたけど DreamWeaver で作られたと思わしき似非 HTML 4.01 なサイトばっかりだし、そもそも会社自体のページは Flash のみだし……

割とよく見る一般サイトがこういう風になってると感動しちゃうね。Valid であるぐらいはほんとは当たり前なのにね。

マイナーアーティストのウェブサイトとか作りたいなぁ。なんかこうかっこいいじゃん。

Last.fm webservice

Audioscrobbler.net Web Services

気が付けばちゃんと profile 系のデータも提供されるように。でもさー、なんで Unix Time Stamp なんか出力するかなぁ。もったいない。ちょーもったいない。これのせいで直接 XSLT に入れても日付表示できん。いやできるの? 計算すればできるの? どんだけ面倒くさいの?

なんか微妙にズレてんなー。

どうでもいいけど Last.fm の tag 機能はいまいち使いづらいよっていつも思う。

あ、あと名前空間はつけて欲しいって思った。

YP-C1 ファーム入れ替え

Own your risk. の神ファーム (2.200) を入れてみる。

CD からアップデータをインスコ。update.txt に従い、本体の電池を抜いて、Play 押しながら USB 接続。新しいハードウェアのウィザードが起動するので Microsoft なんちゃらなドライバインスコ (インスコしていいかわからなくてハマった)。さらに Play 押しながらアップデータ起動してアップデート&フォーマット。

  • フォントは読みやすく。
  • 似非クロスフェード機能がなくなった。おかげで最初が切れなくなった。
  • USB はずしたあとになぜか起動されるのがなくなった。
  • SRS WOW - なんか気持ち悪い (ぬるぬるする(謎) のでたぶんあんまり使わない。

授業中は IRC に頭を使わないように

今日気付いたら後ろに教授が立ってたpq

2005年 10月 08日

可哀そうで仕方ない

いやほんとに。見てるこっちが切ない。

for の括弧の中での演算子

俺は演算子の前後にスペースを入れない書き方が大嫌いなんだけど、for の括弧の中では例外的にスペースを入れないようにしていた時期があった。なんとなくまとまりのあるほうがいいかなぁって思っていたから。

でも最近 Javascript で var をちゃんと使うようにしてからはその変則的なルールをやめた。

for (var i=0; i<100; i++)
alert("pgr");
for (var i = 0; i < 100; i++)
alert("pgr");

var の後にはスペースがもちろん必須なわけで、そのあとに続く部分でスペースを空けないと var だけが浮いてしまう感じに見える。気持ち悪いのでスペースをあけるようにした。var とかない C でもスペースをあける。ほとんど同じ文法なのにスペースあける場所が違うとかは論外だからね。

pre, code の色づけ

Color code のリファクタリング (というほどでもない)

やっぱり遅いので処理を見直し。なんだけどあんまりできそうなところがなかった。ちゃんとプログラム書ける人が見ればありそうだけど。

StringScanner 内 scan メソッドの無駄処理。作ったときから気になってた部分。scan メソッドはかなりの回数が実行されるので改善すればそれなりに効果があるはず……だけどあんまり変わらなかった。

// #改善前 2回正規表現マッチさせてる
var m = this.string.substring(this.pos).search(regexp);
if (m == 0) {
m = this.string.substring(this.pos).match(regexp);
// #改善後 一発で
var m = regexp.exec(this.string.substring(this.pos));
if (m && m.index == 0) {

ECMAScript の仕様を読み直してみたら Regexp.prototype.exec はマッチした位置をちゃんと設定してくれるらしい。はやく気付けと。

このスクリプトで有利なのは Opera8.5。実行途中でもちゃんとスクロールが効くし、上から順番に色が変わっていくのがわかる (遅いマシンでもストレスを感じない)。ただし速度は最悪。対して Firefox や IE は速度は Opera の数倍だけど実行中完全にブラウザごと固まる。ブラクラ候補。

かかった時間を pre や code の title 属性に入れてみることにした。[Time-Spend:66ms] とか出るよね? Perl がもっとも遅い (例のページの Perl の部分が Opera では10秒近くかかる)。なぜなら正規表現の数が多いから。同じクラスのやつを一つの表現にまとめれば早くなるだろうけど可読性が最悪中の最悪になるので見送り。

XML と Io はそこそこはやい。これは両方とも正規表現の数があんまりないから。XML はそれに加えて /[^<>\s]+/ を OTHER として読み飛ばしているのでループ回数が減ってる。

つーか、こんなことしなくても普通に正規表現だけかけて置き換えすればいいじゃんって話な気がしてきた。だめだこれ。