Archive for July, 2008|Monthly archive page
iPhone レビュー
iPhoneを手に入れてちょうど1週間が過ぎました。全体的に言いますと、今まで体験したことのないUIで感動しました。X01HTとは比較できないです。比較対象が間違ってるかも知らないですね。各機能のいいところはappleのiPhoneページで載ってますので、そちらを見ればわかると思います。ここではちょっと不便だと思ってるとろこを取り上げてみます。
1.メール
push型といっても結局は手動で受信しないといけません。メールの受信通知は端末に届きますが、画面に文字を表示するだけで、バイブレーションや音は出ません。メールタブをタッチして初めて受信し、受信した音が出ます(意味あるか?)。しかし、appleのmobilemeの***@me.comを使うと受信通知に音がでます。
2.iPod
機能的にはiPodと同じですが、iPodと比較してちょっと不便だと思ったのは、次の歌か前の歌を選択するためにはポケットから取り出してタッチしないとならないです。iPodはポケット入れたままクリックでできますよね?(自分だけ?)iPhoneなのでしょうがないかも知らないですね。
3.SMS
日本の携帯とちょっと変わった見せ方をしてます。日本の携帯はメッセージ単位で表示されますが、iPhoneのSMSはユーザ単位で表示されます。ここはちゃんとpush型になってます。良いところもあれば悪いところもあると思います。同じメッセージを複数ユーザに送ることができません。
4.カレンダー
外部と同期するところで今はOut lookかmobilemeのカレンダーのみです。google calendarと同期できないのがちょっと残念です。サードパティソフトを使えばできないこともないですが、3Gにはまだ対応できてないみたいです。iPhone dev team がんばれ!
5.カメラ
意外と機能が少なかったんです。ズーム機能、フラッシュー機能など常識といった機能が付いてないです。
6.連絡先
ここでちょっとショックを受けました。まずはグループ機能がないこと。iPhoneから連絡先を登録するときグループを作成することができません。mobilemeを使うとme.comからグループを作成できますが、Gmailで連絡先を一元管理してる私のとって年に1万円払ってmobilemeに移行したくないです。Outlookでグループをわけて同期も取れますが、MSが嫌だ!GoogleContactsと同期はグループまで同期できない。ここでもう一つの問題が発生します。日本語の場合、漢字と読み方があるが、GoogleContactsはそれを顧慮してません。ようするにGoogleContactsと同期取った場合、読み方で検索ができないということです。
7.アプリケーション
早く脱獄したい!iPhone Dev Team頑張れ!!!
8.バッテリ
自分が遊び過ぎかも知らないですが、バッテリの消耗が激しい。酷いときは一日も持たないです。
Lively体験
Googleの3Dソーシャルサービス「Lively」を体験してみました。あの「SecondLife」と違って専用のソフトは必要ありません、IE、Firefoxのプラグインをインストールするだけでブラウザで起動できます。Googleらしいですね。
まずは、www.lively.com からセットアップファイルをダウンロードしてインストールします。完了するとデスクトップにショートカットアイコンが出来上がるのでクリックすると、www.lively.com に飛びます。ログインするためにはGoogleアカウントが必要です。Facebookアカウントでもログインできるみたいです。My Rooms から Create a new room。空のroomが出来上がるので、後は自由にObjectを配置できたり、Avatarをかっこう良く作ったりできます。便利だと思ったのは、Webにある写真を取り込む機能とYoutubeのビデオを取り込む機能でした。
残念なことに、wordpressにiframeが使えないので、roomへのリンクは作成できませんでした…
http://www.lively.com/dr?rid=-8660374474388054342
今のところ、チャットで直接日本語、中国語、韓国語は打てないですが、コピー&ペストでなんとかできます。
今後はSLのようにユーザがObjectを作れるようなAPIを提供するのを楽しみにしてます。言語は何を使ってるかな??
凹 iPhone 凹
ついさき「11日iPhoneの発売についてご連絡いたします」と先月仮予約したSoftBankショップから電話がありました。入荷数は10台で、16GBブラックとホワイト5台ずつ。機種変更より新規契約のほうが優先なので、当日並んでも受付できませんと。
このやり方はちょっと汚いなと思いましたが、やっとiPhoneの発売権を取得したSoftBankにとってはユーザを増やすいいチャンスですので、理解できなくもないですね。店の人から今の携帯はそのまま使いになって、もう一台新規契約してプレーヤーとして使うのはどうですかと進められました。それは違うでしょう!ネット使わなくても、パケット定額フル(5985円)を参加しないといけないので、iPodのような単純なプレーヤーではないでしょう!5985円、光ファイバよりも高い!
ま~、店の人に怒ってもしょうがないので、入荷数を確保次第ご連絡くださいとお願いしました。
首をなが~~~~くして1年も待ったので、マジへこみますね。
AppEngineでFlickr APIを使ってみよう
前回はPHPとFlickrAPIを使って自分の写真を表示するようなことをやってみましたが、今回は最近人気上昇中のGoogleAppEngine(GAE)を使ってFlickrタグ検索をやってみたいと思います。GAEの説明はここでは省略します。が参考になるページを紹介します。
Google Code – Google App Engine
さっそくHello Worldから作ってみた
Google App Engine を使ってみよう
Flickr APIページを見るとPythonのライブラリもありましたが、決して使う気になりませんでした。一つ一つ調べながら遊びたいからです。以下がタグ検索して画面に表示するコードになります。キーワードになるものとしては、google.appengine.api.urlfetch と xml.dom.minidom です。
main.py
#!/usr/bin/env python
#
import cgi,os
import wsgiref.handlers
from google.appengine.ext import webapp
from google.appengine.ext.webapp import template
from google.appengine.api import urlfetch
from xml.dom import minidom
class MainPage(webapp.RequestHandler):
def get(self):
api_url = "http://api.flickr.com/services/rest/?"
api_key = "5f5ffa7c9fcf9f65bc0aae95ad71****"
api_method = "flickr.photos.search"
tag = self.request.get("tag")
if tag == "":
tag = "Flower"
url = api_url+"api_key="+api_key+"&method="+api_method+"&tags="+tag
result = urlfetch.fetch(url)
dom = minidom.parseString(result.content)
photos = dom.getElementsByTagName("photo")
galleries=[]
for photo in photos:
farm = photo.getAttribute("farm")
server = photo.getAttribute("server")
id = photo.getAttribute("id")
secret = photo.getAttribute("secret")
img = "http://farm"+farm+".static.flickr.com/"+server+"/"+\
id+"_"+secret+"_s.jpg"
galleries.append(img)
values = { 'galleries': galleries, 'tag':tag, }
path = os.path.join(os.path.dirname(__file__), "main.html")
self.response.out.write(template.render(path, values))
application = webapp.WSGIApplication([
('/', MainPage)
], debug=True)
def main():
wsgiref.handlers.CGIHandler().run(application)
if __name__ == '__main__':
main()
main.html
<form action="" method="get">
Tag:<input type="text" name="tag" value="{{ tag }}">
<input type="submit" value="Search">
</form>
</div>
<div id="galllery">
{% for galllery in galleries %}
<img src="{{ galllery }}" class="gallery-img">
{% endfor %}
</div>
Leave a Comment
Leave a Comment
Leave a Comment