<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Oceanic &#124; 人生海海</title>
	<atom:link href="http://tzangms.com/blog/feed" rel="self" type="application/rss+xml" />
	<link>http://tzangms.com/blog</link>
	<description>你好, 我走超短文路線 XD</description>
	<pubDate>Wed, 23 Jul 2008 16:45:05 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
	<language>en</language>
			<item>
		<title>最後的流程, Wave Burner</title>
		<link>http://tzangms.com/blog/music/1291</link>
		<comments>http://tzangms.com/blog/music/1291#comments</comments>
		<pubDate>Tue, 22 Jul 2008 16:51:10 +0000</pubDate>
		<dc:creator>tzangms</dc:creator>
		
		<category><![CDATA[Music]]></category>

		<category><![CDATA[logic]]></category>

		<category><![CDATA[wave burner]]></category>

		<guid isPermaLink="false">http://tzangms.com/blog/?p=1291</guid>
		<description><![CDATA[
Mastering, 以我業餘的知識, 應該就是要輸出母片前, 也就是壓片前的最後一個步驟, 至少要讓每首歌的音量平衡, 而不會前一首歌太大聲, 後一首太小聲, 因而造成聽覺上太大的落差。 hmm~ 當然不只這麼簡單, Mastering 可是很深的一門學問, 這也就是為什麼常常唱片都要送到外國去給大師做 Mastering。 不過由於太深奧, 我說錯也很正常 XD (誤) 應該還是看看 Wiki 怎麼說吧! XD

原本在 Logic 錄好就直接在 Output 1-2 直接掛上 Ozone 3 來處理, 可是問題是每首歌的音量都不一樣, 導致我每一首都輸出之後, 要每個都開來聽, 但是這個方法, 實在是太土法煉鋼了 XD 上禮拜想說 Wave Burner 這個軟體一定有他存在的道理, 所以就打開來玩看看, 沒想到, 還真的是很適合用來作 Mastering 跟母片輸出的一個軟體阿!!!
所以今天把所有的歌都把 Ozone 3 外掛取消, 把 balance 中心調過之後, 重新輸出一遍, 然後全部都匯入到 Wave Burner [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/tzangms/2693226156/" title="wave burner by tzangms, on Flickr"><img src="http://farm4.static.flickr.com/3236/2693226156_404150496b.jpg" width="500" height="313" alt="wave burner" /></a><br />
Mastering, 以我業餘的知識, 應該就是要輸出母片前, 也就是壓片前的最後一個步驟, 至少要讓每首歌的音量平衡, 而不會前一首歌太大聲, 後一首太小聲, 因而造成聽覺上太大的落差。 hmm~ 當然不只這麼簡單, Mastering 可是很深的一門學問, 這也就是為什麼常常唱片都要送到外國去給大師做 Mastering。 不過由於太深奧, 我說錯也很正常 XD (誤) 應該還是看看 <a href="http://en.wikipedia.org/wiki/Mastering">Wiki</a> 怎麼說吧! XD<br />
<span id="more-1291"></span><br />
原本在 <a href="http://www.apple.com/logicstudio/logicpro/">Logic</a> 錄好就直接在 Output 1-2 直接掛上 <a href="http://www.izotope.com/products/audio/ozone/">Ozone 3</a> 來處理, 可是問題是每首歌的音量都不一樣, 導致我每一首都輸出之後, 要每個都開來聽, 但是這個方法, 實在是太土法煉鋼了 XD 上禮拜想說 Wave Burner 這個軟體一定有他存在的道理, 所以就打開來玩看看, 沒想到, 還真的是很適合用來作 Mastering 跟母片輸出的一個軟體阿!!!</p>
<p>所以今天把所有的歌都把 Ozone 3 外掛取消, 把 balance 中心調過之後, 重新輸出一遍, 然後全部都匯入到 Wave Burner 裡。 這樣就可以很容易的來處理 Mastering 的動作, 不過光把每一首歌曲輸出, 這之間等待的時間還真夠久, 像是眉頭有 26 軌, 這台 Core 2 Duo 2.0, 3G RAM 的 Macbook  就得花上 5 分多鐘 ~&#8221;~</p>
<p>總之, 唱片應該差不多了吧! 有沒有人認識壓片廠可以介紹的阿?</p>
]]></content:encoded>
			<wfw:commentRss>http://tzangms.com/blog/music/1291/feed</wfw:commentRss>
		</item>
		<item>
		<title>ToyCamera</title>
		<link>http://tzangms.com/blog/mac/1285</link>
		<comments>http://tzangms.com/blog/mac/1285#comments</comments>
		<pubDate>Tue, 22 Jul 2008 12:12:31 +0000</pubDate>
		<dc:creator>tzangms</dc:creator>
		
		<category><![CDATA[Mac]]></category>

		<category><![CDATA[fun]]></category>

		<category><![CDATA[lomo]]></category>

		<category><![CDATA[photo]]></category>

		<category><![CDATA[toycamera]]></category>

		<guid isPermaLink="false">http://tzangms.com/blog/?p=1285</guid>
		<description><![CDATA[
今天在 義大利蔬菜湯 in PDart v2.0 beta2 那裡看到這篇 ToyCamera : 讓數位照片更有人味! 簡直如獲至寶阿! XD

原本羨慕 Windows 的使用者有光影魔術手可以用, 沒想到 Mac 居然也有 ToyCamera 這個軟體! 還免費的勒, 下班後就裝來玩了一下, 還不錯用內!! 繼續玩&#8230; XD

]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/tzangms/2691820661/" title="100_2702.JPG_effected by tzangms, on Flickr"><img src="http://farm4.static.flickr.com/3207/2691820661_6d40739586.jpg" width="500" height="375" alt="100_2702.JPG_effected" /></a><br />
今天在 <a href="http://pdart.blogspot.com/">義大利蔬菜湯 in PDart v2.0 beta2</a> 那裡看到這篇 <a href="http://pdart.blogspot.com/2008/07/toycamera.html">ToyCamera : 讓數位照片更有人味!</a> 簡直如獲至寶阿! XD<br />
<span id="more-1285"></span><br />
原本羨慕 Windows 的使用者有光影魔術手可以用, 沒想到 Mac 居然也有 <a href="http://www.pentacom.jp/pentacom/products.html">ToyCamera</a> 這個軟體! 還免費的勒, 下班後就裝來玩了一下, 還不錯用內!! 繼續玩&#8230; XD</p>
<p><a href="http://www.flickr.com/photos/tzangms/2691780949/" title="toycamera by tzangms, on Flickr"><img src="http://farm4.static.flickr.com/3260/2691780949_484ee011c4.jpg" width="500" height="310" alt="toycamera" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://tzangms.com/blog/mac/1285/feed</wfw:commentRss>
		</item>
		<item>
		<title>StickerAction 可以上傳多個樣式的貼紙囉!</title>
		<link>http://tzangms.com/blog/web/1265</link>
		<comments>http://tzangms.com/blog/web/1265#comments</comments>
		<pubDate>Sun, 20 Jul 2008 15:28:37 +0000</pubDate>
		<dc:creator>tzangms</dc:creator>
		
		<category><![CDATA[web]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Programming]]></category>

		<category><![CDATA[stickeraction]]></category>

		<guid isPermaLink="false">http://tzangms.com/blog/?p=1265</guid>
		<description><![CDATA[
今天幫 StickerAction 加上了多張貼紙樣式的功能, 貼紙的管理者可以到貼紙管理看看, 就可以看到了, 另外在貼紙首頁可以看到像是上圖一樣, 使用者可以選擇想要的貼紙, 或是輪播貼紙。 甚至使用者可以選擇他們自己想要的貼紙來作輪播, 畢竟不是每個樣式的貼紙大小都一樣, 這樣使用者就可以依據他們部落格版面樣式的考量, 來選擇適合的貼紙樣式組合, 來貼到他們的部落格。
只是目前的版面樣式還不是很好看, usability 也還要加強 XD 尤其是後台 &#8230; 不過由於我還要一邊弄音樂, 所以, 進度是會慢一些 XD
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/tzangms/2684913343/" title="[StickerAction] Multiple Stickers by tzangms, on Flickr"><img src="http://farm4.static.flickr.com/3236/2684913343_bd099c1d2b.jpg" width="500" height="297" alt="[StickerAction] Multiple Stickers" /></a><br />
今天幫 <a href="http://stickeraction.com">StickerAction</a> 加上了多張貼紙樣式的功能, 貼紙的管理者可以到貼紙管理看看, 就可以看到了, 另外在貼紙首頁可以看到像是上圖一樣, 使用者可以選擇想要的貼紙, 或是輪播貼紙。 甚至使用者可以選擇他們自己想要的貼紙來作輪播, 畢竟不是每個樣式的貼紙大小都一樣, 這樣使用者就可以依據他們部落格版面樣式的考量, 來選擇適合的貼紙樣式組合, 來貼到他們的部落格。</p>
<p>只是目前的版面樣式還不是很好看, usability 也還要加強 XD 尤其是後台 &#8230; 不過由於我還要一邊弄音樂, 所以, 進度是會慢一些 XD</p>
]]></content:encoded>
			<wfw:commentRss>http://tzangms.com/blog/web/1265/feed</wfw:commentRss>
		</item>
		<item>
		<title>讓瀏覽器快取 PHP 產生的圖片</title>
		<link>http://tzangms.com/blog/php/1244</link>
		<comments>http://tzangms.com/blog/php/1244#comments</comments>
		<pubDate>Fri, 18 Jul 2008 00:16:30 +0000</pubDate>
		<dc:creator>tzangms</dc:creator>
		
		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Programming]]></category>

		<category><![CDATA[cache]]></category>

		<guid isPermaLink="false">http://tzangms.com/blog/?p=1244</guid>
		<description><![CDATA[由於 stickeraction 的關係, 貼出去的貼紙讓我的主機流量暴增, 覺得這樣下去這個月的 100G 流量一定會爆, 所以對於貼出去的貼紙做了一些處理, 讓瀏覽器快取住, 多少可以減少一些流量, 其實一開始就該做了 XD 只是沒有意識到, 完全沒有經驗 XD 而且工作上也比較沒有流量的考量, 所以這次也學到了些東西。
原本在主機上就都有設定 lighttpd, 讓圖片, js 跟 css 檔產生 etag、expire 跟 last modified &#8230; 等的 HTTP headers, 利用瀏覽器的快取機制來減少主機的流量。 不過由 PHP 產生的圖片完全沒有 cache, 今天才改了一下程式, 加上一些  header, 來減少流量的支出, 不然這個月主機流量穩爆 ~&#8221;~


$file = 'foo.jpg';
$file_etag = fileinode($file);
$file_mtime = gmstrftime("%a, %d %b %Y %T %Z", filemtime($file));

$header_etag [...]]]></description>
			<content:encoded><![CDATA[<p>由於 <a href="http://stickeraction.com">stickeraction</a> 的關係, 貼出去的貼紙讓我的主機流量暴增, 覺得這樣下去這個月的 100G 流量一定會爆, 所以對於貼出去的貼紙做了一些處理, 讓瀏覽器快取住, 多少可以減少一些流量, 其實一開始就該做了 XD 只是沒有意識到, 完全沒有經驗 XD 而且工作上也比較沒有流量的考量, 所以這次也學到了些東西。</p>
<p>原本在主機上就都有設定 <a href="http://www.lighttpd.net/">lighttpd</a>, 讓圖片, js 跟 css 檔產生 etag、expire 跟 last modified &#8230; 等的 <a href="http://en.wikipedia.org/wiki/List_of_HTTP_headers">HTTP headers</a>, 利用瀏覽器的快取機制來減少主機的流量。 不過由 PHP 產生的圖片完全沒有 cache, 今天才改了一下程式, 加上一些  header, 來減少流量的支出, 不然這個月主機流量穩爆 ~&#8221;~<br />
<span id="more-1244"></span></p>
<textarea name="code" class="php:nocontrols:nogutter" cols="60" rows="10">
$file = 'foo.jpg';
$file_etag = fileinode($file);
$file_mtime = gmstrftime("%a, %d %b %Y %T %Z", filemtime($file));

$header_etag = array_key_exists('HTTP_IF_NONE_MATCH', $_SERVER)?$_SERVER['HTTP_IF_NONE_MATCH']:false;
$header_mtime = array_key_exists('HTTP_IF_MODIFIED_SINCE', $_SERVER)?$_SERVER['HTTP_IF_MODIFIED_SINCE']:false;

if ($header_etag ==  '"'.$file_etag.'"' 
       AND $header_mtime == $file_mtime) {
         header('HTTP/1.1 304 Not Modified');
} else {
        header("Content-Type: " . $content_type);
        header("Content-Length: " . filesize($file));
        header("Last-Modified: " . $file_mtime);
        header('ETag: "'.$file_etag.'"');
        readfile($file);
}
</textarea>
<p>由於是輸出圖片, 所以 Content-Type 是一定要的, 然後還有 Content-Length, 比較重要的就是 Last-Modified 跟 <a href="http://en.wikipedia.org/wiki/HTTP_ETag">ETag</a> 這兩個 header 了, 送出這些 header 之後, 下次在瀏覽器在 request 同一張圖片時, 瀏覽器的 request header 就會送出 If-Modified-Since 跟 If-None-Match, 所以只要我們可以取得這兩個 header, 就可以判斷是否要在送出一次圖片, 如果這兩個 header 的數值都沒變, 那麼就可以告訴瀏覽器說不用在抓圖片了阿, 就丟個 304 Not Modified 的 header 回去就可以了, 就也不用再輸出圖片了。 </p>
<p>由於我是用 lighttpd, 所以直接對 $_SERVER 變數來存取 headers , 如果是用 apache 的話可以看看 <a href="http://www.php.net/manual/en/function.apache-response-headers.php">apache_request_headers</a> 這個函式, 取得的變數名稱跟 header 一樣, 會比較直覺一點。</p>
<p>不過還有一些其他的 header, 像是 expire、max-age 跟 cache-control 這還要再研究一下 ~&#8221;~ 至少要可以控制哪時候過期嘛。</p>
]]></content:encoded>
			<wfw:commentRss>http://tzangms.com/blog/php/1244/feed</wfw:commentRss>
		</item>
		<item>
		<title>設定 CodeIgniter 透過 Gmail 發信</title>
		<link>http://tzangms.com/blog/codeigniter/1233</link>
		<comments>http://tzangms.com/blog/codeigniter/1233#comments</comments>
		<pubDate>Thu, 17 Jul 2008 11:54:28 +0000</pubDate>
		<dc:creator>tzangms</dc:creator>
		
		<category><![CDATA[CodeIgniter]]></category>

		<category><![CDATA[email]]></category>

		<category><![CDATA[Gmail]]></category>

		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://tzangms.com/blog/?p=1233</guid>
		<description><![CDATA[由於自己租的 slicehost 只有 256MB 的記憶體, 架 mail server 又很麻煩 (因為我也不懂 XD), 又似乎 mail 有啥反解的問題, 而直接透過 sendmail 這樣寄信會被當成垃圾信, 所以就申請了 Google app, 然後用申請到的帳號透過 SMTP 來發送信件。 由於 Gmail 的 SMTP 又跟一般的設定稍微不一樣(有 SSL), 所以記錄一下。
在 CodeIgniter 上面其實就只是設定個 config 檔就可以了, 設定檔如下:
application/config/email.php

$config['protocol'] = 'smtp';
$config['smtp_host'] = 'ssl://smtp.gmail.com';
$config['smtp_user'] = 'your_email';
$config['smtp_pass'] = 'your_password';
$config['smtp_port'] = '465';
$config['smtp_timeout'] = '5';
$config['newline'] = "\r\n";
$config['crlf'] = "\r\n";


這個設定檔寫好之後, 就依照 user_guide 寫的方式使用 email [...]]]></description>
			<content:encoded><![CDATA[<p>由於自己租的 <a href="http://www.slicehost.com/">slicehost</a> 只有 256MB 的記憶體, 架 mail server 又很麻煩 (因為我也不懂 XD), 又似乎 mail 有啥反解的問題, 而直接透過 sendmail 這樣寄信會被當成垃圾信, 所以就申請了 Google app, 然後用申請到的帳號透過 SMTP 來發送信件。 由於 Gmail 的 SMTP 又跟一般的設定稍微不一樣(有 SSL), 所以記錄一下。</p>
<p>在 <a href="http://codeigniter.com">CodeIgniter</a> 上面其實就只是設定個 config 檔就可以了, 設定檔如下:</p>
<p>application/config/email.php</p>
<textarea name="code" class="php:nocontrols:nogutter" cols="60" rows="10">
$config['protocol'] = 'smtp';
$config['smtp_host'] = 'ssl://smtp.gmail.com';
$config['smtp_user'] = 'your_email';
$config['smtp_pass'] = 'your_password';
$config['smtp_port'] = '465';
$config['smtp_timeout'] = '5';
$config['newline'] = "\r\n";
$config['crlf'] = "\r\n";
</textarea>
<p><span id="more-1233"></span><br />
這個設定檔寫好之後, 就依照 <a href="http://codeigniter.com/user_guide/">user_guide</a> 寫的方式使用 <a href="http://codeigniter.com/user_guide/libraries/email.html">email library</a> 即可。</p>
<textarea name="code" class="php:nocontrols:nogutter" cols="60" rows="10">
$this->load->library('email');
$this->email->from('foo@bar.com', 'foo');
$this->email->to('bar@foo.com');
$this->email->subject('email subject');
$this->email->message('this is the mail content');
$this->email->send();
</textarea>
]]></content:encoded>
			<wfw:commentRss>http://tzangms.com/blog/codeigniter/1233/feed</wfw:commentRss>
		</item>
		<item>
		<title>stickeraction.com 可以使用 OpenID 囉!</title>
		<link>http://tzangms.com/blog/programming/1220</link>
		<comments>http://tzangms.com/blog/programming/1220#comments</comments>
		<pubDate>Wed, 16 Jul 2008 10:36:30 +0000</pubDate>
		<dc:creator>tzangms</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<category><![CDATA[openid]]></category>

		<category><![CDATA[stickeraction]]></category>

		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://tzangms.com/blog/?p=1220</guid>
		<description><![CDATA[應柏強的要求, 昨天晚上把 stickeraction.com 加上了 OpenID, 不過目前只能用在註冊新帳號, 不能 attach 舊有的帳號 :p 其實本來會員帳號想直接都用 OpenID 來作, 不過想說 OpenID 並不是那麼多人知道, 怕會沒人用 XD 所以還是寫了一個會員帳號的機制 :p
stickeraction.com 用的是 janrain 的 OpenID Library, 有興趣可以看看。 另外 Yahoo 也好像要推 OpenID, 不過只能用 OpenID 2.0 版本勒, 不要選錯 library 了 XD
]]></description>
			<content:encoded><![CDATA[<p>應<a href="http://blog.bobchao.net/">柏強</a>的要求, 昨天晚上把 <a href="stickeraction.com">stickeraction.com</a> 加上了 <a href="http://openid.net/">OpenID</a>, 不過目前只能用在註冊新帳號, 不能 attach 舊有的帳號 :p 其實本來會員帳號想直接都用 OpenID 來作, 不過想說 OpenID 並不是那麼多人知道, 怕會沒人用 XD 所以還是寫了一個會員帳號的機制 :p</p>
<p>stickeraction.com 用的是 <a href="http://janrain.com/">janrain</a> 的 <a href="http://openidenabled.com/">OpenID Library</a>, 有興趣可以看看。 另外 <a href="http://openid.yahoo.com/">Yahoo 也好像要推 OpenID</a>, 不過只能用 OpenID 2.0 版本勒, 不要選錯 library 了 XD</p>
]]></content:encoded>
			<wfw:commentRss>http://tzangms.com/blog/programming/1220/feed</wfw:commentRss>
		</item>
		<item>
		<title>Kohana PHP framework 試玩心得</title>
		<link>http://tzangms.com/blog/php/1210</link>
		<comments>http://tzangms.com/blog/php/1210#comments</comments>
		<pubDate>Wed, 16 Jul 2008 00:15:50 +0000</pubDate>
		<dc:creator>tzangms</dc:creator>
		
		<category><![CDATA[PHP]]></category>

		<category><![CDATA[CodeIgniter]]></category>

		<category><![CDATA[framework]]></category>

		<category><![CDATA[kohana]]></category>

		<guid isPermaLink="false">http://tzangms.com/blog/?p=1210</guid>
		<description><![CDATA[Kohana 前身叫做 BlueFlame, 是由 CodeIgniter 衍生出來的 PHP framework, 所以要從 CI 跳槽還滿快的 XD 而 Kohana 跟 CodeIgniter 最大的不同就是, Kohana 只能在 PHP 5 上跑。 不過其實&#8230; 現在都該換到 PHP5 了啦:p 重點是! Kohana 解決了 CodeIgniter 很多不足的地方。
像是 Namespace 的問題, 在 CI 上如果有相同名稱的 library、Model 或是 Controller 就會衝到, Kohana 則解決了這個問題。 另外在 CI 上如果有自定的 helper 的話, 其他維護者並不容易找出是寫在哪支 helper 裡, 而 Kohana 的 helper 是用 [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://kohanaphp.com/">Kohana</a> 前身叫做 BlueFlame, 是由 <a href="http://codeigniter.com/">CodeIgniter</a> 衍生出來的 PHP framework, 所以要從 CI 跳槽還滿快的 XD 而 Kohana 跟 CodeIgniter 最大的不同就是, Kohana 只能在 PHP 5 上跑。 不過其實&#8230; 現在都該換到 PHP5 了啦:p 重點是! Kohana 解決了 CodeIgniter 很多不足的地方。</p>
<p>像是 Namespace 的問題, 在 CI 上如果有相同名稱的 library、Model 或是 Controller 就會衝到, Kohana 則解決了這個問題。 另外在 CI 上如果有自定的 helper 的話, 其他維護者並不容易找出是寫在哪支 helper 裡, 而 Kohana 的 helper 是用 class 來作, class name 的 prefix, 則可以容易辨識出是哪支 helper, 也減少 function name 衝突的問題, 對於維護上方便很多。</p>
<p>另外 Kohana 也提供了 module 的機制, module 擁有自己的 controller, model 跟 view, 可以將程式劃分的更細。例如 Konaha 本身就提供了 Auth module (ACL)。 雖然 CI 也有 <a href="http://code.google.com/p/matchbox/">matchbox</a> 提供了相同的功能, 但是需要 override CI_Loader, 萬一 CI 的版本升級,  CI_Loader 有所改變呢? 當然還是比不上 Kohana 內建的好。<br />
<span id="more-1210"></span><br />
而 Kohana 也利用了 PHP 5 <a href="http://tw.php.net/autoload">autoload</a> 這個功能, 所有的 library 均可以透過 autoload 來自行載入。 還有 Kohana 有 ORM 阿! 話說 <a href="http://en.wikipedia.org/wiki/Object-relational_mapping">ORM</a> 真的是很好用 XD model 只需要 extends ORM, 就不必再寫其他東西了, 最多定一下 has_one, has_many,  belongs_to_one &#8230;等, 就行了。 省了超多時間, 不過開了 Profiler, 實際看一下 Query, hmm&#8230; 如果有 Performance 需求的話, 還是自己刻 SQL, 或者用原本的 ActiveRecord 會比較好 XD 可是&#8230;ORM 真的很好用阿!</p>
<p>還有 Kohana 除了一般的 Controller 之外, 也提供了 <a href="http://docs.kohanaphp.com/addons/template">Template_Controller</a>, 可以簡化 Controller 中 view 的處理, 還滿不賴的。說到 View, Kohana 的 View 的處理方式, 真的是不錯阿! 很清楚明暸 :p</p>
<p>還有很重要的一個功能, 開發網站最常碰到的就是表單資料驗證跟處理了, CI 的 validation 很好用, 但是跟 kohana 比較起來, 就顯得很囉唆, rules 跟  fields 是分開設定, 在 kohana 則是在  rules 一次處理掉。 而且也包含了 upload 功能, 可以在 validation rules 中, 直接處理掉 uplaod 的 filetype, filesize &#8230; 等, 而不像 CI 除了 validation   之外, 還需要 upload library 來處理上傳的檔案, 協調性就差多了。 相對之下, Kohana 需要照料的事情少了非常的多。</p>
<p>其實 <a href="stickeraction.com">stickeraction.com</a> 一開始是用 kohana 來開發的, 在用 kohana 開發的過程當中, 真的是用的滿開心的, 不囉唆的 validation, Template_Controller 跟 ORM, 還有 media module, 開發起來比起 CI 更快勒!! 不過老實說, 踩了滿多地雷的 ~&#8221;~  hmm&#8230; Kohana 是由社群在維護, 不像 CI 是由 <a href="http://expressionengine.com/">expression engine</a> 的公司所維護, 也許是這樣, 不該發生的地雷才會那麼大顆吧 XD 所以&#8230; 我又花了一個晚上把 <a href="stickeraction.com">stickeraction.com</a> 從 Kohana 整個 port 回 CI 了 :x</p>
<p>不過 Kohana 2.2 也快出了, 到時候一定會在玩一下的 :p 最後&#8230; 其實 Kohana 的文件一點都不齊全 ~&#8221;~</p>
]]></content:encoded>
			<wfw:commentRss>http://tzangms.com/blog/php/1210/feed</wfw:commentRss>
		</item>
		<item>
		<title>stickeraction.com 一起來玩貼紙串連吧!</title>
		<link>http://tzangms.com/blog/web/1209</link>
		<comments>http://tzangms.com/blog/web/1209#comments</comments>
		<pubDate>Sun, 13 Jul 2008 14:07:28 +0000</pubDate>
		<dc:creator>tzangms</dc:creator>
		
		<category><![CDATA[web]]></category>

		<category><![CDATA[stickeraction]]></category>

		<category><![CDATA[web2.0]]></category>

		<guid isPermaLink="false">http://tzangms.com/blog/?p=1209</guid>
		<description><![CDATA[
一直以來都在想&#8230; 貼紙串連這種活動到底可以發揮多少功效, 現今的貼紙串連方式似乎都只是做個貼紙, 然後讓支持這個訴求的網友們把貼紙的語法貼到自己的部落格。 然而活動發起之後, 活動發起人卻也無法得知, 到底有多少個部落格響應了這個活動。
似乎在網路上的貼紙串連活動就是這樣, 一直沒有辦法凝聚一個較為實質的力量出來, 即使行之有年的&#8221;自動播放撲滅委員會&#8221; , 但是我們仍時常會逛到會自動播放音樂的部落格&#8230;。
如果有個東西可以統計, 可以讓響應這個活動的人知道, 這個活動到底凝聚了多少部落格的力量, 或者也許可以讓這個活動的頁面當成是一個連署書? 貼給自動播放音樂的部落格的網友們看, 到底有多少人支持這個活動!! 又或者讓舉辦海洋音樂季的台北縣政府知道, 到底有多少網友覺得他們根本在意的不是獨立音樂? 或者是貼個我愛星野亞希之類的 XD

Anyway, 總之就是說, 我覺得貼紙串連這個活動應該可以更有力量一些, 而不是貼了就晾在那邊。 也許可以透過貼紙, 統計有哪些部落格支持某個貼紙的議題, 有個實質的數字出來, 或可以透過貼紙通知支持相同議題的部落客們, 一起上街頭 (誤) 
其實這個想法想了很久了, 可是一直卻沒有時間跟動力去做, 一直到 xdite 問我說要不要報名 demomo 這個活動, 一直想不到主題的我, 才又突然想到乾脆趁這個機會把這個想法做出來。
所以 stickeraction.com 就這麼誕生了, 不過目前還算是只有雛形, 有一些功能都還沒實作出來, 現在只能夠統計有哪幾個部落格貼了貼紙, 然後能自動抓取這個部落格的 RSS 來作聯播, 管理者不需要一一針對這些部落格的 RSS 做加入的動作, 就可以做出聯播了。 
還沒做但想要做的功能有:

有新活動時, 貼在各個部落格的貼紙, 會在邊角顯示個醒目的圖示, 可以通知有新的進度, 應該滿適合用來通知大家哪時可以上街頭抗議之類的活動 [...]]]></description>
			<content:encoded><![CDATA[<p><a href='http://stickeraction.com'><img src='http://farm4.static.flickr.com/3086/2664170152_7ccc331c54.jpg' /></a><br />
一直以來都在想&#8230; 貼紙串連這種活動到底可以發揮多少功效, 現今的貼紙串連方式似乎都只是做個貼紙, 然後讓支持這個訴求的網友們把貼紙的語法貼到自己的部落格。 然而活動發起之後, 活動發起人卻也無法得知, 到底有多少個部落格響應了這個活動。</p>
<p>似乎在網路上的貼紙串連活動就是這樣, 一直沒有辦法凝聚一個較為實質的力量出來, 即使行之有年的&#8221;自動播放撲滅委員會&#8221; , 但是我們仍時常會逛到會自動播放音樂的部落格&#8230;。</p>
<p>如果有個東西可以統計, 可以讓響應這個活動的人知道, 這個活動到底凝聚了多少部落格的力量, 或者也許可以讓這個活動的頁面當成是一個連署書? 貼給自動播放音樂的部落格的網友們看, 到底有多少人支持這個活動!! 又或者讓舉辦海洋音樂季的台北縣政府知道, 到底有多少網友覺得他們根本在意的不是獨立音樂? 或者是貼個我愛星野亞希之類的 XD<br />
<span id="more-1209"></span><br />
Anyway, 總之就是說, 我覺得貼紙串連這個活動應該可以更有力量一些, 而不是貼了就晾在那邊。 也許可以透過貼紙, 統計有哪些部落格支持某個貼紙的議題, 有個實質的數字出來, 或可以透過貼紙通知支持相同議題的部落客們, 一起上街頭 (誤) </p>
<p>其實這個想法想了很久了, 可是一直卻沒有時間跟動力去做, 一直到 <a href="http://blog.xdite.net">xdite</a> 問我說要不要報名 <a href="http://blog.xdite.net/?p=600">demomo</a> 這個活動, 一直想不到主題的我, 才又突然想到乾脆趁這個機會把這個想法做出來。</p>
<p>所以 <a href="http://stickeraction.com">stickeraction.com</a> 就這麼誕生了, 不過目前還算是只有雛形, 有一些功能都還沒實作出來, 現在只能夠統計有哪幾個部落格貼了貼紙, 然後能自動抓取這個部落格的 RSS 來作聯播, 管理者不需要一一針對這些部落格的 RSS 做加入的動作, 就可以做出聯播了。 </p>
<p>還沒做但想要做的功能有:</p>
<ul>
<li>有新活動時, 貼在各個部落格的貼紙, 會在邊角顯示個醒目的圖示, 可以通知有新的進度, 應該滿適合用來通知大家哪時可以上街頭抗議之類的活動 XD</li>
<li>串連貼紙的 RSS 聯播可以用 tag 或標題過濾關鍵字, 讓聯播只出現相關議題的文章。</li>
<li>支援多個貼紙圖檔, 因為還滿常看到一個議題的貼紙有多個樣式, 所以應該可以讓使用者自行選用想要的樣式, 甚至是多個樣式的貼紙輪播。</li>
</ul>
<p>懶得寫了&#8230; 其實還有滿多東西還沒做的, and 我還要多練習用 photoshop 來畫圖。 最後, 有空的人麻煩玩玩看, 給點建議! 雖然很多地方還很簡陋 XD</p>
<p>有興趣的人幫忙宣傳一下, 幫我貼一下這個貼紙? </p>
<textarea name="code" class="html:nocontrols:nogutter" cols="60" rows="10">
<a href='http://stickeraction.com/stickeraction'>
   <img src='http://stickeraction.com/stickeraction/sticker'>
</a>
</textarea>
]]></content:encoded>
			<wfw:commentRss>http://tzangms.com/blog/web/1209/feed</wfw:commentRss>
		</item>
		<item>
		<title>[Demo] 說再見 (重新混音)</title>
		<link>http://tzangms.com/blog/demo/1207</link>
		<comments>http://tzangms.com/blog/demo/1207#comments</comments>
		<pubDate>Sat, 05 Jul 2008 06:00:36 +0000</pubDate>
		<dc:creator>tzangms</dc:creator>
		
		<category><![CDATA[Demo]]></category>

		<category><![CDATA[Music]]></category>

		<guid isPermaLink="false">http://tzangms.com/blog/?p=1207</guid>
		<description><![CDATA[先前的版本, 彈分解的那一把吉他, 其實一點都沒有結構, 反倒像是亂彈的, 這個版本除了重新咪過之外, 也重新錄了那把彈分解的吉他, 有結構多了, 感覺好多了 :p
]]></description>
			<content:encoded><![CDATA[<p>先前的版本, 彈分解的那一把吉他, 其實一點都沒有結構, 反倒像是亂彈的, 這個版本除了重新咪過之外, 也重新錄了那把彈分解的吉他, 有結構多了, 感覺好多了 :p</p>
]]></content:encoded>
			<wfw:commentRss>http://tzangms.com/blog/demo/1207/feed</wfw:commentRss>
<enclosure url="http://tzangms.com/blog/download/say_goodbye_new.mp3" length="" type="" />
		</item>
		<item>
		<title>identi.ca - PHP open source twitter?</title>
		<link>http://tzangms.com/blog/web/1203</link>
		<comments>http://tzangms.com/blog/web/1203#comments</comments>
		<pubDate>Thu, 03 Jul 2008 11:35:44 +0000</pubDate>
		<dc:creator>tzangms</dc:creator>
		
		<category><![CDATA[web]]></category>

		<category><![CDATA[opensource]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://tzangms.com/blog/?p=1203</guid>
		<description><![CDATA[identi.ca, 一個新的微網誌服務, 其實現在微網誌服務真的是很多了, 不過這個比較特別一點的是, identi.ca 用 PHP 開發, 可以用 jabber/GTalk, 也可以用 openid 來登入, 而且是 open source!!?
不過目前為止連到這個網址 http://identi.ca/doc/source, 上面是這樣寫的:
You can get a copy of the software from the Laconica main site. The version of the software that runs on this site is unmodified from that version. The site also depends on certain libraries and other software; you can get those [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://identi.ca/">identi.ca</a>, 一個新的微網誌服務, 其實現在微網誌服務真的是很多了, 不過這個比較特別一點的是, <a href="http://identi.ca/">identi.ca</a> 用 PHP 開發, 可以用 jabber/GTalk, 也可以用 openid 來登入, 而且是 open source!!?</p>
<p>不過目前為止連到這個網址 <a href="http://identi.ca/doc/source">http://identi.ca/doc/source</a>, 上面是這樣寫的:</p>
<blockquote><p>You can get a copy of the software from the <a href="http://laconi.ca/">Laconica</a> main site. The version of the software that runs on <em>this</em> site is unmodified from that version. The site also depends on certain libraries and other software; you can get those at the Laconica site, too.</p></blockquote>
<p>不過找了一下, 還沒看到任何 source code 的蹤影 :p 不過那不重要, 因為&#8230;可以離開 twitter 就很厲害了 XD</p>
]]></content:encoded>
			<wfw:commentRss>http://tzangms.com/blog/web/1203/feed</wfw:commentRss>
		</item>
	</channel>
</rss>
