2008-01-01から1年間の記事一覧

YouTubeから動画をダウンロードするescript

ついカッとなって,YouTubeから動画をダウンロードするescriptをErlangで書いてみた.後悔はしていない.Pythonで書こうと思ったら,HTTP HEADでのアクセスが面倒くさかったので,Erlangになった. Pythonのはyoutube-dl.pyというのがあるから,そっちを使え…

Erlangで正規表現メモ

1> {ok, MP} = re:compile("w.*d"). {ok,{re_pattern,0,0, <<69,82,67,80,53,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,119,0, 100,...>>}} 2> {match, [{Start, Len} | _]} = re:run("Hello world!", MP). {match,[{6,5}]} 3> lists:sublist("Hello world!", Start + …

似非科学批判は似非科学の信奉者を増加させるのに寄与している可能性がある

エセ科学批判が科学教と言われてしまうワケ http://anond.hatelabo.jp/20081118173958 続 なぜエセ科学批判が科学教といわれてしまうのか http://anond.hatelabo.jp/20081119001743 以上を読んだメモというか感想. コミットメントと一貫性の理論では,人が…

MacにErlangの64bit版を入れる

OpenSSLの最新版をインストール $ curl -O http://www.openssl.org/source/openssl-0.9.8i.tar.gz $ tar xzfv openssl-0.9.8i.tar.gz $ cd openssl-0.9.8i $ ./Configure shared --openssldir=/usr/local darwin64-x86_64-cc $ make CC='gcc -m64' $ sudo ma…

MacでErlangをコンパイル

MacPortsのErlangにSMPがついてなかったので,ソースからコンパイルして入れてみる. $ culr -O http://www.erlang.org/download/otp_src_R12B-4.tar.gz $ tar xzfv otp_src_R12B-4.tar.gz $ cd otp_src_R12B-4 $ ./configure --enable-kernel-poll --enable…

Mnesiaで10万レコード

Mnesiaで10万レコードを入れてみたところ,29071912マイクロ秒 ≒ 29秒で挿入できた.Mnesia速い.8バイトバイナリと整数のValueを持つレコード10万件でファイルサイズは5M弱.レコードのサイズが10倍になっても,50M.detsの限界サイズが2GBまでだから,フラ…

couchDB遅い

性懲りもなくcouchDBを使い続けてみる. 8万ドキュメントの挿入にかかった時間は,3716009722マイクロ秒 ≒ 61分.100万ドキュメントならだいたい10時間以上はかかる計算になる. 一番最初のviewの構築は,ドキュメント全てを舐める(と考えられる)ので,や…

couchDB続き

いくらなんでも,ドキュメントを大量に入れただけでviewが見れなくなるのは無いだろうと思って,ユーザMLに質問してみたところ,httpのセッションがタイムアウトしてしまっているからで,viewの更新が終わるまでは,タイムアウトしないように接続しなければ…

couchDBを使ってみた

Erlangで書かれた分散指向?なDBであるcouchDB(http://incubator.apache.org/couchdb/)を使ってみた. couchDBについて簡単に説明しておくと,MySQLなどに代表されるリレーショナルなデータベースではなく,スキーマフリーで,ドキュメント指向でありかつ,…

GitHubを使い始めてみたメモ

SourceForgeのインターフェースが異常に使いにくくなってしまったので,他に安住の地を求めてたら,CodeReposとGitHubがよさげだったので,そのうちのGitHubを使うことにした. とりあえず,gitをインストール (Mac) $ sudo port install cogito git-core Gi…

AMD64上のUbuntuにErlangをソースから入れる

Erlangの最新版がまだaptに無かったのでソースから入れようとしたものの,うまく入らなかったので,適当にオプションを指定してやったら入った. まずは依存してるパッケージを入れる $ apt-get install openssl unixodbc-dev sun-java6-jdk libssl-dev conf…

C++ でURLEncode

C++でURLEncodeなプログラム無いか探していたけれど,boostのregexを使った巨大な奴とか,やたら凝ったやつしかなくて,もっとシンプルな奴が欲しいのに,それぐらい誰かのせておけよと思ったので,載せておく. #include <iostream> #include <string> #include <stdio.h> std::string </stdio.h></string></iostream>…

Digg村にトラブルが発生したらしい

Diggのゆくえ http://sourceforge.jp/magazine/08/10/13/1118206 Diggのフロントページや,はてなのホッテントリなどは共有資源な訳で,テレビ局が共有資源を独占して偏った情報を垂れ流してるのと変わらないわけです.ですから,もしも今後,はてなブックマ…

特異値分解を用いたレコメンデーション

Recommender Systems 2007(http://recsys.acm.org/2007/)で発表された論文である,Bhaskar Mehta, Thomas Hofmann, and Wolfgang Nejdl, Robust Collaborative Filtering, In Proceedings of the 1st ACM Conference on Recommender Systems, ACM Press, Oct…

Slope One Predictors in Python

Slope One Predictors for Online Rating-Based Collaborative Filteringを読んだメモ1 (http://d.hatena.ne.jp/ytakano/20081002/1222970856)の続きで,D. Lemire and A. Maclachlan, "Slope One Predictors for Online Rating-Based Collaborative Filteri…

Item based collaborative filtering

D. Lemire and A. Maclachlan, "Slope One Predictors for Online Rating-Based Collaborative Filtering", In SIAM Data Mining (SDM'05), Newport Beach, California, April 21-23, 2005.を読んだメモです. この論文では,よりよいrecommendationアルゴリ…

Firefoxのコードを追いかけてたけれど時間が無くて放置したままのを放出

ちょっと前にFirefox 3のコードを追いかけていて,The life of an HTML HTTP requestの新しいバージョンを作ろうかと思っていたけれど,実はこんな事している場合じゃないという事に気がついて,放置したままのがあるので,放出してみます.URLはhttp://www.…

ウェブ彼というサービスが日本で最近ホットなソーシャルサイトらしい

Japanese Girl Sensation: Virtual Boyfriends (Webkare) http://www.techcrunch.com/2008/09/20/webkare-a-girls-only-combination-of-social-network-and-dating-game-from-japan/ 9月10日にオープンしてから5日で10,000ユーザを獲得して,350万ものページ…

Kademliaについて細かい話

id:cooldaemonさんがErlangでKademlia実装をおこなったようで(http://d.hatena.ne.jp/cooldaemon/20080922/1222050692),ちょっとソースを眺めてみました.いくつかコメントがあるため,ブログのコメント欄に書こうと思ったのですが,結構長くなるので,こ…

メモ:Bashでcd時に自動pushdする

zshを使っていたときは,setopt autopushdとかやっておけば,cd時に勝手にpushdしてくれて便利だったけれど,最近はzshを入れずに標準で入っているbashを使うことが多くなってしまったので,cd時にpushdするようにしてみた. 以下を,.bash_profileなり.bash…

Trust-Based Recommendation Systems: an Axiomatic Approachを読んだメモ

WWW 2008(http://www2008.org/)で発表された論文である,"Trust-Based Recommendation Systems: an Axiomatic Approach"を読んだメモです.この論文は公理に基づいて,Recommendationシステムの解析をしようというモノですが,いまいち分からなかったので,…

Characterizing Social Cascades in Flickrを読んだメモ

SIGCOMM 2008の併設ワークショップであるWOSN 2008(http://conferences.sigcomm.org/sigcomm/2008/workshops/wosn/program.php)で発表された論文,"Characterizing Social Cascades in Flickr", M. Cha, A. Misolve, B. Adams, K. P. Gummadiを読んだメモ…

PythonとErlangでのリスト内包表記

リストの要素全てに同じ処理を施したいときや,ある条件を満たす要素のみをリストから抽出したいときは,リスト内包表記が便利となります.これは,C++やJavaには無い表記方法なので,慣れていないと若干分かりづらいかも知れません. たとえば,リストの要…

Directed Scale-Free Graphsによるグラフの生成

Webリンクなどは有向グラフとよばれるグラフとなっており,リンクに向きがあります.Web用のソフトウェアを作成したとき,シミュレーション等を行うために疑似データを生成したくなりますが,"Directed scale-free graphs", B. Bollobas, C. Borgs and O. Ri…

Connecting Nearest Neighborモデルを用いたグラフの生成

Connecting Nearest Neighborモデルとは,スケールフリー性,クラスタ性,スモールワールド性を満たすソーシャルネットワーク的なグラフを生成するアルゴリズムの一つです.何かしらのシミュレーションなどに使えるのではないかと思います. アルゴリズムは…

Analysis of Social Voting Patterns on Diggを読んだメモ

SIGCOMM 2008の併設ワークショップである,WOSN 2008で発表された,"Analysis of Social Voting Patterns on Digg", Kristina Lerman, Aram Galstyan, (http://conferences.sigcomm.org/sigcomm/2008/workshops/wosn/program.php)を読んだメモです. この…

Zipf分布に従う乱数の生成方法

Zipf分布といえば,べき乗則でおなじみの分布です(http://en.wikipedia.org/wiki/Zipf%27s_law).一方,Zipf-MandelbrotはZipf分布を一般化したものだそうです(http://en.wikipedia.org/wiki/Zipf%E2%80%93Mandelbrot_law). Zipf-MandelbrotのPDFは f(x…

Pythonで一日後の時刻を取得する方法

Pythonを使って一日後の時刻を取得するには,以下のようにして行います. def get_tomorrow_date(): time.sleep(86400) return time.localtime()また,一日前の時刻を取得するには,以下のようにして行います. def yesterdays_date(): yesterday = time.loc…

iframe内のHTMLを動的に生成する

メモ元ネタ http://webos-goodies.jp/archives/51014876.html <html> <head> <script type="text/javascript"> function write2frame() { var iframe = document.createElement('IFRAME'); document.getElement…</head></html>

ミャンマーのサイクロンと募金と日本ユニセフ

中国で大地震が起きたり,ミャンマーで巨大なサイクロンが発生したりと天変地異が発生していますが,うちの大学ではつい先日,ミャンマーのサイクロン被害に対する募金を募っていました.その募金ですが,どうも日本ユニセフを通してミャンマー政府に渡すそ…