2007年8月8日水曜日

ぜんぜんコンピュータと関係ないが。。。

安倍首相の鼻の下にちょびヒゲを描くと、ヒットラーにそっくりだ。

猪瀬直樹に詰めりの服を着せてヘアースタイルをちょっと変えると、金正日にそっくりだ。

2007年8月3日金曜日

postgresのアダプタも忘れずに!!

localhost の Ruby on Railsのプログラムを、外部(paypal)とのやりとりの部分を開発をするため 、global address をもつ本番サーバーに移設することにした。

本番サーバーに、ruby、ruby on rails、postgres などを順番にインストールして、データベースのテーブルを作成するために
rake db:migrate
を実行した。しかーし、
no such file : postgres
というエラーでdb:migrateがエラーになってします。postgres はちゃんとインストールされ コマンド psql も動作しているのになんでなんだろう!?

小一時間悩んで気がついた。

データベースアダプタをインストールするのを忘れてた!!!

Ruby版アダプタは
sudo gem install postgres-pr

C版アダプタは
sudo gem install ruby-postgres

でインストールできる。

なお、OS Xでの postgres のインストールは以下のインストーラを使うと簡単。
PostgreX(PostgreSQLのOSX用インストールパッケージ)-PostgreSQL installer

2007年8月1日水曜日

郵便番号での住所自動入力

郵便番号の入力が終わったとたん(=フォーカスが郵便番号フィールドから外れたとき)入力された郵便番号から住所を自動入力されるようにした。

自前で郵便番号辞書を持つのはめんどうなので GROOVE Technology社の郵便番号検索 Web Service(無料)を利用した。
GROOVE Technology

javascript だけで実現できる。JSONP(JavaScript Object Notation with Padding)という仕組みを使っている。
JSONPの動作原理

2007年7月31日火曜日

Railsの多言語化

ユーザーが日本国内だけの場合はいいが、海外のユーザーもいる場合は、最低日本語と英語の両方のページをサポートする必要がある。

Cocoaの場合は、標準で国際化(Internationalization)がサポートされているので容易に多言語化が可能だが、Railsの場合は標準では英語しかサポートされていない。

日本語だけでいいなら、ActiveHeart というプラグインがある。ActiveHeartについては
http://jp.rubyist.net/magazine/?0012-RubyOnRails

複数言語のサポートには、Ruby-GetText-Package を使う。
http://www.yotabanana.com/hiki/ja/ruby-gettext.html

ActiveHeart と GetText の比較については、
http://blog.masuidrive.jp/articles/2006/07/03/gettext

オンラインソフトの販売システム

オンラインソフトをクレジットカード認証を行って販売・発行するシステムにはいろいろある。オンラインソフトの長所は、ユーザーと開発がダイレクトにつながり新鮮で良質なソフトを安く手に入れられるという点にある。しかし、Vector、kagi.comなどはその中間に入って10-15%ものマージンをとってしまい結果的にユーザーの負担が増えてしまう。

最近、Paypalが完全日本語化されクレジットカードの認証が小規模のソフトハウスでも簡単に行えるようになった。ライセンスキーの発行を手動で行うのであれば、簡単なHTMLを書くだけでショッピングカート付きのオンラインソフト販売システムを構築できる。手数料も3-5%で手ごろである。

ただ、手動(オフライン)でライセンスキーを発行する場合、年末年始や夏休みなどのときにライセンスキーの発行が遅れてしまうことになり、やっぱり今の時代ライセンスキーを自動(リアルタイム)で発行したほうがずっと良い。

Paypalを使ってライセンスキーを自動発行するシステムで、PotionStoreというオープンソースがある。2日位でクレジットカード認証付きのライセンスキー自動システムができてしまうそうだ。
http://www.potionfactory.com/potionstore/

しかし、ダウンロードして実際にセットアップしてみると以下の点で、日本の環境ではすぐには使えないことがわかった

1) WebPayment Proは日本では利用できない。(日本ではWebPayment Standardしかサポートされていない)
2) Google Checkoutも、現在アメリカとイギリスのマーチャントしか利用できない。

PotionStoreは、Ruby on Rails で書かれており日本用に修正すれば、なんとか使えそうだ。

ということで Ruby on Rails の勉強がはじまったのが2007年7月のはじめであった。