« November 2008 | Main | January 2009 »

December 2008

18 December 2008

年末年始

(乂∀・)ウィッシュ

yt

IMG_4495.JPGをダウンロード

16 December 2008

Advent Calendars

Perl のフレームワークとして有名な Catalyst のオフィシャルサイトでは Advent Calendar と称して毎年12/1から12/24まで Catalyst の Tips が毎日公開されます。

Catalyst Advent Calendar  (2007, 2006, 2005 もあります。)

そして、最近では perl-users.jp でも Perl 界隈で名前の通った方々がバトン形式で Perl の Tips を紹介されています。

JPerl Advent Calendar 2008

すぐに試せる気の利いた Tips がありますので興味のある方はご参考にされてはいかがでしょうか?

12 December 2008

トーキョー・ムーン

3101461601_d81e35c17c_o_2 今日の東京は月がきれいです。ケータイで撮影したのですが、月とビルが夕方の色に混じってとてもキレイでした。

11 December 2008

SocialWeb Japan スタート

ZIGOROu さんやえーじさんが中心となって、OpenIDOAuthOpenSocial などオープンな規格から、Yahoo!microsoftFacebook などのサービスなど事例に触れながら、最終的には日本発の何かが作りたいね、というようなグループができました。

SocialWeb Japan

私も何かできることがあれば協力していきたいと思っていますhappy01

OpenWebFoundation の日本版的なところかなーと思いつつ、やっぱりデベロッパー・ドリブンで形にしながら何かしたいですね。

まずは発足おめでとうございますgood

seealso:

MacBook のメモリ増設完了!快適!!

先日エントリでお知らせしました通り、MacBook のメモリを 2G しました。

Activitymonitor_03

体感的には

  • Adobe Acrobat Reader の起動および表示速度が向上した
  • iTunes の起動速度が向上した
  • QuickSilver の反応が速くなった
  • ことえりの変換速度が速くなった
  • MacBook の終了が速くなった

あたりがあげられます。MacBook の起動そのものはあまり向上した感じがしませんが、その他普段使いのアプリが速くなったのでとても快適です。

512MB のときのアクティビティモニターの状態を取り忘れましたが、それにしても上記の画像でも分かりますようにすでに 450MB 近くは使用状態だったわけですから、512MB じゃ足りないわけですよねー。

メモリの増設に関しては Apple が提供しているドキュメントがもっとも親切です。説明に従えばできると思います。

それからネタフルさんのところで結構重要な一文がありました。

またパーツを戻す際に、メモリを抑えるウレタン樹脂のようなものがついているのですが、これはマイナスのドライバーではめ込みながらネジ止めすると良い具合です

開いたときには気づかなかったのですが、このウレタン樹脂みたいなのが結構収まりが悪いです。うまくやらないとネジをしめるときに L 字型ブラケットが浮いちゃう。最初にどうやって収まっていたか確認しながら開くのが吉です。

それから折角なので Xbench を使って計測してみました。変更点はメモリを 512MB (256MB x 2) から 2GB (1GB x 2) に変更したというところです。かなり向上したのが分かると思います。

メモリ 512M の Xbench 結果

Results 69.72
        System Info
                Xbench Version          1.3
                System Version          10.4.11 (8S2167)
                Physical RAM            512 MB
                Model           MacBook1,1
                Drive Type              TOSHIBA MK6034GSX
        CPU Test        67.37
                GCD Loop        232.44  12.25 Mops/sec
                Floating Point Basic    83.13   1.98 Gflop/sec
                vecLib FFT      37.67   1.24 Gflop/sec
                Floating Point Library  60.63   10.56 Mops/sec
        Thread Test     178.04
                Computation     161.30  3.27 Mops/sec, 4 threads
                Lock Contention 198.64  8.55 Mlocks/sec, 4 threads
        Memory Test     103.48
                System  97.95
                        Allocate        99.41   365.08 Kalloc/sec
                        Fill    98.47   4787.79 MB/sec
                        Copy    96.02   1983.19 MB/sec
                Stream  109.68
                        Copy    106.24  2194.32 MB/sec
                        Scale   106.59  2202.20 MB/sec
                        Add     114.15  2431.74 MB/sec
                        Triad   112.18  2399.74 MB/sec
        Quartz Graphics Test    89.34
                Line    91.97   6.12 Klines/sec [50% alpha]
                Rectangle       96.75   28.89 Krects/sec [50% alpha]
                Circle  95.00   7.74 Kcircles/sec [50% alpha]
                Bezier  102.28  2.58 Kbeziers/sec [50% alpha]
                Text    69.18   4.33 Kchars/sec
        OpenGL Graphics Test    207.01
                Spinning Squares        207.01  262.60 frames/sec
        User Interface Test     142.09
                Elements        142.09  652.13 refresh/sec
        Disk Test       21.18
                Sequential      31.79
                        Uncached Write  39.48   24.24 MB/sec [4K blocks]
                        Uncached Write  31.27   17.69 MB/sec [256K blocks]
                        Uncached Read   23.83   6.97 MB/sec [4K blocks]
                        Uncached Read   37.65   18.92 MB/sec [256K blocks]
                Random  15.88
                        Uncached Write  5.77    0.61 MB/sec [4K blocks]
                        Uncached Write  39.04   12.50 MB/sec [256K blocks]
                        Uncached Read   32.33   0.23 MB/sec [4K blocks]
                        Uncached Read   45.48   8.44 MB/sec [256K blocks]

