米Apple Computer,Inc.が,携帯型デジタル音楽プレーヤの開発を決めたのは,そんな最悪の時期だった。自社の屋台骨が揺らごうかという時に,全く経験のない分野に,相当な量の経営資源を割こうというのだ。わずか2人の社員が,2カ月間市場を調べただけで。
Apple社のギャンブルは,それだけではなかった。同じ年のクリスマスに商品を出荷するという。2人が調査を始めてから数えても,9カ月余りである。電子機器の分解調査を手掛け,「iPod」を解体したこともある米 Portelligent,Inc.のCEO,Dave Careyは,感心したそぶりでこう評した。「9カ月とは,随分アグレッシブなスケジュールだね」。
[21世紀のウォークマン(第3話)より引用]
勿論、実際に市場に受け入れられるまではかなりの時間が掛かっている訳だけれど、 始めてから最初のバージョンまで9ヶ月だったらしい……。 多くの事はこうやって進んで行くのだろうな。
黄昏大根日記経由。
ゲームシステムの紹介に始まり、作品背景からコミュニティの話まで経由して、 最後にシューティングの魅力を伝える素晴らしい紹介。
こういう文章が書けるようになりたいもんですね。
日記がexciteblogに移ったとかはさておき、 個人的には
背景が白くなった
事が印象的でした。いや分かっているんだ。暗い背景で色々やるのが辛いというのは。
rera氏のところにちょっと書いたけれど、アンテナで「リンクを全部開く」Bookmarklet と言うのを使っていた。単にこれだけの JavaScript なんだけど。
for (i=0; i < document.links.length; i++) { if (i >= 20) break; window.open(document.links[i]); }
「ええ?」とか思う通り、すでに見たサイトも片っ端から開いてしまうとか、 うっかり自分のアンテナでないページで押すとそれはもう目の当てられないことになるとか、 かなりどうしようもないものです。 そこで、もうアンテナ専用で構わないからまともに使えるようにしよう…… と思ったところまでは良かった。ところが、一番何とかしたかった未読リンクだけ 開くと言うところでいきなり詰まりました。
リファレンスを漁ったり、DOMインスペクタでオブジェクトツリーを巡ったりしましたが それっぽいものが無い。そんな事はなさそうなんですが、どうにも見つからない。 結局諦めて A 要素では使いそうもない CSS プロパティをフラグ代わりにすることにしました。 と言うわけで一応完成したのがアンテナの右上の方にあるやつです。が……押すと本当に window.open() で 20 件開くので注意! 動作を見てみたければ横の [+] を押して、開く件数を少なくしてからやってみてください。
もし自分のアンテナに適用してみたい奇特な人がいたら
<script language="JavaScript" src="http://sugi.nemui.org/a/openall.js" charset="utf-8"> </script>
とかを body の適当なところに埋め込むと使えるようになります。 しかし、とりあえず出来たのは良いんだけど…… 未読/既読のまともな判定方法というのは本当にないのか?
まあ……こうなるのだろうなぁ。 しかし、許可を受けることが不可能なのにテンプレートを送ってくるのか……。
shell で mv とかをまとめてやりたい時は for を使ってやる訳だけれど、 bash だと一度フォアグラウンドで実行してしまったループを中断することは出来ないようだ? この間これを知らずにミスしそうになったので、一応メモ。
例えば1秒ごとに echo するループを回しておいて……
sugi@tempest:~$ while :; do date; sleep 1; done Tue Oct 11 07:03:15 JST 2005 Tue Oct 11 07:03:16 JST 2005 Tue Oct 11 07:03:17 JST 2005
これを Ctrl-z で止める。
[1]+ Stopped sleep 1 sugi@tempest:~$
と。勘のいい人ならここで気づくものなのかもしれない。 ジョブを表示してみると……
sugi@tempest:~$ jobs [1]+ Stopped sleep 1 sugi@tempest:~$
sleep が出てくる。 そのときは、そりゃ sleep のところで止まっているだろなーとしか思わなかったのだけど、 ところが裏で続き走らせようと bg を打つと……
sugi@tempest:~$ bg [1]+ sleep 1 & sugi@tempest:~$ [1]+ Done sleep 1 sugi@tempest:~$
いきなり終わってしまう。もうジョブも残っていない。
sugi@tempest:~$ jobs sugi@tempest:~$
この動作に慣れすぎてしまったのが敗因か。
sugi@tempest:~% while :; do date; sleep 1; done Tue Oct 11 07:07:29 JST 2005 Tue Oct 11 07:07:30 JST 2005 Tue Oct 11 07:07:31 JST 2005 zsh: 2264 suspended while :; do; date; sleep 1; done sugi@tempest:~%
Ctrl-z を打ったところ。ループ全体が表示されている。
sugi@tempest:~% jobs [3] + suspended while :; do; date; sleep 1; done sugi@tempest:~%
ジョブのリストにもwhileが出てくる。
sugi@tempest:~% fg [3] - continued while :; do; date; sleep 1; done Tue Oct 11 07:08:03 JST 2005 Tue Oct 11 07:08:04 JST 2005 Tue Oct 11 07:08:05 JST 2005
そして全体を再開できる。
最初から
while :; do date; sleep 1; done&
とすれば全体をバックグラウンドに送ることは出来る。
前に いろ んな とこ にも来てたコメント spam bot がまた到来。
それ自体は(嫌だけど)どうと言うことはないんだけれど、 今回のこの bot、どうもバグがある様で、コメントを POST したあと サーバからの返答を 1byte も読まない。 かといって接続を切るわけでもない。
勿論サーバの方でそのうちタイムアウトはするんだけど、 これを結構な数のドローンからすごい勢いでやるから あっという間に MaxClient を使い切って事実上DoS状態に。 うーん迷惑すぎる。
とりあえずターゲットになっていたところだけ UserAgent 判定で deny して凌いでおいたけど、 そのうち UA 変えてくるだろうなぁ……。