2010年4月1日木曜日
[Firefox] 用意周到か過剰コンプライアンスか
こりゃまた思い切ったことをしはりますな。getComputedStyle()以外にも visited なリンクをセレクタで取り出す方法は結構あるんで、虱潰しにやっていくしかありませんな。他のブラウザの挙動も併せて調べとかんといかんわけで、ちょっとうへぇな感じ。まぁ、W3Cの尻拭いは現場で何とかするという気概は見上げたものですが。
2010年3月30日火曜日
[CollegeHumor] 5大ブラウザを乗り物に例えると?
良く出来てますわコレw。あちこちでネタにされてるだけのことはありますな。こちらでは「何言っとんねん。add-on なしでも Firefox は充分いけとるんじゃ!表出んかいゴルァ」というマジ切れコメントや、それに対して「ネタにマジレスw」と煽ったりといった実に微笑ましい光景が見られます。
原文を訳すと、こんな感じでしょうかね
Firefox: 本体のバランスは良いのに、アホな付属品のせいでほとんど使い物にならない。ちなみに IE は落馬じゃなくて骨折だったようですね。予後不良にならなきゃいいんですが。
Safari: すごく実用的なんだが、品質に関しては信者が大げさに褒めたたえているだけ。
Opera: こいつを心底愛好してるヤツもいるが、はたから見ればアホ車でしかない。
Internet Explorer: 役立たずだが、気が向いたときにいたぶってやる相手としては良い。
Chrome: えらく速い。まぁ、それだけなんだけどね。
2010年3月27日土曜日
[DARING FIREBALL] 偉いさんの戦争
(原文: Generals’ War)
先週の、エスカレートしつつある Apple - Google 間の争いに関する記事において、私はいくつかの微妙な点について言及するのを忘れていた。
ひとつは、私が議論しているのはあからさまな敵意についてであり、単なる競争についてではないということだ。Google と Apple は、特に Android 対 iPhone という観点から見て、そしてもうじきやってくる Chrome OS 対 iPad という観点から見て、ライバル同士なのか?という疑問があるということについてはこれまでも見てきたとおりだ。もちろん彼らは競合している。それは良いことであり、資本主義社会における企業の一般的なあり方である。私の言いたいのは、そういった競合とは違う何か、もっと悪意に満ちた何かが進行していると言うことなのだ。あからさまな敵意。「ライバル」と「敵対者」の違いだ。
もうひとつ、私が言及を怠っていたのは、これは重要だと私は思っているんだが、この事態は全て経営陣および管理職上層部レベルにおいてのみ発生しているという点だ。技術者たち(両社の)は戦の準備をしているわけでもないし戦を楽しんでいるわけでもない。私には情報提供者が両社に居て(Google より Apple の方が多く、当然のことながら、他社はさておき Apple のこととなると Google の方が多くなる)、そのほぼ全てが技術者であり非「経営陣」なんだが、状況を考察するにあたって「異様」という言葉がずっと私の頭に浮かび続けている。Apple で行われ Google が出席する会議、もしくはその逆、において経営者達が「喧嘩上等」という敵意と怒りに満ちた発言をするという異様な状況のことだ。
あからさまな敵意というのは両社の技術者においてはあてはまらない。これはあくまでも異様なのだ。両社には確固たる、そして明白な文化の違いというものがある。Apple の技術者達は Google の作るソフトウェは醜い(役に立つし、きちんとしてるんだが醜い)と考える傾向があるし、Google の「オマエのデータを全部よこせ」的戦略に疑念を抱いている。Google の技術者達は Apple はウェブを理解してない、少なくともウェブをプラットフォームと捉えていないと見なしており、そんなのは古いと考え、そして App Store における Apple の専制的な管理体制に腹を立てている。だが全般的に見れば、両社の技術者達は似たり寄ったりなのだ。Google のサービスを利用している Apple の技術者も、Apple のコンピュータを使う Google の技術者も大勢いる。
両社ともに、例の Microsoft 的な「全世界がオレの敵」という姿勢、すなわち手をつけたからには単に成功を収めるだけではなく競争そのものを根絶するまでとことんやるというあの姿勢を社風として培ってはいない。
これは偉いさんの戦争でしかないのだ。Apple と Google の一般社員は戦争を期待してなどいないし、予期すらしていない。
一方、Google は Apple ほど一枚岩な会社ではない。1月の iPad 発表の数日後に Apple で行われた「タウンホール」ミーティングで Steve Jobs が Google を視野に入れて発したコメントは多くの注目を集めることになった。John C. Abell が Wired でレポートした、又聞きに基づく言い換えなんかは特にそうだった。Abell がレポートし、他の情報路の大半が取り上げたものではこうなっていた:
Google について: 我々は検索事業に参入しなかった、と Jobs は語った。奴らは電話事業に参入した。勘違いするな、奴らは iPhone を潰したがっているのだ。そうはさせん、と彼は語る。
私が Wired にリンクを張った後、タウンホールミーティングに出席していたとある情報提供者が私にこう語った:
彼が実際に言ったのは「Google のチームが我々を潰そうとしている」だった。企業全体がそうなのだと思わせるような言い方を彼は決してしていない。おおかた Android チーム限定だろう。
先週の記事の後、Apple にいる情報提供者が私にメールを寄越して、タウンホールミーティングにおける Jobs の発言は、Google には iPhone を潰そうとしている「とあるチーム」が存在するということを誇張して言っただけのことであり、Google 全体のことを言ったわけじゃないと何度も繰り返して語った。そうなのだ、Jobs はこの件についてムカついているように見えるが、その矛先は Google 全体ではなくむしろ Android という特定のターゲットに向いているというのは明白なのだ。
まぁ、そういった発言自体が事態を醜悪なものにしているのかもしれんが。訳者コメント: この記事のすぐ後に、Jobs と Schmidt が仲良く(?)コーヒーを飲んでいるツーショットを載せた GIZMODO の記事を取り上げて "How about that." と言うあたり、ぬかりないですなぁホント。まぁ「火事と喧嘩は IT の華」ですし「火のないところに煙を立てる」のは、メディアが紙であれビットであれ、あらゆるマスゴミの得意とするところであり飯のタネですから、しょうがないっちゃしょうがないんですけどね。
2010年3月24日水曜日
[Google] mitigations → 896358
で?何なの 896358 って?ということでググッてみると、どうやら Microsoft のセキュリティアップデートの番号らしい。うーむ、これが絶対計算の威力ってやつですかw
まぁ、この事実だけ取り上げて「絶対計算ツカエネーw」と早合点するのは簡単なんですが、考えてみりゃ我々の意識・思考というものだって似たようなシステムなんですぜ。「意味」なんて所詮恣意的なものなんだと割りきり、統計や尤度という、意味を切り離した視点からアプローチするという手法は侮れませんぜ。集合痴にさえ惑わされなければ良い線いくと思いますがね。
[メモ] Remember Virtual Boy.
滅びのにおいがプンプンするぜッーーーッ!!「みんな」がやってるからオレも、ってのは一番頭の悪いやり方でしてね。そのへん承知の上で敢えて逆張りしてみました、という事であればスゲーんですが。
ていうか、現実が立体的に見えるってのも脳が作り出した幻なんだけどねー。だから、神経伝達物質・脳内麻薬を使うシステムのほうがよっぽど現実的だと思うんですわ。ティモシー・リアリーがLSDにハマったのは伊達や酔狂じゃないわけでしてね。
2010年3月23日火曜日
[Google] 撤退戦こそ重要
この作戦をダンケルク撤退戦のように手際よく進められるかどうかに Google の中国戦略が掛かっています。Google Hong Kong が、ダイナモ作戦遂行のためにカレーで最後まで踏ん張ったイギリス軍のように見えてきますな。反転攻勢への足がかりとなったのはレジスタンスだったわけですが、同じことが中国でも起きるのでしょう。楽しみです。
中国に限らずインターネット上でどんどん保護主義が進むなか「インターネットの興廃この一戦にあり」とセルゲイがZ旗を揚げた感じで、なんかわくわくして来ましたよ。37signals でも Jamis がクラウゼヴィッツをネタにしているんですが、これもまたシンクロニシティってやつですかね。
[37signals] 「〜の場合を考えてみろよ」には気をつけよう
我々はユーザ管理画面の設計を要件として含む幾つかの新しい案件に取り組んでいる。目下、ちょっとした研究開発プロジェクトが進行中といったところなんだが、さほど現実離れした代物でもない。
我々は UI を設計し、その見栄えと動作は好ましいものであったが、その時点で、我々は疑念を持ち始めた。こんなのが存在する理由は?こいつをこう動かす理由は?そうするよう誰かさんが望み欲する理由は?
ある特定のUI構成要素(こいつはデザインのキモだった)について疑念を持った時にその理由がわかった。「誰かがそう望んだ場合のことを考えてみろよ」というのがこいつを取り除く障害になっていたのだ。危険を知らせる赤旗は、この時すでに上がっていたわけだ。
「〜の場合を考えてみろよ」というのはいつだって危険信号だ。想像はその正しさを証明してくれるものなんかじゃないなどと言うつもりはない。いったんペースを落とし、距離をおいて考え、現実に立ち返れ、今すぐに、と言いたいのだ。
どんなシナリオだって想像の上では成り立つ。考えようとすればどんな突飛なユースケースだって考えつく。でも、それは大多数の人々が「本当に」必要とするものなのか?そのフィーチャーを支えているのは堅固な基盤か、それともふわふわ浮かぶおとぎの国か?
こうした障害物にぶつかった場合、我々は大概「やめとこう」という決定で終わる。もしそれが現実の問題になったとしても、そのフィーチャーは後で追加出来るんだし、その時が来るまでは、我々は想像を弄んでいるに過ぎないということになるからね。取っ掛かりの時点では少しでも身軽にしといた方が良い。本当に必要なものだったら、後々湧いて出てくるものだよ。
訳者コメント:
いわゆる feature creep ですな。気を利かすというのも善し悪しで、そのお陰でてんこもりになった実装アイテムリストを前にして途方に暮れるというのはよくある話です。書かんでも良い UML 書いたりとかね。
JavaScript が Java や c++ に比べて書きやすいというのは、Java や c++ がクラス設計という「気を利かす」フェーズを重視せざるを得ないのに対し、JavaScript は後付でインスタンスなり prototype なりをにょきにょきと伸ばしていけるという点が理由の一つとしてあるのでしょう。完先の Java、アリアリの JavaScript といったところでしょうか。実際に必要になるまでは手を付けるなというルールは作業量削減の第一歩ですからね。
2010年3月16日火曜日
[Google] NEXUS という商標は既に他社に取られてましたとさ
P. K. ディックの娘さんに怒られたというレベルの話じゃないので相当頭抱えてるでしょうね。それにしても Google 法務の脇の甘さは常識を遥かに上回ってますな。もう「オトナ」な会社なんでしょ? いつまでもイケイケじゃ駄目ですよ。こんなこともやってるようですし、どう考えても、自由と無責任を履き違えているとしか思えませんね。
2010年3月7日日曜日
[Programming] Chrome Extension は福袋的にした方が良い?
var l = document.querySelectorAll("a");
for (var i = 0; i < l.length; i++) {
if (!l[i].target) {
l[i].setAttribute("target", "_blank");
}
}
だけという、実にあっさりしたもの。御存知の通りChromeでは各タブおよび拡張機能ごとにプロセスが割り当てられるわけですが、どれくらいメモリ消費してるのかなと思いアクティビティモニタを見たところ
ということで、えらくメモリ食うんだなぁとびっくりいたしました。
確かに Firefox でも OOPP を初めとするプロセス分離作業が進められているわけで、各プロセス毎に分厚い土台を準備しなきゃならなくなるというのも時代の流れなのでしょう。
この驚きはあの時の驚きに似てます。C から C++ に移行した時、バイナリの肥大化にのけぞった時の驚きです。ただの Hello World が iostream にしただけで何でこんなにでかくなるんだよwというやつです。C は高級言語じゃなくて超高級マクロアセンブラだという説を心底納得出来たのもこの時でした。まぁ、libc からこのかた分厚い土台に支えられてきた人間がいまさらメモリ効率がどうこうなんて言えた義理じゃねぇだろ、というのも重々承知ではあるんですけどね。
で、こういった状況を鑑みまするに、今後は単機能な拡張機能を個別に数多く入れるという考え方よりも、色々な機能を詰め込んだ多機能な拡張機能を一つだけ入れるという考え方の方がメモリ効率的に良いということになります。「福袋的」というのはそういうことです。要るか要らないかは置いといて、とりあえず色々詰め込んどけという手法です。
でもやっぱりこの手法には違和感を感じざるを得ないんですわ。小人さんがわらわらと群がり手を取り合って仕事するというファンタジー的・明治合体チョコボール的世界、すなわち、コマンドをパイプでちまちまとつないでいく世界を知っている人間からしてみれば、上で述べたような福袋的アーキテクチャは「何このゴリアテw」「かっこ悪〜」となるんじゃないでしょうか。
