サーバ機にSSDを使うのは時期尚早

という話を聞いた ファイルシステムがSSDに対応していない、現在のファイルシステムはDiscで使うことを想定している。回転ディスクの場合、円盤の内側の方が速度が速いため、ファイルシステムは円盤のなるべく内側を使おうとする傾向がある。しかし、SSDの場…

携帯のSSL証明書

今までは ベリサインのを使うのが普通だっただが、RapidSSL(reseller?)のRoot証明書が2009/05/29付でEquifax Secure Certificate Authorityに変更になったため、ほとんどの端末で利用可能になりそうだ。ベリサインの証明書を使うと年間8万とかかかるけど Rap…

携帯キャリアがサイトを何にカテゴライズしてるか分かるスクリプト

require "rubygems" require "net/http" require "uri" require "nkf" require "nokogiri" uri = URI.parse("http://category.netstar-inc.com/check/res.php") Net::HTTP.start(uri.host, uri.port) do |http| request = Net::HTTP::Post.new(uri.path) req…

NTTの支払い明細を紛失してしまった場合の対処方法

NTTの支払い明細を紛失してしまって、そのこと自体も忘れていて、ついにネットが停止してしまった。この場合の支払い方法の手順のメモ ミニストップ、サークルK、サンクス、スリーエフ、ローソン、ファミリーマートなどに無料で置かれているスマートピットカ…

Railsプラグイン ez_where がクソ便利

Railsの検索画面などを作るときに、入力パラメータに合わせて conditionsを変更したい場合等が多数あると思うけどそういう場合は ez_whereがめちゃ便利インストール ./script/plugin install http://opensvn.csie.org/ezra/rails/plugins/dev/ez_where/ User…

Hadoopの 0.18.0には fuse-dfsが含まれている

というより、元々あったのだが、 0.18.0からは contrib に含まれるようになった。これを使うと、Hadoopの分散ファイルシステムである dfs に普通に読み書きしたりできる。今までは基本的にJavaのbyteStreamで読み出さなければならなかった。基本的には hadoo…

MeCabをJNIから利用する

MeCabの 各言語のバインディングは Swing経由で利用できるのだが、なぜか Java版がうまく動かなかったので、他のバインディングを探したところhttp://code.google.com/p/cmecab-java/があった。ただ品詞IDが取れなかったので、それを取れるようにソースを修…

_HpbChkPwd解析メモ

/* _HpbChkPwd(keyin, escEncrypted, defaultUrl, target) redirect_url to keyin 遷移先が判明しているときに、パスワードの候補を挙げるプログラム */ var indexbase = " !\"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijk…

DoCoMoのIModeIDの大切なこと

IModeIDは結構な頻度でAAAAAAというIDのユーザと AaaaAA というIDのユーザが来る。つまりMySQLにBinary属性を付けておかないと、MySQLは大文字小文字を区別しないので、同じユーザとして扱われてしまうので注意が必要だ。ということを教えてもらった ALTER T…

PCゲーム、TVゲーム禁止宣言

私は本日から今年度末までTVゲームおよびPCゲームのプレイを禁止することを誓います。

rake db:migrateでversionが固定される

なんか rake db:migrateで versionが2に固定される。VERSION=10とかに上げて 次にrake:migrateとかやると、また VERSION 2に戻される。問題のコード rails-2.0.2/lib/tasks/databases.rake desc "Migrate the database through scripts in db/migrate. Targe…

id:komagataさんがおもしろい試みをはじめたようです

次回も駒形先生の作品にご期待ください。

Identicon

Identiconは一意なseedからユニークな画像を生成する、いわゆる画像版のHash値http://www.docuverse.com/blog/9block?code=1233456&size=32codeは32bitの整数、sizeは16〜64を指定する。何に使用するかというと 2chのIDみたいに IP+ユーザエージェントのハッ…

ブラウザからのアクセスで携帯の端末IDを付加する

etc

お手軽にFireFoxでUserAgentの偽装はUserAgentSwatcherを使用すればよいのだけれど、X_JPHONE_UIDとかX_UP_SUBNOの端末IDを付加するにはModify Headers が便利。https://addons.mozilla.org/ja/firefox/addon/967Modify Headers posted by (C)だんだn

最近NginxのReverseProxyが熱いらしい

WordPress.comが本格的に使い出したりと。それLVSで って声もあるけど、以下の点でNginxが優れている 設定が簡単 レイヤー7での動作 URLのリライト機能 SSLをデコードしてバックエンドに平文で転送 アプリケーション側でmemcachedに結果を設定後、Nginxからm…

仕事を効率的に行うための脳の働き

