主夫ときどきプログラマ

データベース、Webエンジニアリング、コミュニティ、etc

5分で簡単セッティング、MacでLet's GAE

MacでGoogleAppEngineの開発環境を構築する手順のまとめ
Mac OS X 10.6.6

1.pythonをインストールする

OS X には標準でpythonはインストールされていますがこのバージョンは2.6なのでGAEでは利用できません。
GAEで利用できるpythonのバージョンは2.5なのでpython2.5をインストールする必要があります。

1.1 MacPorts からインストールする

MacではMacPortsというパッケージ管理システムを利用していろいろなソフトウェアを手軽にインストールすることができます。
これを利用してpython2.5をインストールします。

まずはMacPortsをインストールしましょう。
http://www.macports.org/
MacPortsの詳しいインストール方法はこちら
http://blog.soi33.org/archives/17

1.2 python2.5 と python_selectのインストール

MacPortsをインストールすることで、python2.5を簡単にインストールできるようになりますが、
そのままでは2.5と2.6が混在しバージョンの切り替えが困難になってしまいます。
そこで、登場するのがpython_select。pythonのバージョンを簡単に切り替えてくれます。
ではMacPortsを使ってインストールしましょう。

$ sudo port install python25
$ sudo port install python_select

これでpythonの準備完了です。

# pythonのバージョン確認
$ python --version
Python 2.6.6
 
# pythonの切り替え
$ sudo python_select python25
Selecting version "python25" for python
$ python --version
Python 2.5.5

2. GoogleAppEngine SDKのインストール

GoogleAppEngineの開発には App Engine Python ソフトウェア開発キット(SDK)を使用します。
http://code.google.com/intl/ja/appengine/downloads.html
ここからMac OS X 用のパッケージをダウンロードしインストールします。

ダウンロードしたファイルをダブルクリックし展開すると、GoogleAppEngineLancher.app が現れます。
これをアプリケーションフォルダにドラッグ&ドロップしてインストール完了です。

2.1 実行してみよう

インストールしたGAELancherを実行してみます。
はじめて実行する際は以下のようなウィンドウでリンク作成を聞かれるのでOKをクリックしてください。
(出ない場合は[Google App Engine Lancher]メニューから[Make Symlinks]を選択します)

dev_appserver.py, appcfg.py の2つのコマンドが実行できるようになります。

$ dev_appserver.py
$ appcfg.py
# このまま実行するとヘルプが表示されます

これでGAEPythonの開発環境が整いました!

3. eclipse 環境のセットアップ

引き続きeclipse での環境をセットアップしましょう。

3.1 eclipse のインストール

ここからeclipseをダウンロードします。
http://eclipse.org/downloads/
いろいろなパッケージがありますが、Eclipse IDE for Java Developersでよいでしょう。
プロセッサが Intel Core 2 Duo の場合は64bitを選択しましょう。
(これはシステムプロファイラから確認できます)

ダウンロードしたファイルを解凍し、作成されたフォルダにeclipse本体が入っているので
そのまま使いたい任意のディレクトリに配置してください。
早速 Eclipse.app を実行しましょう。

3.2 pluginのインストール

eclipsepythonを利用するには PyDev plugin のインストールが必要です。
[Help] > [Install New Software ...] をクリックします。

表示されたウィンドウの Work with: に以下のURLを入力します。
http://pydev.org/updates
表示される [PyDev] [PyDev Mylyn Integration (optional)] をチェックし Next ボタンをクリックし
そのまま進んでいけばインストールが完了します。

3.3 PyDevの設定

引き続きPyDevの設定を行います。
[Eclipse] > [環境設定...] をクリックします。
左のパネルから [Pydev] > [Interpreter - Python] を選び、[New...]ボタンから登録します。
Interpreter Name: には Python
Interpreter Executable: には /usr/bin/python を指定しましょう。
あわせてpython2.5も設定するとpythonのバージョンを切り替えられる用になります。



これで環境設定はおしまいです。
Googleチュートリアルで Let's GAE Python!!
http://code.google.com/intl/ja/appengine/docs/python/gettingstarted/


組織で使える、仕事の効率を5倍アップさせる9のメール術


現代のビジネスでEmailというのは欠くことのできない連絡ツールとなっていますが、
その活用方法はまだまだ個人任せになっているのが現状で、
組織の中にあっても有効に使われていない場合が数多く見られます。

そこで、組織で使うことで全体の生産性を向上させる9のメール術を考えました。


メールを開かずに判断できるようにするために

1. 件名はラベリングし内容を予想しやすくする

【重要】【緊急】などメールの件名にラベル付けをして件名を見た時点で内容を判断できるようにします。
集中して作業をしている時など、メールを開く前に内容を予想できれば、メールを読む手間を省くことができます。
どういう時にどのラベルを使うのかは組織にあったものを事前に定義しましょう。

例)
【緊急】 :即時対応が必要なものに付ける
【重要】 :対応は必要だが急ぎではないものに付ける
【連絡】 :連絡事項につける
【進捗】 :進捗報告時に付ける
2. 件名に「Re:~」を連続させない

