PPCにUbuntu11.4をインストールする

PPCにUbuntu11.4をインストールしようと思ったのですが、
releaseはされていないようです。
ですので今回は10.10をインストールしてからアップグレードしようと思います。
ただし、表示部分などハードウェアが追いつかない部分がありますのでご了承ください。
(他のディストリビューションもPPC対応は無くなっているので寂しい限りです。)

PowerPC – Ubuntu Wikiから
isoファイルをダウンロードします。

私はmac miniに入れるので、altキーを押してブートメニューを開きCDを選択して
インストールを開始します。
OSXでインストールディスクを作成する場合は、フォーマットに気をつけましょう。
ディスクユーティリティで作成すれば確実だと思います。
個人的に毎回はまっているのでここでメモしときます。

でインストールが終了し、再起動してOSを立ち上げると、親切にも11.4にアップグレード
しますか?と聞かれるので、[はい]を押せば後は勝手に処理が進みます。

入れてみた感想

1. 一応正常に動く(PPCでもう少し頑張れそう)
2. 見た目は変わらない。クラシック表示になっている模様

以上。簡単ですがこの手の記事が少なかったのでエントリーしておきます。

MacのMail通知にGrowlを使う

前はThunderBirdを愛用していたのですが、今は新しい職場で云われるがままにMailを使い続けています。
でモノグサなだけですが、Mail用のGrowlプラグインがあることを知らず、今日初めて入れてみました。

GrowlMail

ここの[GrowlMail Google Code Hosting Downloads]というリンク先に
1.2と1.3をダウンロード出来るようになっていました。
1.3はOSX1.7以降に対応したバージョンですので、僕は1.2をインストールしています。

インストールはパッケージ化されていますので簡単です。

Blog再開します

約1年半このブログをほったらかしにしていました。
ずっと書こうと考えていたのですが、状況の変化が激しくてついつい後回しになっていました。

今年度から新しい職場へ転職し、少しは心に余裕が出てきたのでブログを再開しようと思います。
新しい職場は、子供の頃夢だったゲーム会社です。
この辺りの技術は守秘義務により書きませんが、僕がすることは前と変わらずWebエンジニアですので
オープンソースネタやAppleネタを日記ぐらいの軽い気持ちで書いていきたいと思います。
他の凄いブロガーさんとかを意識しだすと何も出来ないですから、気張らずやります。
ただ、情報は責任を持って掲載しますが、もし間違いがありましたらご指摘頂けると助かります。
どうぞ宜しくお願い致します。

[Zend Framework]Zend_Db_Tableのメタキャッシュ時の不具合について

メタ情報をキャッシュする為によく、
[php]
Zend_Db_Table_Abstract::setDefaultMetadataCache($cache);
[/php]
とかで一括で全テーブルのメタキャッシュを有効にすると思います。

ですが、この方法で利用するとバージョン(再現したのは1.10.1)にもよるのかもしれませんが、以下のようなエラーが出力されてしまいます。

Failed saving metadata to metadataCache

将来すぐに修正していただけると思いますが、今回はZend_Db_Tableは元々継承させて使っていましたので、問題になっているメソッドを上書きして修正しました。
[php]
class My_Db_Table extends Zend_Db_Table_Abstract
{
protected function _setupMetadata()
{
try {
return parent::_setupMetadata();
} catch (Exception $e) {
// Unable to save metadata
$this->_metadataCache = null; // 2010-03-13追記
return self::_setupMetadata(); // 2010-03-13追記
}
}
}
[/php]

これで今のところ安定しています。

訂正 2010-03-13

 ご指摘いただきまして例外発生時に、_metadataCacheを初期化後リトライするように修正しました。この処理を入れないと、その後必要なメタ情報がないので結局エラーになっておりました。
 そもそもなぜこのようなエラーが出るかは原因が不明なのですが、同じような症状に悩まれている方のご助力になれば幸いです。

[ZendFramework] ZFDebugを使ってみる

ZFDebugというのはメモリ、キャッシュ、ファイル、実行時間などを画面に出力してくれると言うことでとにかく使ってみました。

参考

ZFDebug – Joakim Nygård

使ってみる

zfdebug – Project Hosting on Google Code
googlecodeで管理されており、上のURLからダウンロードできます。現在はver1.5が最新ですのでこれを利用してみます。