メモリ 2G の Xbench 結果

Results 101.97
        System Info
                Xbench Version          1.3
                System Version          10.4.11 (8S2167)
                Physical RAM            2048 MB
                Model           MacBook1,1
                Drive Type              TOSHIBA MK6034GSX
        CPU Test        68.84
                GCD Loop        238.81  12.59 Mops/sec
                Floating Point Basic    83.10   1.97 Gflop/sec
                vecLib FFT      38.67   1.28 Gflop/sec
                Floating Point Library  62.41   10.87 Mops/sec
        Thread Test     177.40
                Computation     160.98  3.26 Mops/sec, 4 threads
                Lock Contention 197.56  8.50 Mlocks/sec, 4 threads
        Memory Test     108.01
                System  98.83
                        Allocate        96.06   352.77 Kalloc/sec
                        Fill    98.26   4777.80 MB/sec
                        Copy    102.36  2114.20 MB/sec
                Stream  119.08
                        Copy    112.10  2315.30 MB/sec
                        Scale   114.54  2366.36 MB/sec
                        Add     126.35  2691.50 MB/sec
                        Triad   124.61  2665.80 MB/sec
        Quartz Graphics Test    88.97
                Line    92.15   6.13 Klines/sec [50% alpha]
                Rectangle       94.89   28.33 Krects/sec [50% alpha]
                Circle  93.68   7.64 Kcircles/sec [50% alpha]
                Bezier  102.28  2.58 Kbeziers/sec [50% alpha]
                Text    69.67   4.36 Kchars/sec
        OpenGL Graphics Test    206.59
                Spinning Squares        206.59  262.07 frames/sec
        User Interface Test     192.45
                Elements        192.45  883.24 refresh/sec
        Disk Test       31.48
                Sequential      47.60
                        Uncached Write  66.63   40.91 MB/sec [4K blocks]
                        Uncached Write  57.82   32.72 MB/sec [256K blocks]
                        Uncached Read   27.95   8.18 MB/sec [4K blocks]
                        Uncached Read   62.67   31.50 MB/sec [256K blocks]
                Random  23.52
                        Uncached Write  8.23    0.87 MB/sec [4K blocks]
                        Uncached Write  61.28   19.62 MB/sec [256K blocks]
                        Uncached Read   56.42   0.40 MB/sec [4K blocks]
                        Uncached Read   68.54   12.72 MB/sec [256K blocks]

メモリの価格が破壊的に安い今、皆さんもご自分の MacBook のメモリを見直してみてはいかがでしょうか。

seealso:

10 December 2008

おお。

Typepad_connect_google ワタクシごとで恐縮ですが、キーワード「TypePad Connect」で Google 検索した結果、このブログが 1 位になっていましたnote

うれしくupなってブラウザでキャプチャcameraをとってしまいました。社内では goodpic の中の人の順位に注目していたのですが、よく見てみると私が 1 位でした。これでアルファブロガーの仲間入りですかねsign02

Google App Engine を試したよ。

最初に知ったときからだいぶ時間があいてしまったのですが、やっと試す時間が作れました。今日は Google App Engine についてメモです。

インストール

Google App Engine は Python 2.5 以上が必要なのですね。Google App Engine のインストール時に Python 2.5 以上がないと警告が出ましてインストールは途中で終了します。。。

Python はこちらからダウンロードできるようです。

さて、ここからやっと Google App Engine を使う準備が整ったことになりますね。

私の環境は Mac OS X (10.4.11、つまり Tiger) を使っています。

Google App Engine は /usr/local/google_appengine/ にインストールされました。

 # find /usr/local/google_appengine/ -type f

としてみると Django が。へー。

スタートガイドでしょ。

さてインストールが完了したら早速触ってみます。まずは日本語版のスタートガイドを最初から順番においかけてみます。こういうときは写経です。

    * 概要
    * 開発環境
    * Hello, World!
    * webapp フレームワークの使用
    * ユーザー サービスの使用
    * webapp を使ったフォームの操作
    * データストアの使用
    * テンプレートの使用
    * 静的ファイルの使用
    * アプリケーションのアップロード

このスタートガイドでは最初は文字列 helloworld だけを表示するアプリをゲストブックアプリに成長させていくストーリーになっています。早速、「webapp フレームワークの使用」から「コンテンツを次のように置き換えます。」とどんどん上書きしていく形をとっています。(もし自分の心が写経モードだったときには章単位で新しいファイルを用意して、コピペではなくてちゃんとタイプしていくというのがいいですね。今回私はそのやり方にしました。)

感想

