« 2009年2月 | トップページ | 2009年5月 »

2009年3月

2009年3月20日 (金)

Flipの開封体験が素晴らしかった件(イメージ)

Flipってしってるでしょうか? 1万円もしないビデオカメラ機器です。そんなに機能はないけど、ボタンを押すだけで簡単にとれるという。YouTube時代のギークに大ウケらしいです。

昨日届いたので開けてみたら、なんと最初から電源が入っていて、開けた瞬間の自分のマヌケ顔を撮られてしまいました:

見ればわかるように、最初の蓋を開けたあたりで電源が入るようになっているよう。薄暗いところで開けたので顔ははっきりと移ってないけど、寝癖が見えてるような。

でも、こういう何気ない瞬間を撮れるってのはすごいなあ、開けた瞬間からFlipという機器の使い方を提示してくれているみたい。かちょいい。

というのは嘘です。世に「なんとかを開封しました!」動画はいっぱいあるので、「開封されちゃいました」って機器の方から撮った動画があるといいかな、と思って買ったばかりの Flipで遊んでみただけです。

もっとシナリオを練って、友達と談笑しているところで開けるとかにすれば音も色々拾えていいんじゃないでしょうか。

| | コメント (0) | トラックバック (0)

2009年3月17日 (火)

NaClのPaperのHackyさ

いまさら Googleの Native Clientpaperを読みました。

まあ、その技術についてはともかく、Hackyな雰囲気のする Paperだなあ、と。

自分も学問的なところから離れて長いのだけど、論文としてはいらない、 でも実装や運用的には面白いところが多すぎるように感じます。

例えば、3節では validator の object codeの大きさと内訳が出ています。 そんなこと、そこで数字を出して自慢しなくてもいいんじゃないかと思うんだけど。 他にも、どんなに既存のシステムに手を加える量が少なかったか、と 強調する部分がある。

なんとなく、これは研究精神というよりHack精神に通じるものがあるのです。 「こんなに簡単にでっちあげちゃったもんね」という、 単なるすごいものを作ったのとは違うジマンパワーを感じる。 コードゴルフとか、obfuscated c code contestとか始めちゃいそうな ちょっとねじ曲がったパワーです。

何のため、4節に書いてある「既存のアプリケーションを 簡単にNaClに移植できたよ」っていうのは研究としてまっとうな方向です。 そうでななくて、「NaCl自体をこんなに簡単につくったぜ」 っていうことです。

他にも、

  • x86 の segment registerにべったり依存したり
  • gccとかへの patchの少なさを自慢したり (3.6.1節)
  • debuggerとかの開発環境にちゃんと言及したり (3.6.2節)
あたりに Hack集を感じるのは俺の偏見でしょうか。

それはそれで Googleという会社がまだ hack魂のようなものを いっぱい持っていると感じさせて好感を持ちました。

しかしながらやっぱり以下の点が気になります:

  • 他の processor、特に ARMへの展開は考えてないのか? :
    やっぱり x86が嫌いで組み込みにきたものとしては気になります。 pointerの sandbox化で本質的に segmentationに依存してしまっている 以上難しそう。
  • outer sandboxは何のために必要なのか? :
    なんか inner sandboxと service runtimeだけで十分な securityは確保できる気がします。 なんで、outer sandboxなんていう service runtimeの system call を監視する仕組みを作ったんだろう。 service runtimeの実装を楽にするためなんでしょうか?
以上、何かご意見ある方がいらっしゃったらコメントでもいただけると幸いです。

| | コメント (1) | トラックバック (0)

2009年3月13日 (金)

Safariの accesskey removerを再発明する

Safariの編集キーと Wikipediaとかの accesskeyが衝突して困るという 経験は皆様お持ちですよね。 それなのに Safariには accesskeyを無効にする設定が見当たらない。 日本語変換をしようとして Ctrl+Jを押したりするとリンク元に飛んだりする。 検索も満足にできません。 まあ、Ctrl+Jで変換してる人は少ないでしょうが。

と言うわけで GreaseKit script でもって accesskey属性を取っ払えばいいんじゃ、 と思って挑戦してみたんですが、うまくいかない。

でも Google先生に聞いてみたらすでにやっている人がいました:

素晴らしいっす。頑張る必要なかったなああ。 removeAttributeを 使わずに属性を delete しようとしてたりしたのがいけなかったらしい。

とはいうものの、せっかくの苦労が悲しいので元の scriptを XPathを 使うようにして改造してみました。Sarari 3.2.1 で動作を確認してます。 使ってみたいかたは以下のリンクからどうぞ:

個人的にはかなりソースがすっきりしたと思います。 元の scriptでは cloneして replaceしてるんですが、なんでだろ。 いきなり removeAttributeでも動いてるけど。 昔の Safariだとうまく動かなかったりしたのかな。

| | コメント (1) | トラックバック (0)

« 2009年2月 | トップページ | 2009年5月 »