2006-02-01から1ヶ月間の記事一覧

表示中のページをブックマークしたユーザのブックマーク一覧を表示するブックマークレット

「XML を JSON に変換するサービス」と「はてなブックマーク」を使って、表示中のページと関連するかもしれないページを表示するブックマークレットを作ってみました。このブックマークレットを使うと、表示中のページをブックマークしたユーザの中から一人…

RSSリーダ・サービスが更新チェックするフィードを選択するアルゴリズム(修正版)

先日、はてなは理系の会社? - higepon blogのエントリに触発されて、RSSリーダ・サービスが更新チェックするフィードを選択する戦略を考えた。(更新をチェックするRSSフィードの賢い選択方法 - llameradaの日記)一応の結果を得たものも、先日の計算で求め…

任意のコマンドをreadline化するRubyスクリプト

telnetなどのreadlineが組み込まれていない環境で入力を間違えた場合、ctrl+BSで文字を削除する(bash環境)。これでも十分ではあるが、慣れ親しんだemacsキーバインドが使えた方が便利だと思った。そこで、任意のコマンドをreadline環境下で実行するスクリプ…

更新をチェックするRSSフィードの賢い選択方法

はてなは理系の会社? - higepon blogにRSSリーダ・サービスが、どのフィードをチェックするかについて議論している話が載っている。単純に考えれば、購読者数が多く、最後にチェックした時刻が古いフィードをチェックすれば良いように思える。この感覚は正…

Rubyでメソッドの上書きを禁止する方法

Rubyを採用しない理由でRubyにメソッドの上書きを禁止する構文を導入したらどうかという提案があった。上書きを禁止したい理由はもっともだと思う。ただ、わざわざ構文を用意しなくとも、method_addedメソッドを利用すれば上書きを禁止できるのではと思った…

AdSenseへの技術的な参入障壁はそんなに高くない

AdSenseを真似するのは、技術的にはそんなに大変じゃないと思う。AdSenseを実現するのに必要な技術要素を考えてみたが、次の3つの技術が必要だと思う。 ページのキーワード抽出技術 キーワードと広告のマッチング技術 無効クリックのフィルタリング技術 まず…

GoogleのMapReduceはとても便利な技術

GoogleのMapReduceはとても便利な技術である(使えないけど)。特に、ある単語(例えばGoogle)が出現した全てのテキスト・ファイル名を抜き出す際に便利だ。このタスクは、ファイル数が1万ならば簡単に解ける。ワン・ライナーで十分である。例えば、Rubyな…

Rubyでモナドの練習メモ

Haskellに登場するらしいモナドを少し勉強してみる。よくわからないが、試しにMaybeモナドをRubyで書いてみた。どこか間違えていると思うが、コードは下記。 class Maybe def Maybe.wrap( value ) Maybe.new(value) end attr_accessor :value def initialize…