2011-01-01から1ヶ月間の記事一覧

Rubyメソッドのアラウンドエイリアスについて

Rubyで末尾再帰最適化をする。を読んで思ったこと。 このエントリやメタプログラミングRubyでメソッドのアラウンドエイリアスを定義する際に、古いメソッドに別名をつけてから新しいメソッドを定義しています。以下はメタプログラミングRubyの例。 class Str…

Emacsのauto-insertでテンプレートを自動生成する

プログラムの単体テストを書く場合や、各種フレームワークを使用してプログラムを書く場合などは、ある規則にそってファイル名を付けると思います。(例えば単体プログラムのソースファイル名は"モジュール名_test.py"(Pythonの場合)など) Emacsのauto-insert…

PythonでWEBページをクローリングする時のTips

PythonでWEBページをクローリングする時のTipsをまとめてみました。 urllib2.urlopenのデフォルトのユーザーエージェントを変更する PythonでURLを開くには、urllib2.urlopenします。 urllib2.urlopenは、デフォルトで"Python-urllib/(Pythonのバージョン)"…

Djangoのデータベースをsqlite3からMySQLに移行したときにハマったこと

sqlite3はデータベースが1つのファイルで簡潔するので、バックアップがファイルのコピーで済む等、扱いが非常に簡単です。 そのため僕はDjangoのアプリケーションを作るときは、sqlite3を使用しています。 しかし、sqlite3ではトランザクション実行時にファ…

serversman@vpsでキャッシュの使用量が0と表示される件について

serversman@vpsでfreeコマンドでメモリの使用量を確かめようとすると、キャッシュの使用量が0と表示されます。 > free -m total used free shared buffers cached Mem: 1024 234 789 0 0 0 -/+ buffers/cache: 234 789 Swap: 0 0 0(ちなみにOSはCentOSです。…