Archive | Web API

23 4月 2008 ~ 0 Comments

アクセス解析結果をWeb APIで取得「Clicky API」

Google Analyticsは便利なのだけれど、Web APIを公開していないのでデータの再利用性が悪い。便利なデータだけに、もっと色々なデータと連結したり、別なインタフェースで見たいと思うのは当然だ。

Clickyのトップページ
 
その点Clickyは違う。アクセス解析結果で得られるほぼ全てのデータをWeb APIで取得することができる。Clickyに関する紹介は 4つの便利機能がお勧めのアクセス解析2.0「Clicky」[ Resident of Net ]を参考にして欲しい。

Continue Reading

23 4月 2008 ~ 0 Comments

プロジェクトをWeb APIで管理「Lighthouse API」

Lighthouseは小〜中規模な開発向けのプロジェクト管理システム。無料でも1プロジェクト、2ユーザまで利用できる。チケット、マイルストーン、メッセージ等機能はそれほど多くありませんが、使い勝手もよく便利なプロジェクト管理アプリケーションです。紹介は使いやすいプロジェクト管理「Lighthouseapp」[ Residentof.net ]も参照してください。

Lighthouseの一画面
 
そしてLighthouse APIを使えば、Lighthouse内にあるほぼ全てのデータ取得できるようになります。

Continue Reading

08 4月 2008 ~ 0 Comments

GoogleからAmazon EC2/S3/SimpleDB対抗プロジェクトが登場「Google App Engine」

Google App Engineロゴ
 
GoogleからAmazonのEC2/S3/SimpleDB対抗プロジェクトとでも言うべきGoogle App Engineが登場しました。これはPythonベースのWebアプリケーションを開発し、それを動作させる環境を提供してくれるWebサービスです。
利用はまずSDKをダウンロードするところから始まります。現在ベータ版のため、ユーザ登録後にメールでお知らせがくる形式になっています。SDK自体はWindows、Mac OSX、Linuxやその他の環境向けのパッケージが提供されています。Google Apps Engine自体はオープンソースのプロジェクトになっています。

SDKダウンロードページ
 
そして、SDKをインストールし、さらにユーザ登録も完了したら開発開始です。
開発はPythonを使って行います。YAMLを使って設定を定義して、ローカル環境で動作確認ができます。その結果をコマンドベースでGoogle App Engineへ投げれば、Google上で動作させられるようになります。
注目すべきはGoogleのデータ管理システムであるBigTableを利用できる点です。データベースを定義し、GQLと呼ばれるSQLに似た言語を使ってデータを取得、更新、作成できるようになります。
Pythonということで若干敷居が高い感もありますが、これを機に習得してみるのも良いかもしれません。なお、フレームワークはDjangoとのことです。
個人的にはベータサービスの内にどれだけの言語に対応してくるか、またサービスの機能が増えていくかが気になります。例えばRuby/RailsやPHP、Perlといった言語への対応や、独自ドメインの対応などが気になります。また、ImageMagickや特殊なライブラリを利用している場合にどう対応してくるかも気になるところです。これらが解決してくると、相当面白いことになりそうです。
 
Google App Engine – Google Code
 http://code.google.com/appengine/

Continue Reading

04 4月 2008 ~ 0 Comments

デジタルスクラップブック「Tumblr API」

動画も画像もテキストも、何でもかんでも取り込めるのがTumblrだ。マイクロブログのブームに乗って登場したこのサービスは、ブログとはまた違う、手軽なスクラップサービスとしての地位を築いている。

Tumbr APIのトップページ
 
そんなTumblrのサービスを十分に活用するのが「Tumblr API」だ。

Continue Reading

03 4月 2008 ~ 0 Comments

Amazon EC2を使ってWebサービスを公開する「準備編」

開発したWebサービスをどこで公開するか、これが意外と悩ましい。選択肢としては

共用サーバサービス
VPSサーバサービス
専用サーバサービス
自宅サーバ

