勉強中。

MochiKitを勉強中。
というか、とあるライブラリを使おうと思ったらMochiKit必須だったのでダウンロードしてみて触っています。
結構おもしろいかも。

カレー

近所を自転車で走っていたらインドカレー屋さんがいつのまに出来ていたのでテイクアウトのチキンカレー(600円)を買ってみた。
ナンかライスか選べたのでナンを注文。そしたら、こんなにデカイのが付いてきた。これって結構お得では。
しかもちゃんと釜(タンドールだっけ?)で作られた焼きたて。
f:id:hideack:20070909152449j:image
カレーの味も辛いけど、くどくない辛さで美味しかったです。*1
いいお店を見つけられてちょっと幸せ。

*1:辛いのは苦手なのに食べる人

automysqlbackup

MySQLのバックアップ用のスクリプトを自分で書かなきゃだめかなぁ。と思っていたのですが、調べると世の中便利なものがあるようです。
GIGAZINEでも取り上げられていたAutoMySQLBackup。
使ってみた。

1.sourceforgeからダウンロードする
http://sourceforge.net/projects/automysqlbackup/

2.MySQLの管理者ユーザのホームにスクリプトを置く

  • 併せてパーミッションを適宜設定 (chmod 700 automysqlbackup.sh.2.5) みたいな感じで。

3.スクリプトの内部を編集する

  • 本体はbashのスクリプト。適宜変数の箇所を変える
    • USERNAME
    • PASSWORD
      • MySQLに設定のパスワード
    • DBHOST
      • スクリプト設置の箇所とホストが一緒なら初期設定でOK
    • DBNAMES
      • データベース名、複数バックアップ指定するときはスペースで区切る
    • BACKUPDIR
    • MAILCONTENT
      • メール通知する場合のメールの内容。以下から選べる模様。
        • long : ログファイルのみ送付
        • files: ログファイルとダンプしたSQLファイルを添付して送付
        • stdout: スクリプトの標準出力を送付
        • quiet: エラー発生時以外はメール送付しない
    • MAILADRS
      • バックアップのログ等を通知する先。内容は、"MAILCONTENT"の箇所で設定

4. cronに設定する

  • crontab -eで編集画面を開いて

0 5 * * * /home/foo/automysqlbackup.sh.2.5

以上の手順でバックアップが取られる。意外と単純、そして便利。
ちゃんとバックアップ内容もgzで圧縮されますし、保存先にもきれいに分別と名前付けされて保管されます。

昨日ぬれた靴が激しく臭い件

これ、きちんと昨日のうちに乾かすなり洗わなければダメだったんだろうなぁ。と、後悔。
暫定対策としてファブリーズ投入。

touch!!

NINTENDO DS(あるいはPSP)…を買うつもりで貯めていたお金がいくらか加算されて別の用途に投入されました…。
私が携帯ゲーム機を持つのはもうしばらく先のようです。
f:id:hideack:20070906195650p:image

ああああ。

余計なことを考えない様にすると、余計に考えてしまう。と。
で、なんとかしようとして暴走して自分で地雷踏んで自滅する。

EthnaでCLI(コマンドラインインターフェース)用のプログラムを書く

Ethnaではゲートウェイを変更することでwebアプリ用のプログラムだけではなくて、サーバーで定期稼働させたりするコマンドラインのプログラムを作ることもできる。
ethnaコマンドを使ってスケルトン作成。feedcrawle2というプログラムの名前で作ってみる。

% ethna add-entry-point --gateway=cli feedcrawle2

file generated [/Users/〜/pj/feeddown/skel/skel.entry_cli.php -> /Users/〜/pj/feeddown/bin/feedcrawle2.php]
action script(s) successfully created [/Users/〜/pj/feeddown/bin/feedcrawle2.php]
file generated [/Users/〜/pj/feeddown/skel/skel.action_cli.php -> /Users/〜/pj/feeddown/app/action_cli/Feedcrawle2.php]
action script(s) successfully created [/Users/〜/pj/feeddown/app/action_cli/Feedcrawle2.php]

これを実行すると、Ethnaのプロジェクトディレクトリに上の実行結果の通りファイルが作成される。

  • ~/bin/feedcrawle2.php
  • ~/app/action_cli/feedcrawle2.php

あとは、webアプリをEthnaで書くときと同じ様にapp/action_cli/以下のModelをコーディングしていけばよい。
プログラムの実行は、

php -q bin/feedcrawle2.php

とすればよい。
ActionClassを継承しているので、$this->backend等々、普通に使える。
ただし、コマンドラインの引数を取得する仕組みは無い*1ので、グローバル変数 $_SERVER['argv']から取得する形になりそう。(これが正しいのかは現状、謎。)

今までこの仕組み使わずにそのまま直書きしていたのは愚かであった。徐々に書き直して行こうと思う。

*1:無いように思われる。というのが正解。