とても簡単にアプリの開発ができる感じですね。Rails や Catalyst のように開発用のミニサーバで小さく作っていくスタイルはモチベーションが高まっていきますね。

Google App Engine はなかなか良さげです。早速自作アプリを作成しようと今コードを書いています。まだ Python をはじめて間もない、というか Google App Engine に触れるまでは Python のコードを書いたことがなかったので、これから一般的に使われるモジュールなどを知りたいな。おそらく Google App Engine で使えるモジュールと使えないモジュールがあると想像しているので、その辺りの違いなんかもこれから勉強したいです。

Python も結構面白いよ。

おまけ

最後にいくつか特記しておきます。

データストアの使用
ここで以下のエラーで詰まりました。

Traceback (most recent call last):
  File "/usr/local/google_appengine/google/appengine/ext/webapp/__init__.py", line 484, in __call__
    handler.get(*groups)
  File "/Users/takatsugu/GAE/helloworld/helloworld5.py", line 17, in get
    greetings = db.GqlQuery("SELECT * FROM Greeting ORDER BY date DESC LIMIT 10")
  File "/usr/local/google_appengine/google/appengine/ext/db/__init__.py", line 1496, in __init__
    from google.appengine.ext import gql
SystemError: Parent module 'google.appengine.ext.db' not loaded

よく調べてみると、/usr/local/google_appengine/demos/guestbook にこの章と似たようなサンプルがありました。コードを見比べても特に大きな違いは見られなかったので、試しにその demos/guestbook を起動しましたら、期待された動作が出来ました。「やっぱり何か違うのかなー」と思って、dev_appserver.py helloworld/ としたら、今度は上記のエラーを出力せずに起動しました。もしかして  db,Model はサーバ起動時に生成されるのかな?これまで、 Hello, World!、 webapp フレームワークの使用、 ユーザー サービスの使用、 webapp を使ったフォームの操作、とずっと dev_appserver.py を Ctrl + C で終了させずにきたのでした。。。

とりあえずこのエラーが出たときには dev_appserver.py が起動していたら Ctrl + C で一旦停止した後、再び dev_appserver.py 起動するというのが対処法っぽいですね。(将来的にはgoogle_appengine か dev_appserver.py などのフレームワーク関係のコードを見てみてることにします。とりあえずは「開発用 Web サーバ」の章が参考になります。)

テンプレートの使用
ここでは以下のようなエラーが出ました。

Traceback (most recent call last):
  File "/usr/local/google_appengine/google/appengine/ext/webapp/__init__.py", line 484, in __call__
    handler.get(*groups)
  File "/Users/takatsugu/GAE/helloworld/helloworld6.py", line 34, in get
    self.response.out.write(template.render(path, template_values))
  File "/usr/local/google_appengine/google/appengine/ext/webapp/template.py", line 80, in render
    t = load(template_path, debug)
  File "/usr/local/google_appengine/google/appengine/ext/webapp/template.py", line 125, in load
    template = django.template.loader.get_template(file_name)
  File "/usr/local/google_appengine/lib/django/django/template/loader.py", line 79, in get_template
    source, origin = find_template_source(template_name)
  File "/usr/local/google_appengine/lib/django/django/template/loader.py", line 54, in find_template_source
    mod = __import__(module, globals(), locals(), [attr])
SystemError: Parent module 'django.template' not loaded

ここでもデータストアの使用のときと同様に dev_appserver.pl を再起動したところエラーが解消されました。テンプレートエンジンには Django テンプレート エンジン を使っているんですねぇ。本家サイトでは記法が詳しく書かれています。

05 December 2008

MacBook のメモリ購入!

MacBook で色々やっていたら空きメモリが 5 MB とかひどいdownことになっていたので、搭載されているメモリを見たら 512 MBでしたcoldsweats02デフォルトのままだったbearing

同僚に話したら「最大まで引き上げるべし」と言われたので、ネットでメモリを調べてみました。私の MacBook (MA254J/A) は最大で 2G まで搭載可能ということなので、1G x 2 を探しましたdash

1G で 税込 1,380 円 のメモリを発見しましたので、2 つ購入し、送料を加えて、2,970 円 (12/6 18:00 追記: 配送の関係から送料が増えて 3,159 円でした。) で 2G のメモリを購入しました!安いすね!

到着するのが楽しみです。

こちらを購入しました。

[送料¥210〜]【永久保証・相性保証付】トランセンド ノートパソコン用メモリ:Transcend SODIMM DDR2 PC2-5300 1GB (JM) [メ1]

Continue reading »

03 December 2008

もずくブーム

もずくブーム 社内では空前のもずくブームです。

お戻し方:
水に10~15分位浸けておき、その後軽く水でほぐして下さい。
太さ、歯ごたえ共に元に戻ります。あまったもずくはフリーザーパックなどに入れ冷蔵庫で保管して下さい。
味はないので後付けしないとだめだそうです

と同僚の人が言っていました。

seealso:

沖縄もずくでエコ | 沖縄県もずく養殖業振興協議会 

Access Ranking

Powered by Six Apart
Sponsored links