などがあると思う。体感的には共用サーバは0〜5,000円/月、VPSは5,000〜20,000円/月、専用サーバは8,000〜100,000円/月くらいだろうか。自宅サーバはもちろん月額費用はかからないが、初期のサーバ代金、月々のネットワーク費用+電気代、熱対策、障害時の対応などを計算しておく必要がある。個人的には割に合わないと感じている。
外部のリソースを使うサービスでは、大抵初期費用がかかってくる。その後の費用は月額のみだが、品質や障害時の対応などで各社ばらつきがある(それが金額に反映されるのだが)。多少大きめのサービスを構築しようと思ったときには、これらでは役不足になることも多い。
特に複数台の構成(Web + App + DBなど)を考えると、専用サーバサービスであってもオプションを使う必要があったり、そもそもオプションがないこともある。そうしたことを踏まえると、価格の割に十分でない気がしている。
それではローカル開発後の公開までの道のりで断念しかねない。そこでAmazon EC2の利用を考えたい。Amazon EC2を使えば、仮想サーバでありながら十分なパワーを備え、Amazonレベルのサービス品質を誇るサーバを短時間で手に入れられる。まず今回はAmazon EC2を利用する前までの準備を説明したい。
アカウントの登録
まず最低限の準備としてAmazon EC2のアカウントを取得する必要がある。Amazon EC2はAmazon Elastic Compute Cloudの略で、仮想サーバを使ったルート権限のあるホスティングサービスだ。有料のサービスとなっており、利用にはクレジットカードが必要だ。登録はここから行う。

Amazon EC2のトップページ
 
次に気になる料金体系だ。
インスタンス料
インスタンスは次の3つが用意されている。

Small 1.7GB / 1CPU / 160GB HDD / 32bit ($0.1/時間)
Large 7.5GB / 2CPU / 850GB HDD / 64bit ($0.4/時間)
Extra Large 15GB / 4CPU / 1690GB / 64bit ($0.8/時間)

CPUは1.0〜1.2GHzのXeonとなっている。
データ転送料
データ転送料は次の通り。

$0.1/GB(受信)
$0.18/GB(送信)※ 最初の10TB/月まで
$0.16/GB(送信)※ 次の40TB/月まで
$0.13/GB(送信)※ それ以上

ということで2種類の料金が発生する。データ転送料は、よほど巨大なデータ(動画など)を連続して流さない限り問題はないだろうが、画像などを多用する場合は注意しておきたい。
Smallインスタンスを一ヶ月間使用した場合、$73/月($0.1×24時間×365日÷12ヶ月)かかる計算になる。後は転送料により料金が前後する。同様にLargeインスタンスを使った場合は$292/月($73×4)かかる計算になる。これが高いとみるか、安いとみるかは人によって違うだろうが、保守や初期費用を考えると十分ペイできると思われる。
アカウント&証明書
アカウントを取得したら、重要なIDに関する情報をメモしておこう。それは右上のメニューの「AWS Account Activity」と「AWS Access Identifiers」に表示されている。

メニュー。マウスを重ねると表示される。
 

アカウントID:数字12桁
アクセスキーID:数字/英大文字20桁
アクセス秘密キー:英数字40桁

AWS Account Activityには以下の場所にアカウントIDが記載されている。

モザイク処理している箇所に数字が記載されている
 
AWS Access Identifiersには次の箇所にアクセスキーID、アクセス秘密キーが記載されている。

アクセス秘密キーはクリックして表示される。
これらは忘れないようにしよう。次に必要なものをダウンロード&インストールする。初回の場合は証明書が作成されていないと思われるので、Create Newから作成する。

X.509証明書およびX.509秘密鍵(AWS Access Identifiersのページ下部)
専用のJavaツール(ここからダウンロード可能)
Java

AWS Access Identifiersの下の方に証明書関連のリンクがある。
 
次はダウンロードしたツールを配置していく。ホームディレクトリにフォルダ(例:ec2-keys)を作成し、その中に先ほどのX.509証明書ならびにX.509秘密鍵を入れる。 そして、環境変数に各種設定を行う。Windowsであれば、

EC2_PRIVATE_KEY:X.509秘密鍵のパス
EC2_CERT:X.509公開鍵のパス
Path:Javaツールのパスを加える

になる。LinuxやMac OSXであれば、
export EC2_HOME=~/ec2-keys
export PATH=$PATH:$EC2_HOME/bin
export [...]

Continue Reading

27 3月 2008 ~ 0 Comments

Yahoo! Pipesをブログのサイドバーに「Badges for Yahoo! Pipes」

手軽にマッシュアップを構築できる便利ツール、Yahoo! Pipesに新たな魅力が加わった。実際、Yahoo! Pipesというと、技術向けのサービスになってしまっていた感がある。結果をRSSやJSONで出力し、それを加工してマッシュアップするようなイメージだ。