件名に「Re:~」が連続すると件名が分からなくなってしまいますね。
メーラーの設定やメーリングリストなどを利用する際に気をつけましょう。

3. 差出人名は名前の後に会社名

メーラーに表示された時に差出人が隠れないようにするために差出人を「名前 組織名」の順にしましょう。
また、組織内でフォーマットが揃っていれば、外部からのメールかどうかも判断しやすくなります。

良い例)田中太郎 (株)大日本商事
悪い例)株式会社大日本商事 田中太郎
4. 件名だけで用件を終わらせる

件名だけで内容が伝われば、受信者の時間節約につながります。
書く方も長々とメールを考える必要もなくなりますね。

例)
【連絡】7月19日14時からMTGしましょう。1Fのスタバにて。

メールを情報源として活用するために

5. メールスレッドを意識する

メールのやり取りで返信を続けると1つのスレッドが作成されます。
メールを後から見返す際にスレッドとなっていると振り返りが容易になります。
関係のないメールに返信をしたり、件名を途中で変えたりしてはいけません。

6. 1つの話題に特化した内容にする

話題が一つであれば一つのメールスレッドで内容がまとまりますし、
話が脱線することも少なくなります。

7. 最後にはまとめメールを

メールでの議論を行った場合は最後にまとめメールを送りましょう。
後から内容を見返す際にすべてを読み返す手間が省けます。
長くなる場合は途中にもまとめメールを送りましょう。


セキュリティ性を高めるために

8. 重要なファイルはパスワードを付けて圧縮する

サーバ接続情報など、重要なファイルはパスワードを付けて圧縮しましょう。
解凍用のパスワードは電話で連絡するなど方法を選びましょう。
インターネット経由で伝える場合にはセキュアな通信路を選択しましょう。
googledocsのシェアドキュメントなどが有効に利用できます。

9. メールの容量は1M以下にする

添付ファイルを送信する場合は1M以下に抑えるようにしましょう。
大きいフィイルをダウンロードするには時間がかかってしまいます。
もし1Mを越える場合は、添付ファイルを圧縮するか、複数のメールに分けてファイルを添付しましょう。



いかがでしょうか。
ぜひ試してみてください。

ruby プログラムから ActiveRecord を使う

ruby から activerecord をつかう。

  1 require "rubygems"
  2 require "active_record"
  3 require "logger"
  4 
  5 ActiveRecord::Base.logger = Logger.new("debug.log")
  6 ActiveRecord::Base.establish_connection(
  7   :adapter  => "mysql",
  8   :host     => "localhost",
  9   :username => "foo",
 10   :password => "bar",
 11   :database => "test",
 12   :socket   => "/var/lib/mysql/mysql.sock",
 13   :encording  => "utf8"
 15 )
 16
 17 class Article < ActiveRecord::Base
 18   belongs_to :user
 19 end
 20
 21 class User < ActiveRecord::Base
 22   has_many :articles
 23 end

これでrailsと同じようにActiveRecordを通常のrubyプログラムで利用できます。
5行目はロガーの設定。

# UserId:10 のユーザーの記事を取得する
User.find(10).articles.each { |article|
  puts article.titlte
  puts article.body
}

こんな感じで使えます.

Amazon API-Tools Install for fedora

Ec2のebsブートインスタンスにAPI-Toolsをインストールしたときのメモ
OsはFedora8

ツールのダウンロード

wget でファイルをダウンロードし、ダウンロードした ec2-api-tools.zip を解凍します。
解凍するとec2-api-tools-1.3-57419というフォルダが作成されます.

$ wget "http://www.amazon.com/gp/redirect.html/ref=aws_rc_ec2tools?location=http://s3.amazonaws.com/ec2-downloads/ec2-api-tools.zip&token=A80325AA4DAB186C80828ED5138633E3F49160D9"
$ unzip ec2-api-tools.zip

このページからもダウンロードできます
http://developer.amazonwebservices.com/connect/entry.jspa?categoryID=88&externalID=351

ツールの実行にはJavaランタイムが必要なので事前にインストールしておきましょう。
id:masayuki14:20100208

インストール

解凍してできたティレクトリを移動します。今回は /usr/local/ec2 に配置します。
既にこのディレクトリにはamitoolsがあるのでついでに同じような名前にリネームしましょう。

$ mv ec2-api-tools-1.3-57419 /usr/local/ec2/apitools

環境変数の設定

つづいて環境変数の設定です.
/etc/profile.d/ec2.sh を作成し、以下の環境変数を設定します.

$ export EC2_HOME=/usr/local/ec2/apitools
$ export PATH=$PATH:$EC2_HOME/bin
$ export EC2_PRIVATE_KEY=/root/pk-*****************************.pem
$ export EC2_CERT=/root/cert-*****************************.pem

環境設定の設定後、次のコマンドを実行してバージョン情報が返ってきたらインストールの完了です。
上記の設定ではログイン時に環境変数が設定されるので、一度ログインしなおすといいかもしれません。

$ ec2ver
1.3-57419 2010-08-31

※事前にJavaのPathが通っていることが必要です.

おしまい