タグ

ブックマーク / la.ma.la (22)

  • 最速インターフェース研究会 :: オープンソース版のFastladderが公開されました

    まだまだバグとか色々残ってるかとは思いますが、リリースされました。 http://fastladder.org/ http://blog.livedoor.jp/staff_reader/archives/51181618.html ニュース記事 http://www.itmedia.co.jp/news/articles/0802/07/news032.html http://internet.watch.impress.co.jp/cda/news/2008/02/07/18390.html http://itpro.nikkeibp.co.jp/article/NEWS/20080207/293305/ 元々Railsで動いてたわけではなくて、個人でもインストールしやすいようにコンパクトに書き直したものです。 稼働してるサービスは、他のライブドアのサービスと同様に(良く知られている通

    hi-rocks
    hi-rocks 2008/02/08
    なんとまあ。乙でした。
  • 最速インターフェース研究会 :: ハッシュキーの存在チェックを超高速に省メモリで行う方法

    リンク先まとめて登録できる機能が付きました。 http://blog.livedoor.jp/staff_reader/archives/51034585.html かとゆー家断絶からリンク張られてるサイトをまとめて登録とか http://reader.livedoor.com/subscribe/?url=http%3A%2F%2Fwww6.ocn.ne.jp%2F~katoyuu%2F&extract=on スタートマック体験モニタのブログをまとめて登録とか http://reader.livedoor.com/subscribe/?url=http%3A%2F%2Fwww.apple.com%2Fjp%2Farticles%2Fstartmac_monitor_2%2Fwinners.html&extract=on できます。 リンク先の全件にAuto Discoveryをかけると、

    hi-rocks
    hi-rocks 2007/06/08
    Bloom::Filter
  • 最速インターフェース研究会 :: livedoor Readerの自動スクロール機能

    3ヶ月ぐらい前に実装したんだけど、誰も言及してないので書いておきます。livedoor Readerの自動スクロール機能はここにあります。 - ダブルクリックして押しっぱなしにすると自動スクロールになります。 - ダブルクリックの速度で、自動スクロールの速度が変化します。 - 右クリックで逆スクロールします(Opera以外) こういう実験的な機能は試しに実装してみて、親しい人の反応を見てみたりするのだけど、「その場所どうやって表示するの?」と、ことごとく言われた。

  • 最速インターフェース研究会 :: 遅延評価を使ってSjaxをAjaxに変換する方法

    継続を使ってSjaxをAjaxに簡単に変換する方法 http://d.hatena.ne.jp/llamerada/20070220/1171984586 を見て。こんなのはどうだろう。 ユーザーからの入力や、非同期のHTTPリクエストなんかを、具体化されてないオブジェクトとして捉えて、それらを受け取った関数側が遅延オブジェクトを具体化するためのリクエストを投げて再試行する。ネストが深くならないですむ、同期処理で書く場合との変更点が少ない、あるいは完全に差異を無くすことができる。 alert(args)のコメントを外せば、引数が具体化されていく様子が分かるはず。 Function.prototype.receive_lazy = function(){ var orig = this; return function(){ var thisObj = this; var me = argu

  • 最速インターフェース研究会 :: Functionコンストラクタを使ってJavaScriptネイティブじゃない関数をラッピングする方法

    ExternalInterface.addCallback で定義された関数は apply できない http://d.hatena.ne.jp/nitoyon/20070214/p1 っていう記事に書いてあるコードを手直し。Flashをいじってないんで、上手く動くかどうかよくわかんないですが、こんな感じでいけると思います。 function applySwf(swf, method, args){ if(swf && typeof swf[method] == "function"){ var params = []; for(var i=0;i<args.length;i++) params[i] = "_"+i; Function( params.join(','), "this("+params.join(',')+")" ).apply(swf[method], args); }

  • フィードリーダーの脆弱性まわりのこと

    最近、FreshReaderに脆弱性があったということで、いくつか調べて直したり、赤松さんと連絡取り合ったり、それからはてな使ってないのにユーザー様とか書かれて不愉快な気分になったりしてたんですが。 この記事はひどすぎると思う。 フレッシュリーダーの脆弱性に関連してSage++のこと そもそもの問題として「ローカルディスク上のHTMLファイルをブラウザで開くと超危険」です。XMLHttpRequestやIFRAMEでローカルファイルの内容を読み取れるからです。Sageに脆弱性があるということは、あらゆる個人情報の漏洩につながります。「開発者の個人情報を晒すリスクが云々」というのは、個人的には分からなくもないですが、ユーザーの個人情報を危険に晒していることを認識すべきです。 開発者人が過去に書いているので、危険性の大きさは十分に認識できているはずです。「脆弱性がある」と公表してしまった時点

  • 最速インターフェース研究会 :: ウェブ型のRSSリーダーのシェアを調べてみた

    このブログの2007年1月15日から2007年1月21日までのログを集計してみた。はじめに断っておくと、あくまで「このブログに対するアクセス」の集計結果であってフィードリーダーのシェア統計としては全く信頼できない。イギリス人に母国語を訊いたりインド人に主を訊いたりするぐらい予想通りの結果だ。 はじめに ウェブ型のRSSリーダーというのは乗り換えるにしろ使うのをやめるにしろ、購読リストをスッカラカンにしてから辞めるという人はあまりいない。あるいは登録しているだけで全然読まれないというケースも良くある。なので、feedburnerのアクセス解析で表示されるような購読者数というのはあまり当てにならなかったりする。(Bloglines一強だったころは当てになった) というわけで、特定のRSSリーダーでのアクティブな購読者数を調べるには、記事文内の画像へのリファラで集計して実際にその記事が読まれ

    hi-rocks
    hi-rocks 2007/01/23
    「イギリス人に母国語を訊いたりインド人に主食を訊いたりするぐらい予想通りの結果」
  • 最速インターフェース研究会 :: そろそろライブドア事件について一言いっておくか

    今から1年前2006年1月16日はライブドアに強制捜査が入った日で、その日自分が何をしていたかというと社長面接を受けに行っていた。たかだか面接に大げさなもので、六木ヒルズの周辺には報道陣が詰めかけており、張り詰めた空気の中、何も知らずに六木ヒルズに突入すると、こんな状況ですいませんと茶菓子も出されずに真っ直ぐ家に帰された。全くひどい会社である。俺の面接と強制捜査とどっちが大事なのか、冷静に考えてみれば分かる話である。 (以下ノンフィクションに一部誇張を交えてお送りします) 強制捜査なんてものは言ってしまえば良くある話で、それに対して俺が面接を受けるとなると世紀に一度あるかないか惑星直列ぐらいの確率である。てっきり報道陣もそっちを取材しに来たのかと思ったらスルーである。全力スルーである。この手の事件に関するマスコミのスルー力ときたら大したもので、唯一かまってくれたのはスポニチだけだった。

    hi-rocks
    hi-rocks 2007/01/18
    中略
  • 最速インターフェース研究会 :: お気に入りをサイドバーに常時表示させてない人はどうしてるのか

    [Memo]ブラウザの「お気に入り」はテレビのリモコンなんじゃないか 第三十三回 最近,普通の人はWebブラウジングのとき常に「お気に入り」をサイドバーに表示してるらしいという話題がある. ■一般的なネットユーザーは常にお気に入りを(ブラウザ左側に)表示している これ。これどうなの?みんなそういう風にしてネットを見てるの?常に左側 [WWW][computer]ブラウザの思い出話 一般人は常に「お気に入り」を表示している!http://plaza.rakuten.co.jp/catfrog/diary/200701140026/http://b.hatena.ne.jp/entry/http://plaza.rakuten.co.jp/catfrog/diary/200701140026/らしいんですが、自分はもっぱらURL直打ちですね。どのブラウザでも使えるし。 「お気に入りをサイドバー

    hi-rocks
    hi-rocks 2007/01/16
    やっぱ直打ちメインかな。あとはQuicksilver。
  • 最速インターフェース研究会 :: ページレンダリングを妨げないdocument.writeの実装

    とてもシンプルに自分自身が属する script 要素を取得 http://d.hatena.ne.jp/amachang/20061201/1164986067 document.writeをDOM仕様にする http://nyarla.net/blog/javascript-tips1 あたりに着想を受けて、作ってみました。 http://la.ma.la/misc/js/lazy_writer/ 特定のscript src内のdocument.writeをピンポイントに置き換えることができます。 制限事項としては、document.writeを使ってscriptタグを生成するようなコードの場合、IEではinnerHTMLにscriptを書いても実行されないという仕様があるので実行されません。その点を除けば、IFRAMEをdocument.writeで挿入するような、良くある広告系のdo

    hi-rocks
    hi-rocks 2006/12/06
  • 最速インターフェース研究会 :: Firefox2のポップアップブロックについて調べてみた

    なんかFirefox2ではポップアップブロックの挙動が変わってるというらしく、ポップアップを許可したサイトでもブロックされるというのでコメントをしたんだけど認識が違っていたようなので、気になってソースを読んで調べてみたりしたので、わかったことをメモしておく。 Firefoxのポップアップブロックの挙動 - 許可サイトでなくても、完全に許可されるポップアップがある -- ボタンやイベント設定された要素の左クリック -- Enterキーか、スペースキーでボタンが押された場合(onclickが呼び出される操作) -- ユーザーの設定に関わらず許可される、30個だろうと開く --- これを防ぐのが「browser.tabs.maxOpenBeforeWarn」? - 許可サイトでなくても、個数限定付きで許可されるポップアップがある -- フォームの値変更なんかで開くポップアップ。 -- dom.p

    hi-rocks
    hi-rocks 2006/11/18
  • 最速インターフェース研究会 :: Firefox2.0に任意のRSSリーダーを追加する方法

    Firefox2でGoogle Reader をRSS reader として追加する方法 参考: 最速インターフェース研究会 :: Firefox2.0に任意のRSSリーダーを追加する方法 Adding feed readers to Firefox - MDC bookmarkletから追加するという手もあるのだけれど、それだと複数のfeedを提供しているペ

  • 最速インターフェース研究会 :: そろそろライブドア事件について一言いっとくか

    ライブドアの件で最速に一言いわせてもらう 最速インターフェース研究会 :: そろそろライブドア事件について一言いっとくか2月1日付けで株式会社ライブドアに就職しました。 最速な人が来た。 - にぽたん研究所 弊社に、最速インターフェース研究会の片栗 X こと mala らんが join しました。 おめでとうございます! 思えば(検閲されました。)で、(特捜部に消されました)とかで(Z部さんからクレームがきました)ホルモンカワユスだったりしたわけですが、実にめでたいです。 そして(id:jnaoyaに怒られました)ですよね? じゃなーい! せっかくライブドア入りたい!をわがまま言って作ってもらったのに、ちっとも活用されていないじゃないですか! はてな入りたい!とかSixApart入りたい! (その後)とか活用されまくっているというのに!!!! ひどいひどいひどい! さっきはてなダイアリー市

    hi-rocks
    hi-rocks 2006/02/01
    やるね
  • 最速インターフェース研究会 :: 全てのWeb開発者必見:fluxiom

    fluxiomである。 http://www.fluxiom.com/ fluxiomはRuby on Railsで作られた、ソーシャルとタギングを備えたオンラインファイラーというようなものらしい。まだサービス開始していないが、デモムービーが公開されている。 fluxiomを開発している会社はscript.aculo.usの開発元ということであるので、 当然「Rails + prototype.js + script.aculo.us」で作られている、ということになるのだろう。 と思ってみたら、開発者のBlogに追記されていた。「Ruby on Railsで作られていて、Flashは一切使っていない」ということである。 http://mir.aculo.us/articles/2005/11/24/fluxiom script.aculo.usは「web2.0 JavaScript」だそう

  • 最速インターフェース研究会 :: 実践JavaScriptリファクタリング、その2

    連載すんの? リファクタリングとか嘘で実は実践ビルトインオブジェクトハックなんだけど。 例題 配列 a = [3,5,4,2,1] から一番小さな値と、一番大きな値を取り出すにはどうすればいいか。 多分昔はこんな風に書いてたと思うんですよ。 a = [3,5,4,2,1]; for(i=0;i<a.length;i++){ if(i == 0){ min = a[0]; max = a[0]; } if(min > a[i]){min = a[i]} if(max < a[i]){max = a[i]} } 模範解答として、後先考えないやり方を提示しておく。 a = [3,5,4,2,1]; min = a.sort().shift();// 1 max = a.sort().pop(); // 5 短い。ただし、これをやるとaの内容は並べ替えられて最初と最後の要素が取り除かれる。 a /

    hi-rocks
    hi-rocks 2005/10/07
    連載きたねー。applyメソッドのとことか目からウロコな感じ。
  • 最速インターフェース研究会 :: 実践JavaScriptリファクタリング

    同じ事をやるにも、いろんな書き方があるわけでいかにして短くてわかりやすいコードを書くかというノウハウを紹介します。 例として"abcde"を80回繰り返した文字列を作るとして実際に自分のコーディングスタイルがどんな風に変化していったのか、という。 短くなるのは確かなんだけどわかりやすいかというと、人によるかもしれない。 グローバル関数を定義2年前なら、多分こういう具合だった。 //ふつうに関数として定義する function x(str,num){ var tmp = ""; for(var i=0;i<num;i++){ tmp += str; } return tmp; } x("abcde",80) Stringのメソッドとして定義1年前だとこんな感じ。 //Stringのメソッドとして定義する String.prototype.x = function(num){ var tmp

    hi-rocks
    hi-rocks 2005/10/06
    なーるほどねえ。「for文の初期化時にループ変数以外を宣言」ってのはオレもちょっと気になる
  • 最速インターフェース研究会 :: JavaScriptによるQRコード生成ライブラリ

    ってのを作りました。 http://la.ma.la/misc/qrcode/ ネタのつもりで作ってたんだけど意外と大変だった。というか時間かけすぎた。 なんの役に立つのかと言われたら何の役にも立たないと自信を持って言える。 RubyQRコード生成クラスからの移植です。ライセンスはオリジナルに準拠します。 http://www.swetake.com/qr/ QRコードの仕様とかアルゴリズムとかそういうのは全然わかりません。挙動が同じになるようにしてみただけです。 表示にはテーブルタグを使っています。画像オフでも表示できます。 動作テストには http://www.psytec.co.jp/docomo.html を使いました。 アーカイブにdatファイル同梱したのでファイルサイズが2MB超えてます。 ソースだけ見たい人は、これをどうぞ。当然これだけじゃ動かないけど。 http://la

    hi-rocks
    hi-rocks 2005/10/05
    スゴすぎ。。。実用性は全くないけどw
  • 最速インターフェース研究会 :: XSLエディタを作ってみた

    XSLをエディタで編集してはブラウザでプレビューなんてことを何千回とやっているので、なんか良さげなXSLエディタがあるなら使いたいんだけど探しても見つからないので作ってみた。 http://la.ma.la/misc/xsltedit/ 左にXSLを入れて右にXMLを入れて、XSLを編集しつつCtrl+EnterでXSLT変換。 Google AJAXSLTを使ってみました。というか同梱のサンプルのスタイルをちょっといじっただけ。なんかIE6で動かないというので、フォーラム見てちょこちょこ直して動くようにしました。次のバージョンで直るとかなんとか。 とりあえずそのまま圧縮したのを置いておきます。 http://la.ma.la/misc/xsltedit/xslt.zip ブラウザの機能で変換させたほうが速いんだろうけど、そんなに遅いわけでもない。ただ、文法的にエラーがあっても変換してくれ

    hi-rocks
    hi-rocks 2005/08/08
    JavaScriptでXSLTのエディタ
  • 日本語テキストをテーブルで表示する:高速化バージョン

    いやなブログ: 日語テキストをテーブルで表示するの高速化バージョン。 DOMでのHTML組み立ては非常に遅くてJavaScriptの配列で組み立ててから 一気にinnerHTMLに代入したほうが速い。特にIEの場合は差が顕著、5倍ぐらいは速いはず。 DocumentFragmentを使うという手もあるが、2倍程度にしか速くならなかった。 innerHTMLを使ったほうが良い、というわけではなくて時と場合によりけり。 innerHTMLとappendChildを組み合わせて使うと大体の場合最速。 こういうやつ tmp = document.createElement("div"); tmp.innerHTML = 複雑なHTML; body.appendChild(tmp); body.innerHTML += tmp.innerHTML は絶対に避ける。innerHTMLの読み書きは、ど

    hi-rocks
    hi-rocks 2005/07/07
    「innerHTMLとappendChildを組み合わせて使うと大体の場合最速」
  • 最速インターフェース研究会 :: XMLはメタデータというより生データとしての利用価値が高まりつつあり、AjaxによるUIの切り離しがそれを加速する

    全部まとめて色々書こうかと思ったのだけれど、どうにも上手くいかないので、少しずつ分割して書くことにする。 まず最初にこれなのだけれども http://johnvey.com/features/deliciousdirector/ これは何かというと「JavaScriptで書かれたdel.icio.us APIのクライアント」である。最初に全てのブックマークを受信して、その後のタグによる絞込みなんかは全てJavaScriptで行う、というものだ。 とりあえず、実際にこのデモを見るのが早いだろう。 http://johnvey.com/features/deliciousdirector/demo.html この方式では、ブックマークの件数が1万件を超えるようなケースになると破綻することがわかっている。 del.icio.usのAPIでは特定のタグを含むブックマークを取り寄せることも出来るので

    hi-rocks
    hi-rocks 2005/06/29
    データとメタデータの主従逆転。「XMLこそがメインのデータである」