新機能の一つ、イメージ。サムネイルと拡大画像がスライドショーのように表示される。
 
だが今度の機能でYahoo! Pipesの新たな活用法が見えてくる。Badges for Yahoo! Pipesと呼ばれる機能によって、出力形式にマップ、リスト、イメージという三種類が加わったのだ。

Continue Reading

27 3月 2008 ~ 0 Comments

Google Mapsと連携できるルート検索API「Orkney Web Routing Service API(Orkney WRS API)」

地図を使ったサービスは数多い。Google Maps、Yahoo! Mapsなどが有名だ。オンラインとオフラインを位置情報でつなぐのにも地図サービスはちょうどいい。世の中のマッシュアップの大半はGoogle Mapsを使っているのも納得できる。

そんな地図ではあるが、色分けはされているものの、ただ表示されているだけというのが殆どだ。これでは面白みが足りない、そんな地図にひと味加えてくれるのがこのWeb APIだ。
Orkney Web Routing Service API(以下Orkney WRS API)はある位置からある位置における最短ルートを教えてくれるWeb APIだ。これまでにないユニークなものになっている。

Continue Reading

26 3月 2008 ~ 0 Comments

ソーシャルサイトを使ってつながるソーシャルサービス「FriendFeed API」

ソーシャルサイトはWeb2.0(?)の流れに乗って、一気に増えた。del.icio.usあたりからはじまって、flickr、Digg、Twitterと数多く存在する。そんなソーシャルサービスを多数使いこなしている方におすすめなのが「FriendFeed」だ。

FriendFeedのトップページ。ポップなデザインだ。
FriendFeedは各サービスのユーザIDやフィードを登録することで、自分が使っている各ソーシャルサービスのデータをFriendFeed内に集約することができる。また、友人を登録することで、友人の使っている各サービスの状態も簡単にチェックすることができるようになる。
そしてFriendFeedはWeb APIを公開している。それがFriendFeed APIだ。

Continue Reading

10 3月 2008 ~ 0 Comments

Gmailのアドレス帳にアクセスできる「Google Contacts Data API」

Contacts Data API – Google Code
 http://code.google.com/apis/contacts/

Google Contacts Data APIを使えばGmailのアドレス帳にWeb API経由でアクセスできるようになります。vCard形式ではなく、GData形式での取得、更新になります。新しいコンタクトを追加することもできるので、別なアプリケーションのアドレス帳と同期をとるような使い方も考えられます。
項目の詳細がドキュメント化されていないようで、詳細は未確認ですが、Gmailに登録したアドレス帳のほぼ全てのデータが取得できるようです。25件ずつのリストで取得したり、検索して結果を得ることができます。
Rubyでのデータ取得の方法は、Rails 2.0 » RubyでGoogle Contacts Data APIを呼び出すを参照してください。

Continue Reading

06 3月 2008 ~ 0 Comments

記事に関連したe-Wordsの用語集を表示「埋め込みe-Words」

e-Wordsは言わずと知れたIT用語情報サービスだ。相当歴史が長いかと思ったが、2002年くらいからの運営のようだ。だが9,000語をこえる見出し語、6,000近い解説項目の数は他のサイトの追随を許さないほどに大規模なサイトだ。

そんなe-Wordsの用語を自分のサイト内にも配置できるWeb APIが「埋め込みe-Words」だ。
埋め込みe-Wordsは設置したサイト内にある文字列を解析し、e-Wordsへの用語リンク集を作ってくれるJavaScriptだ。単純に言えば、AdWordsのe-Words版と言った感じだ。例えば技術系の記事を書いた際に「用語解説」としてe-Wordsへのリンクをまとめてつけるような使い方が考えられる。

使い方は簡単で、表示されているスクリプトタグを埋め込めば良い。その結果はulタグとliタグの並びが返ってくるので、スタイルシートで好きに装飾できる。オプションは文字コード、リンク先ターゲット、クラス指定になっている。

埋め込みe-Words : IT用語辞典
 http://e-words.jp/p/s-embed.html

Continue Reading

MOONGIFTネットワーク。こちらもぜひご覧ください。
MOONGIFT
Open Service
Rails 2.0
Resident on Net
iPhone最適化
リーンソフトウェア
MarketPedia
Producing Web
Cool Coding