タグ

ブックマーク / blog.katsuma.tv (6)

  • blog.katsuma.tv

    明けましておめでとうございます。 年も明けたことだし、意識高めにRuby2.0+Rails4な(スケルトンの)アプリを作成しました。 roomkeepr 我が家はiRemoconを使って家電を管理しているのですが、テンプレートを変更するのがあまりに面倒なので全部Webベースにしちゃえばいいや、と思ってせっかくなので最新のエッジな環境で作ってみよう!とおもった次第です。実際、Sinatraで十分なんだけど。。 微妙にハマる個所もありましたが、rspecでテストが動くところまで確認できました。 以下、そこまでのメモです。 Ruby2.0 RVMでpreview2版がインストールできます。 まずは、ビルドツールを最新にしておきます。Homebrewを利用している場合はこんなかんじ。 brew update brew tap homebrew/dupes brew install autoconf

  • blog.katsuma.tv

    前回「Mac OSXにredisをインストール」で、redisを動かす環境まではできたので、せっかくなんでテスト的に何かサービスを作ってみよう、ということでTwitterクローンのRedTweetを作ってみました。 RedTweet redisを使ったTwitterクローンは、PHP版のRetwisと、それをSinatraで書き直したRetwis-RBがあるのですが、サンプルコードはいくらっても世の中に少しは役立つだろうと思ってRails版で実装してみました。オンラインで動作できる環境はないので、git cloneしてscript/serverで手元の起動で確認ください、、と投げやり気味ですみません。とりあえず次の項目は一通り実装しています。 ユーザID発行 Login / Logout Follow / Remove 自分のTimeline, Public Timeline, 各ユーザの

  • blog.katsuma.tv

    Tokyo Cabinet / Tokyo Tyrantに代表されるKey-Value Storage,いわゆるKVSは多くのプロダクトが乱立してなかなか違いを理解するのも難しい状況になりつつあるのですが、ここ数日はredisに注目をしています。redisとは何ぞやというと、公式サイトには次のような特徴が挙げられています。 memcachedのようないわゆるKVS valueにはStringだけではなく、List, Setも利用できる データに対するpush/pop, add/removeのような操作はすべてatomicな操作 通常はメモリ上で動作するが、定期的にデータをディスクに書き出す(常に書き出すような設定も可能) Master-Slaveのレプしケーションをサポート Ruby, Python, Perl, Java…などの各言語のバインディングを用意 と、かなり豪華なスペックで、な

  • blog.katsuma.tv

    CakePHPで作成したアプリケーションに対して、Javaアプリケーションから簡単なDB操作(実際はselectだけできればOK)をする必要があって、生のSQLを書くか、それともいい機会だしORマッパのライブラリを勉強がてら使ってみるか、、なんて悩んでいました。保守性を考えるとやっぱり生SQL案は無しで、ORマッパを使うことにしたのですが、Hibernateはどうもリッチすぎる印象があってなかなかやる気が進みませんでした。大規模アプリ開発ならまだしも、今回は上で書いた通り、最低限の参照だけできればそれで事足りる状況だったので、そのためだけにわざわざ設定用のXMLを書くのは気が引けていたのです。 3分で始められるORマッパ 3分間クッキングじゃないですけど、それくらい手軽に操作できるものをずっと探し続けていたら、ActiveObjectsなるプロジェクトに辿り着きました。 AcitiveOb

  • blog.katsuma.tv

    Cakeではgettextを利用して多言語化(国際化対応)が簡単にできる仕掛けが用意されています。 __()関数を利用して文字列生成 cakeコンソールでpotファイルを作成 poエディタなどで各言語別に翻訳 実際は、こんな流れになります。詳しくは次のサイトなどが非常に詳しい情報が掲載されています。 CakePHP1.2の簡単国際化 - CakePHP のおいしいべ方 CakePHPで国際化の方法を試してみましたCommentsAdd Star - アシアルブログ 1.2系の多言語対応メモ(1) - Writing Some Code さて、この国際化対応のときに盲点となるのが「検索エンジン対応」です。 そもそものこの言語の切り替えというのは、HTTP RequestのAccept Languageを調べてそこで切り替えが行われています。(ブラウザでの優先する言語で設定できるやつですね。

  • blog.katsuma.tv

    (2008.12.19 22:00追記) peer IDをnear IDに修正 先日のAdobe MAXでFlashの新しいプロトコルRTMFPを扱うことができるサービス「Stratus」について発表がありました。これは簡単に言うと、ブラウザで何もインストールすることなくP2Pを実現できる神がかったプロトコル(=RTMFP)と、RTMFPをサポートするサービス(=Stratus)、という位置づけです。上の写真は実際にStratusを介してRTMFPによる通信で僕の家とオフィス(夜中なので真っ暗ですね)をつないでいるものです。 これらについては、Adobe Labsでの次の文章が非常に分かりやすいです。 Stratus service for developing end-to-end applications using RTMFP in Flash Player で、この文章があまりに分

  • 1