昨日の NHK プロフェッショナル 仕事の流儀が今後にすごい役立ちそうだったので、メモ 効率よく暗記をする方法 繰り返し行うことにより、短期記憶から、長期記憶に移される 声を出して読み上げながら何度も書く(5感を使うことにより、長期記憶が定着しやすく…

Rubyを使い始めて1年とコードの質の変化

Rubyを使い始めて1年が経ったが、PHPの頃と比べて明らかに大きな変化が2つあった バグが減った バグが減った要因として Rubyは暗黙の型変換が禁止されているので 例えば 1 + '1' はRubyでは構文エラーになる。一方PHPの場合は は暗黙の型変換が行われて、2…

uninitialized constant CGI::Session::ActiveRecordStore

rails/gettext と session: active_record_store を併用する環境で、 uninitialized constant CGI::Session::ActiveRecordStore ってエラーが出てたんだけど、rails/gettext を requireする前に active_record を require しなければならないっぽい。 rails/…

ActiveRecordをSequelっぽく扱う

module ActiveRecordHelper def each(opts={}) rows = find(:all, opts) while rows.any? rows.each{|v| yield v} conditions = if opts.key? :conditions _conditions = opts[:conditions].clone _conditions.first.insert(0, 'id > ? and ') _conditions.i…

書くネタがないので最近読んだ本とその感想を書いておこう

新世界より 上posted with amazlet at 08.04.23貴志 祐介 講談社 売り上げランキング: 2768Amazon.co.jp で詳細を見る新世界より 下posted with amazlet at 08.04.23貴志 祐介 講談社 売り上げランキング: 3481Amazon.co.jp で詳細を見る貴志祐介5年ぶりの新…

mod_rails がリリースされた

インストールは gem install passenger gemdir/passenger/doc/Users guide.txt に説明があるのでその通り入れたら無事起動。 session :off render :text => 'hello' とやるだけのRailsアプリケーションを productionモードでベンチマークを取ってみた。 mod_…

rubyで簡単に文章の類似度を判定する

$KCODE =’u’ class String def trigram str def cacl_tri str h = {} a = str.split(//) s = a.size a.each_index{|v| h[a.slice(v, 3).join] = 1 if v+3 <= s } h end h1 = cacl_tri(self) h2 = cacl_tri(str) h3 = h1.merge h2 h1.size != 0 ? (h1.size + …

本日ウノウ株式会社を退社しました。

ドワンゴで3年、ウノウで2年、自分が企業からうける変化、自分が企業に与える変化が乏しくなった時が転職のきっかけだと思ってきました。それが間違いだと思ったことは経験上一度もなかったので、今回も自分にとって正しいものだったと信じています。 ウノウ…

続 memcached-client with ConsistentHashing

ちゃんと検証した 4つのサーバに1000個の値を追加した後、サーバを5つに増やした時のミスキャッシュ率 require 'rubygems' require 'memcache' require 'mem_cache_with_consistent_hashing' COUNT = 1000 def set m m.flush_all COUNT.times {|v| m.set("ke…

さらに cas と getsを追加して、テストとRDocを書いて patchを作ってrubyforgeにPOSTした

http://rubyforge.org/tracker/index.php?func=detail&aid=19075&group_id=1513&atid=5923英語力がやばすぐる。

memcache-client の append と prependの対応

mecached 1.2.4から、元々ある文字列の前後に文字列を足す appendとかprependがサポートされた。これは統計情報をmemcachedに蓄積したい場合に便利なんだけど rubyのmemcache-client 1.50では対応していない require 'memcache' class MemCache def prepend(…

memcached with ConsistentHashing

rubyの memcache-client の http://www.hyuki.com/yukiwiki/wiki.cgi?ConsistentHashing 対応版があった。 sudo gem install consistent_hashing とかで入れて require 'rubygems' require 'mem_cache_with_consistent_hashing' cache = MemCacheWithConsist…

Amazon Wishlist

自分の名前を検索したら、同姓同名が 32人もいてセーフだった!!!

merb with ebb

git headのmerbは 今話題の ebbに対応している。ということで hello と出力するだけのベンチマークを取ってみた。事前準備 $ yum install git $ yum install glib2-devel $ git clone git://github.com/wycats/merb-core.git $ git clone git://github.com/w…

x61にcobbler経由でubuntuを入れる

cobblerはお手軽に pxebootableな環境を作れるdeamon,主にRedHat系向け 前提 subnet 192.168.11.0/24まず母艦のCentOSにcobblerと必要そうなものを入れる sudo yum install cobbler sudo yum install yum-util sudo yum install dhcp /var/lib/cobbler/setti…