ZFDebugはZend_Controller_Pluginで出来ていますので簡単に実装することが出来ます。
Bootstrapを利用している場合の実装サンプルも用意されていました。
[php]
protected function _initZFDebug()
{
$autoloader = Zend_Loader_Autoloader::getInstance();
$autoloader->registerNamespace(‘ZFDebug’);

$options = array(
‘plugins’ => array(‘Variables’,
‘Database’ => array(‘adapter’ => $db),
‘File’ => array(‘basePath’ => ‘/path/to/project’),
‘Memory’,
‘Time’,
‘Registry’,
‘Cache’ => array(‘backend’ => $cache->getBackend()),
‘Exception’)
);
$debug = new ZFDebug_Controller_Plugin_Debug($options);

$this->bootstrap(‘frontController’);
$frontController = $this->getResource(‘frontController’);
$frontController->registerPlugin($debug);
}
[/php]

ZFDebug専用にプラグインが用意されています。

Auth
Cache
Database
Exception
File
Html
Memory
Registry
Text
Time
Variables

これらの中から利用したいデバッグを選びインスタンスを作成するときに設定する訳です。
プラグインを追加することも簡単ですので、必要に応じて自作してみてもよいかもしれません。

プラグインを実行するとページの下部にデバッグ結果が表示されます。
2009-scienta_debugbar
クリックすると詳細が表示されますので、使い易くなっています。

[jQuery] GoogleAPIsで用意されているCSSフレームワーク一覧

jQueryのテーマを簡単に変えることができるCSSフレームワークは、googleのapisでも管理されているので、手軽に色々なテーマで確認できてとても便利だったので、使えるリンクを一覧にしてみた。
※ ちなみに、バージョンは1.7.2です。


http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/start/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/start/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/ui-darkness/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/ui-lightness/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/redmond/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/sunny/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/overcast/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/le-frog/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/flick/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/pepper-grinder/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/eggplant/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/dark-hive/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/cupertino/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/south-street/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/blitzer/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/humanity/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/hot-sneaks/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/excite-bike/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/vader/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/mint-choc/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/black-tie/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/trontastic/jquery-ui.css

http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/swanky-purse/jquery-ui.css

標準的なものを一覧にしたので、もしかしたらもっと他のテーマもあるかもしれない。

[Zend Framework] コントローラープラグインで使えるインターフェース

直ぐに忘れるのでプラグインのテンプレをメモ。

調べもので流れ着いた方はこちらもどうぞ。
Zend Framework: Documentation: プラグイン – Zend Framework Manual

[php]

class My_Plugin_Test extends Zend_Controller_Plugin_Abstract
{
public function routeStartup(Zend_Controller_Request_Abstract $request)
{

}

public function routeShutdown(Zend_Controller_Request_Abstract $request)
{

}

public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request)
{

}

public function preDispatch(Zend_Controller_Request_Abstract $request)
{

}

public function postDispatch(Zend_Controller_Request_Abstract $request)
{

}

public function dispatchLoopShutdown()
{

}
}

[/php]

こんな感じです。基本上から順番に処理されます。で用途にあった場所に処理を書けばOKなわけです。
今まであまりコントローラプラグインは使わなかったけど、Zend_Aplicationと組み合わせるとかなり扱い易かった。
これからはドンドン使おう。

[Zend Framework] Zend_View_Helper_HeadTitleの内要をクリア

簡単に出来ると思ったら、以外と難しかったのでメモ。
※これが正しいかかなり怪しいです!

/* clear */
    $headKeys = $this->view->headTitle()->getKeys();
    if (count($headKeys) > 0) {
    	foreach ($headKeys as $headKey) {
    	        $this->view->headTitle()->__unset($headKey);
    	}
    }

一括で初期化してくれるようなメソッドは、探したけど無かった。
AllayObjectを利用しているので簡単には出来ないのかな?とも思った。
とりあえず、上記のコードでクリアできたので良しとしよう。
 
でも、きっとクリアしないといけないような使い方をしているのが、そもそも違うような気がする。

[Mac] Pomodoroで時間管理

最近時間を節約するにはどうしたら良いだろうかと悩んでいて、丁度良さそうなアプリがあったので入れてみた。
 

Pomodoro – 時間管理へのアジャイル的アプローチ

 
このアプリはストップウォッチであって、自分で決めた時間がきたら任意のコマンドを実行することができる。タスク管理にストップウォッチ機能がついた感じかな。
インストールはダウンロードして任意の場所にアプリを配置して終了。
 
基本的な使い方は

command+opt+ctrl+↑:作業開始
command+opt+ctrl+↓:クリア
command+opt+ctrl+←:一時停止
command+opt+ctrl+→:再開

 
ツイッターとも連携して、アクションがある毎にかってにつぶやいてくれる。
使っているアカウントでタスクをつぶやいてしまうのは恥ずかしい気がするけど、
その恥ずかしさが作業効率をあげるのかもしれない。
 

追記

私が使っているmax osx10.6でこのアプリを起動すると、マシン性能が著しく低下しているので、利用するのは辞めてます。たぶん何かのアプリと競合しちゃってるっぽい。