社内向け。
tokibitoの知識が偏ってるので、もっといろいろ知りたいなら社内チャットで他の人にも聞くこと。
Python
easy_install
setuptoolsかdistributeというパッケージで使えるコマンド。
@aodag 曰くsetuptools使わずに、distribute使えという話。
インストールはこんな感じ。
$ curl -O http://python-distribute.org/distribute_setup.py $ python distribute_setup.py
Welcome to Distribute’s documentation! — Distribute documentation
pip
パッケージのインストールに使う。後述のvirutualenvとかを使うならこれ。
インストールスクリプトで入れるか、easy_installなどで入れる。
$ sudo easy_install pip
virtualenv
仮想環境。プロジェクトごとにモジュールセットを変えたい時とかに使う。
$ sudo pip install virtualenv virtualenvwrapper
buildoutとかも見ておくべき。
ipython
手っ取り早くコード補完とか、エラー時のカラー表示とか使えるのでインストールしとこう。
$ pip install ipython
smtpd
標準モジュールにSMTPサーバがある。開発時などに使うと便利。
$ python -m smtpd -n -c DebuggingServer localhost:5025
こんな感じでモジュール指定で起動するか、ファイル保存などの拡張を施したスクリプトを使ったりするなど。
debugsmtpd.py
SimpleHTTPServer/CGIHTTPServer
HTMLの記述やCGIの開発でWebサーバの用意が面倒ならこれを使おう。
$ python -m SimpleHTTPServer
$ python -m CGIHTTPServer
sphinx
ライブラリのドキュメントなどを書くならsphinxで。
Overview — Sphinx 1.4.3 documentation
Sphinx-Users.jp — Python製ドキュメンテーションビルダー、Sphinxの日本ユーザ会
$ pip install sphinx
Django
ドキュメント
本家 Django documentation | Django documentation | Django
日本語(1.0) Django ドキュメント — Django v1.0 documentation
日本語(1.1未完) http://docs.nullpobug.com/django-doc-ja/trunk/
django-command-extensions
最低限 runserver_plus は使ってみる。
Google Code Archive - Long-term storage for Google Code Project Hosting.
$ pip install django-extensions werkzeug
settings.pyのINSTALLED_APPSに 'django_extensions' を追加。
manage.pyコマンドがたくさん増える。
$ python manage.py runserver_plus
エラー時のデバッガで対話シェルを使えたりするので使おう。
テンプレートのエラーの場合には、テンプレート上の該当箇所の表示を行ってくれないので、 runserver のほうでデバッグすると良い。
django-debug-toolbar
SQLやテンプレートのコンテキストを調べたりするときに使う。
http://robhudson.github.com/django-debug-toolbar/
$ pip install django-debug-toolbar
settings.pyのINSTALLED_APPSとMIDDLEWARE_CLASSES, INTERNAL_IPS を設定する。
継承した設定でのみ有効にするなら、以下のような書き方が良いかも。
MIDDLEWARE_CLASSES = list(MIDDLEWARE_CLASSES) + [ 'debug_toolbar.middleware.DebugToolbarMiddleware', ] INTERNAL_IPS = ( '127.0.0.1', ) INSTALLED_APPS = list(INSTALLED_APPS) + [ 'debug_toolbar', ]
クエリ発行が多いページだと、debug-toolbarの表示が極端に重くなるので注意。
社内で使われてるモジュールなど
社内ライブラリ(公開されてるもの)と社員などが作ってるもの。
- beproud / django-bpmobile — Bitbucket Djangoのケータイサポート
- beproud / bpssl — Bitbucket DjangoのSSL使用時のサポート
- tokibito / python-bpmappers — Bitbucket オブジェクトのシリアライズサポート
- tokibito / django-skypehub — Bitbucket skypebotフレームワーク
他にも多数あるので、チャットで聞くなり、社内リポジトリ見るべし。