For more than two years, I have been using Firefox. And Greasemonkey. Then, last week, came Google Chrome. It was at the moment I tried the new browser that I suddenly noticed I could no more live without userscripts (especially, AutoPagerize). So I started looking into the source code of Google Chrome, and found out a way to implement a userscript runtime. And that's Greasemetal. It is now availa
date 2007-06-01 17:29:44 category ExtensionJavaScript permlink here comment 0 trackback 0 FirefoxやThunderbirdの拡張を作る際に、場合によっては非同期処理が入ったりします。 XPCOMではそのような場面でobserverが簡単に仕込める仕組みとして、nsIObserverServiceと言うインターフェ−スがあるので、今回はその使い方についてご紹介します。 ObserverServiceの概要 そもそもnsIObserverServiceには下記のようなメソッドが定義されています。 addObserver() removeObserver() notifyObservers() enumerateObservers() 以下簡単にそれぞれについて触れてみます。 addObserver,
Google Social Graph API 基本に戻って「Googleのウェブ検索」を説明するなら、ウェブにあるページとページのリンク関係を大量に集めて、単語を入れたら関連するページを返す、ということになるだろう。 今日新しく発表されたGoogle Social Graph APIは、リンクの中でも特に「サイトと人、人と人の関係」が書かれたリンクを収集して検索できるようにしたAPIだ。 APIを使ったサンプルがあるのでこれを使ってみる。My Connectionsというサンプルでは、ブログや自分のプロフィールが載ったページのURLを入れる(複数あれば改行で区切る)と、過去にブログやSNSなどで自分が登録した情報から、関係のあるウェブサイトのURLや、知人のページを取得して表示してくれる。 人間関係やサイト間の関係はどこから取っているのか、というと、これはXFNやFOAFといったmicr
via del.icio.us/popular Coding Horrorブログの記事Has CAPTCHA Been “Broken”?(CAPTCHAは破られたか?)では、CAPTCHAの解読ツールに値段をつけて売っている中国の業者の価格表を紹介していて、これが面白い。 CAPTCHA用の文字列画像を作るときは、文字を画像化したり、色をつけたり、線を引いたり、無関係な点や図形を足したり、湾曲させたり、と、いろいろな加工で「人には読めるけど機械には読めない」ように作るわけだが、この価格表では、単純なCAPTCHAで彼らの販売するツールで読み取れる可能性が高いものほど値段が安くなっているし、彼らのツールでは読み取れてない場合も多いような難しいものについては、ツールの値段も高くなっている。 この価格表で図らずも、いろいろな大手サイト(主に英語と中国語でのサイト)が使っているCAPTCHA図形
Shibuya Perl Mongersテクニカルトーク#8 で発表した「続イメージファイト」の資料を SlideShare で公開しました。 Shibuya.pm#8 続イメージファイト - HTML 2.0 New Browser Detection JavaScriptやCSS Hacksを一切使わずにHTMLでブラウザを判別するハックの紹介です。 HTML 2.0 - Browser detection [3] ブラウザ判別のデモのページにアクセスすると、使っているブラウザの画像が表示されます。 このimgタグのsrc属性はfirefox2.0、firefox1.5、その他のGeckoエンジンを搭載したブラウザ、Safari2、Safari3、Opera、ie、w3m、lynxなどのブラウザの判別に対応しています。 テキストブラウザの判別
via Yahoo! News ウェブサイトの視聴率測定最大手のニールセン/ネットレイティングスが、ページビューによるウェブサイトのランクづけをついに廃止(非公式化)し、サイト滞留時間でのランキングに切り替えるという発表を明日(米国時間火曜日)するらしいというニュースがきた。 Ajaxによるユーザビリティ向上などで、Yahooなどはかえってページビューの減少が起こっていたり、YouTubeなどの動画サイトではユーザが動画をじっと見ているので実際の利用時間に比べてページビューが少なかったり、何かするたびに別のページを開かせるMySpaceが、ページビューでは実際よりも人気があるように見えてしまっていたというような問題が出ていたが、これらの問題を解消するのが目的らしいということだ。 サイト滞留時間でランキングをつけなおすと、PVでトップだったYahooが2位に後退、トップはPVでは6位だったA
Javascript で diff というのはいくつか試された例はあるようですが、まだこれといった決定打は出ていない様子です。 実は diff は見た目ほど軽い処理ではないので、Javascript にやらせるのはこれが結構大変…… diff の計算量は、おおざっぱに言うと比較対象の要素数の二乗に比例し(実際にはそれより小さくすることができるのですが、まあ話のイメージとして)、かつメモリを大量に消費するので、バッチ的な処理に最適化されていない Javascript にはどうしても荷が重いものとなってしまいます。 比較対象の要素数を減らせば当然計算量は減りますが、行単位で比較してもあまり嬉しくない(わざわざ Javascript で処理するということは自然文が対象と思って良いでしょう)。最小の文字単位だとギブアップ。 ということは形態素解析で分かち書きして、単語単位で diff するのが J
先日金床さんに教えてもらったOperaで非同期並列JSONPを実行させる方法を実際に試してみたら意外とすんなり動いてしまったので報告します。 最速インターフェース研究会 :: OperaでJSONPを非同期リクエストするより JSONP が Opera だと非同期処理できない http://d.hatena.ne.jp/secondlife/20060906/1157515075 に書かれているとおりOperaだとscript要素を足した瞬間にJavaScriptの実行が止まって、ロード完了まで後続のスクリプトが実行されなくなります。 サンプルコード 改善前(普通のJSONP) Operaはスクリプトを追加するとタイマーが止まる(サンプルページ) http://la.ma.la/misc/js/opera_jsonp_test.html function test(){ var s = d
reCAPTCHA という新サービスはすごい。その構想力には感動させられた。 念のためにCAPTCHA(キャプチャ)について説明しておくと、スパムプログラム(bot)と人間のユーザを見分けるための簡単な(しかし機械にとっ […] reCAPTCHA という新サービスはすごい。その構想力には感動させられた。 念のためにCAPTCHA(キャプチャ)について説明しておくと、スパムプログラム(bot)と人間のユーザを見分けるための簡単な(しかし機械にとっては難しい)クイズのことだ。ある程度ウェブを使っている人なら、ネットサービスの登録時やコメントの書き込み時などに、読みにくく加工されたアルファベットを読まされたりした経験があるだろうと思う。 それらのサイトでは、あなたが人間にしかできないクイズを解いたのを見て、ユーザ登録やコメントの投稿を受け付けたりする仕組みになっているわけだ。文字を読む以外のC
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く