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

ケーキ

Rubyでmemcachedを使う

REMPのAPI周りでキャッシュを使いたくなったので、memcachedを使おうと思ったのだけどRubyで使う場合のクライアントを知らなかったので簡単にまとめ。 Ruby用のmemcacheクライアントはいくつかある様なのだけど、dalliというクライアントが一般的な様なので…

REMP(レンプ)開発に参加してますよ

そういえば、REMP(レンプ)というYoutube動画を連続再生できるWebアプリの開発に参加してますー*1。 Mashup Award 7 にも応募したりしましたよ。 動作環境はgoogle chromeがインストールされているPCでfacebookアカウントがあれば利用することができます。 RE…

Solrの検索クエリーとMySQLの検索クエリーの対応

Solrで検索クエリーを作るときにどうしてもSQLクエリが先に出てしまうので対応をメモ。 クエリーパラメータでいうとqですね。 検索式 MySQL*1 Solr 一致検索 WHERE title="foo" title:foo 全件 (where無し) *:* AND WHERE title="foo" AND price=200 title:f…

SinatraアプリをApache2のmod_proxy_balancerを通してThinで動かす(2) -mod_proxy_balancerの設定

続けて、Apache2の設定。ここでは、既にmod_proxyが入っているものとします。 フロントのApache2から複数起動しているThinのサーバに振るためにmod_proxy_balancerを入れます。 Ubuntuであれば、 $ sudo a2enmod proxy_balancer で、mod_proxy_balancerが有…

SinatraアプリをApache2のmod_proxy_balancerを通してThinで動かす(1) - Thinの設定

今、WebアプリケーションのAPIサーバをRubyのフレームワークのSinatraでつくっていて、これを本格的に動かすときにWebサーバをどうしよう。ということになって、Thinが良いらしいという情報を得たので導入してみた。 現状、動いているApacheサーバがあるので…

RubyでHTTPSリクエスト発行する

Rubyでプログラム書いていてWeb系のAPIにHTTPSでアクセスする必要があったので調べた。 RubyでPOSTメソッドを発行するには以下の様に標準添付されているライブラリのnet/httpを利用すればよい。 #接続先ホスト名 hostname = "www.foo.bar" #接続先パス reqpa…

Rubyでnilの判定

Rubyでnil (空オブジェクト) の判定は nil? で行える。*1 if修飾子で書くと綺麗に書ける。やはりRubyで書くと読みやすいな。 def foo do res = db.find("id" => 1) return 'error' if res.nil? # resが空オブジェクトの場合は 'error' を返却 #ゴニョゴニョ…

gemでインストールを行おうとしたときに no such file to load -- mkmf (LoadError)

gemでインストールをしようとしたときに以下の様なエラーが出ることがあった。 $ sudo gem install mongo_mapper Building native extensions. This could take a while... ERROR: Error installing mongo_mapper: ERROR: Failed to build gem native extens…

全文検索エンジンgroongaを使ってみる(1) - インストール

休暇中に何らかの全文検索エンジンを入れて触ってみようと決めていたのでGroongaを入れてみた。 特徴 Groongaの特徴は以下の様なところがある。 操作は複数のプロトコルが利用可能 独自プロトコル or HTTP or memcached binaryプロトコル HTTPの場合, GETリ…

homebrew導入

Macにhomebrew入れた。 homebrewはMacPortsと同じくパッケージ管理ツールでRubyで記述されている。 たまたま試したいと思っていたプログラムの配布パッケージにhomebrewが用意されていたので使ってみた。 インストール方法 コマンドラインから以下を実行すれ…

夕涼み 肩寄せて 宵祭り

久しぶりにラムネ飲んだ。

PHPでクローラを書く

PHPでクローラを書くときのライブラリないかな?と探したところ、sourceforgeで見つけたので使ってみた。結構、出来が良くて少し触ってみた感じ便利そうな雰囲気。 PHPCrawl PHPCrawl is a webcrawler/webspider-library written in PHP. It supports filter…

大地と緑と空と。

一応、東京都内。 本当に綺麗な空だった。

蛇口

蛇口が恋しい一日であった。

jquery.ui.datepicker.mobile.js を使った際の日付選択イベント抽出

行いたかったのは、jquery.ui.datepicker.mobileで作られたカレンダーの日付をタップ(クリック)された際のそのイベントを検出すること。 jQueryのlive(type, fn)を利用すればよいということがやっとわかった。 bind関数との違いはbind(type,fn)を利用した場…

未解決: jquery.ui.datepicker.mobile.js を使った際の日付選択イベント抽出

その後解決→jquery.ui.datepicker.mobile.js を使った際の日付選択イベント抽出 jQuery mobileとjQuery.uiのdatepickerを利用してスマートフォン向けの日付選択ダイアログを作るところまではうまくいっているのだけど、どうしても日付の選択のイベントを検出…

i386とプログラミングと私

久しぶりにblog更新。 家の机周りの片付けなど。壮大に散らかっていた机の上を整理する。 以前引っ越しをしてから、大雑把に片付けたままの状態がずっと続いていたので、現在の様な状況*1でないと重い腰も上がらなかったりするのでいい機会だと思って朝から…

幸福論

人生いろいろありすぎた状況*1なので、朝から読み返してみている。 水木サンの幸福論 (角川文庫)作者: 水木しげる出版社/メーカー: 角川書店発売日: 2007/04メディア: 文庫購入: 5人 クリック: 41回この商品を含むブログ (25件) を見る 漫画家水木しげるさん…

Google Search Volume

Googleの検索ワードのタイプ状況を可視化したもの。WebGL対応のブラウザ…Chromeであれば再生することができる。 下の図は日本の周りを表示させた物。うっすらと日本列島が浮かび上がるのが見える。 http://data-arts.appspot.com/globe-search 詳しくはGoogl…

Google URL Shortener API を使ってみる(2) - PHPで利用してみる

準備で取得したAPIキーを利用してGoogle URL Shortner API へアクセスすることで短縮したURLを取得することができる。 ここでは、PHP上から利用してみた例。HTTPのPOSTアクセスには、PEARのHTTP::Request2を利用しているので、PEARにいれていない場合はPEAR…

Google URL Shortener API を使ってみる(1) - 準備

googleの短縮URL生成機能のGoogle URLのAPIを利用してみる。1日100万回利用可能。 APIを利用することでプログラム中から非常に長い文字列数で構成されるURLをhttp://goo.gl/〜 で始まるURLに変換することができる。 利用には、まずAPIキーをgoogle API conso…

JavaScriptでテンプレートエンジン(jQuery templatesプラグイン)

PHPだとSmartyなどのテンプレートエンジンを利用したりするが、同様にJavaScriptでクライアントサイドでテンプレートに変数を流しこむ様な実装を行うことができるライブラリを探したところ、jQueryのtemplatesプラグインで実現できる様なので使ってみた。 Te…

zshでscpするときにno matches found

MacOSでzshをシェルにしているのだけど、scpを実行しようとすると、 % scp foo@bar.com:~/my*.zip . zsh: no matches found: foo@bar.com:~/my*.zip と表示されてしまって実行できない。 これは、ワイルドカード(*)で補完がかかってしまうため。 これを防ぐ…

今日の一枚

東京。桜が満開。

いろいろありました

この数カ月間、プライベートでも仕事でも、そして日常でもいろいろな変化がありました。 あまりにもいろいろありすぎて、少しオーバーヒート気味だったのですが、やっと落ち着いてきたのと最近すっかりtwitterばかりで全くこちらの更新を怠っていたので書い…

今日の一枚

あけましておめでとうございます。 本年も何卒よろしくお願い申し上げます。