<?xml version="1.0" encoding="utf-8"?> 
<feed version="0.3" xmlns="http://purl.org/atom/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xml:lang="zh-tw"> 
<title>福茲提克資訊科技網</title> 
<link rel="alternate" type="text/html" href="http://blog.roodo.com/fauztech/" /> 
<modified>2008-12-06T01:19:23+08:00</modified> 
<tagline></tagline> 
<id>tag:blog.roodo.com,2008://231431</id> 
<generator url="http://blog.yam.com/" version="1.0">Roodo Blog</generator> 
<copyright>Copyright (c) 2005, </copyright> 
 <entry> 
 <title>國際單位制詞頭</title> 
 <link rel="alternate" type="text/html" href="http://blog.roodo.com/fauztech/archives/7744051.html" /> 
 <modified>2008-12-01T09:29:41+08:00</modified> 
 <issued>2008-12-01T09:29:41+08:00</issued> 
 <id>tag:blog.roodo.com,2008://231431.7744051</id> 
 <created>2008-12-01T09:16:07+08:00</created> 
  <author>
 <name></name> 
 <url>http://blog.roodo.com/fauztech/</url> 
 
</author> 
<dc:subject>資訊思考</dc:subject> 
<summary type="text/html" mode="escaped">
<![CDATA[
國際單位制也就是所謂的SI單位，電腦常用的儲存單位KB, MB, GB, TB等就是遵循SI單位而來。KB=千位元組，MB=百萬位元組，這是大家耳熟能詳的。而GB以上的中文名稱是什麼呢？答案是GB=吉位元組，TB=兆位元組，PB=拍位元組，不過一般人似乎很少這樣講呢。

資料來源：維基百科 國際單位制詞頭]]>
</summary> 
<content type="text/html" mode="escaped" xml:lang="zh-tw" xml:base="http://blog.roodo.com/fauztech/archives/7744051.html">
<![CDATA[
	國際單位制也就是所謂的SI單位，電腦常用的儲存單位KB, MB, GB, TB等就是遵循SI單位而來。KB=千位元組，MB=百萬位元組，這是大家耳熟能詳的。而GB以上的中文名稱是什麼呢？答案是GB=<strong>吉</strong>位元組，TB=<strong>兆</strong>位元組，PB=<strong>拍</strong>位元組，不過一般人似乎很少這樣講呢。

資料來源：<a href="http://zh.wikipedia.org/wiki/%E5%9C%8B%E9%9A%9B%E5%96%AE%E4%BD%8D%E5%88%B6%E8%A9%9E%E9%A0%AD?variant=zh-tw">維基百科 國際單位制詞頭</a>
	]]>
</content>
</entry> 
 <entry> 
 <title> Yahoo放棄開發Vista版即時通</title> 
 <link rel="alternate" type="text/html" href="http://blog.roodo.com/fauztech/archives/7454279.html" /> 
 <modified>2008-10-28T09:18:25+08:00</modified> 
 <issued>2008-10-28T09:18:25+08:00</issued> 
 <id>tag:blog.roodo.com,2008://231431.7454279</id> 
 <created>2008-10-28T09:16:22+08:00</created> 
  <author>
 <name></name> 
 <url>http://blog.roodo.com/fauztech/</url> 
 
</author> 
<dc:subject>資訊業界</dc:subject> 
<summary type="text/html" mode="escaped">
<![CDATA[
好像沒有人講到八卦的重點
我就來說說我對這新聞的看法吧

Yahoo放棄開發Vista版即時通
代表著微軟開發者平台的重大挫敗（如果不算是完全失敗的話）

「開發者平台」是什麼意思呢？
我們知道一個作業系統要好用
除了作業系統本身附贈的軟體之外
應用程式也是愈多愈好
（應該沒人完全只用附屬應用程式吧）

應用程式哪裡來呢？要有人寫
開發作業系統的公司，如微軟
會自己開發一些重要的應用程式，如微軟Office
但是一家公司不可能開發完天下所有的程式
最好能有第三方廠商一起來開發
（3rd party，不一定是公司也可能是個人）

即使像蘋果電腦這樣強勢一手主導軟硬體的公司
也是會盡量吸引第三方開發者
原因無他  應用程式多，用戶也就會跟著多

學過C語言的人  很多應該都接觸過Turbo C
那是在DOS時代最熱門的整合開發環境之一
它是由當時在開發環境業界一等一的Borland公司發行的
時間到了90年代中期  Windows 95發行
微軟發行的開發環境  在DOS時期還不能和Borland競爭
這時候不一樣了  只要微軟想要拿的市場
即使是後進者  也幾乎沒有拿不下來的  瀏覽器就是個例子
Windows時代  微軟推出Visual Studio  還有MFC
與Borland的OWL對抗  過程略去不提（個人沒參與到那時代）
最後Borland淡出開發環境業界  微軟勝利
這就是「開發者平台」之爭
當然平台還有很多  比如說Java, qt, GTK等
微軟獲得的勝利是在自家的Windows作業系統上

微軟在與Borland競爭的過程中
也提出了新的願景（或有人說是行銷口號）
這就是.Net 後來為辨別清楚  也稱為.Net Framework
.Net是一個很龐大的計劃  龐大到它的願景到現在還沒完全實現
它學習了一些Java平台的特點  比如說VM（虛擬機器）
在.Net上寫程式和過去是很不同的  比如說VM會幫你管理記憶體
微軟的術語裡稱呼這些.Net程式碼為  managed code
而過去的MFC的開發方式  稱為unmanaged
在.Net當中也有個新東西來取代MFC  稱為WinForms

但是WinForms只不過是用在GUI（使用者圖形介面）而已
前面說過.Net這計劃很龐大  微軟的野心怎麼可能僅止於此而已呢！
微軟發表了WinFX  Win代表Windows FX代表.Net Framework eXtension
這個WinFX將會是代號Longhorn的新作業系統中的新開發平台

WinFX的三大支柱：
   WPF（Windows Presentation Foundation）
   WCF（Windows Communication Foundation）
   WinFS（Windows Future Storage）

後來WinFX改名為.Net Framework 3.0
Longhorn正式名稱為Windows Vista
但是三大支柱之一的WinFS因為來不及開發而去掉這功能

重點來了：Yahoo即時通 for Vista是用WPF開發的
停止開發可能代表了：
    Windows Vista的市場接受度成長得太慢
    第三廠對微軟新開發平台保持觀望

微軟的WPF還有另一項技術稱為WPF/E（又稱Silverlight）
第三廠不採用微軟新技術的後果
除了微軟新版Visual Studio變得比較不好賣之外
還有其他可能  那就是第三廠開發者跳到其他公司的平台
假如這真的發生  對微軟來說算得上是一大危機
]]>
</summary> 
<content type="text/html" mode="escaped" xml:lang="zh-tw" xml:base="http://blog.roodo.com/fauztech/archives/7454279.html">
<![CDATA[
	好像沒有人講到八卦的重點
我就來說說我對這新聞的看法吧

Yahoo放棄開發Vista版即時通
代表著微軟開發者平台的重大挫敗（如果不算是完全失敗的話）

「開發者平台」是什麼意思呢？
我們知道一個作業系統要好用
除了作業系統本身附贈的軟體之外
應用程式也是愈多愈好
（應該沒人完全只用附屬應用程式吧）

應用程式哪裡來呢？要有人寫
開發作業系統的公司，如微軟
會自己開發一些重要的應用程式，如微軟Office
但是一家公司不可能開發完天下所有的程式
最好能有第三方廠商一起來開發
（3rd party，不一定是公司也可能是個人）

即使像蘋果電腦這樣強勢一手主導軟硬體的公司
也是會盡量吸引第三方開發者
原因無他  應用程式多，用戶也就會跟著多

學過C語言的人  很多應該都接觸過Turbo C
那是在DOS時代最熱門的整合開發環境之一
它是由當時在開發環境業界一等一的Borland公司發行的
時間到了90年代中期  Windows 95發行
微軟發行的開發環境  在DOS時期還不能和Borland競爭
這時候不一樣了  只要微軟想要拿的市場
即使是後進者  也幾乎沒有拿不下來的  瀏覽器就是個例子
Windows時代  微軟推出Visual Studio  還有MFC
與Borland的OWL對抗  過程略去不提（個人沒參與到那時代）
最後Borland淡出開發環境業界  微軟勝利
這就是「開發者平台」之爭
當然平台還有很多  比如說Java, qt, GTK等
微軟獲得的勝利是在自家的Windows作業系統上

微軟在與Borland競爭的過程中
也提出了新的願景（或有人說是行銷口號）
這就是.Net 後來為辨別清楚  也稱為.Net Framework
.Net是一個很龐大的計劃  龐大到它的願景到現在還沒完全實現
它學習了一些Java平台的特點  比如說VM（虛擬機器）
在.Net上寫程式和過去是很不同的  比如說VM會幫你管理記憶體
微軟的術語裡稱呼這些.Net程式碼為  managed code
而過去的MFC的開發方式  稱為unmanaged
在.Net當中也有個新東西來取代MFC  稱為WinForms

但是WinForms只不過是用在GUI（使用者圖形介面）而已
前面說過.Net這計劃很龐大  微軟的野心怎麼可能僅止於此而已呢！
微軟發表了WinFX  Win代表Windows FX代表.Net Framework eXtension
這個WinFX將會是代號Longhorn的新作業系統中的新開發平台

WinFX的三大支柱：
   WPF（Windows Presentation Foundation）
   WCF（Windows Communication Foundation）
   WinFS（Windows Future Storage）

後來WinFX改名為.Net Framework 3.0
Longhorn正式名稱為Windows Vista
但是三大支柱之一的WinFS因為來不及開發而去掉這功能

重點來了：Yahoo即時通 for Vista是用WPF開發的
停止開發可能代表了：
    Windows Vista的市場接受度成長得太慢
    第三廠對微軟新開發平台保持觀望

微軟的WPF還有另一項技術稱為WPF/E（又稱Silverlight）
第三廠不採用微軟新技術的後果
除了微軟新版Visual Studio變得比較不好賣之外
還有其他可能  那就是第三廠開發者跳到其他公司的平台
假如這真的發生  對微軟來說算得上是一大危機

	]]>
</content>
</entry> 
 <entry> 
 <title>Python初寫心得</title> 
 <link rel="alternate" type="text/html" href="http://blog.roodo.com/fauztech/archives/6216579.html" /> 
 <modified>2008-06-23T05:28:48+08:00</modified> 
 <issued>2008-06-23T05:28:48+08:00</issued> 
 <id>tag:blog.roodo.com,2008://231431.6216579</id> 
 <created>2008-06-23T05:06:20+08:00</created> 
  <author>
 <name></name> 
 <url>http://blog.roodo.com/fauztech/</url> 
 
</author> 
<dc:subject>資訊思考</dc:subject> 
<summary type="text/html" mode="escaped">
<![CDATA[
這兩天寫了一些Python，不得不佩服Java和PHP的文件。Python的文件不能說差，但是不好用、不好查。比如說我想查is這個keyword是什麼意思，最好我會知道他是列在Comparison啦。為什麼is不列在operator，這我不懂，明明==等都是啊。然後是例外處理，最好是我會知道有個sys.exc_info()啦。都查了很久才找到。

Python的官方文件主要分為Tutorial, Library Reference, Language Reference三塊，但他們的Table of Content都只有一個，而且TOC的標題不太能反映想找的內容。像Java、PHP、Ruby的文件都會切成幾個窗格，或至少有sidebar讓你點，我終於知道原因了，就是這樣才好用啊。還有簡單卻實用的示例也是很重要的，這點PHP做得不錯。]]>
</summary> 
<content type="text/html" mode="escaped" xml:lang="zh-tw" xml:base="http://blog.roodo.com/fauztech/archives/6216579.html">
<![CDATA[
	這兩天寫了一些Python，不得不佩服Java和PHP的文件。Python的文件不能說差，但是不好用、不好查。比如說我想查is這個keyword是什麼意思，最好我會知道他是列在Comparison啦。為什麼is不列在operator，這我不懂，明明==等都是啊。然後是例外處理，最好是我會知道有個sys.exc_info()啦。都查了很久才找到。

Python的官方文件主要分為Tutorial, Library Reference, Language Reference三塊，但他們的Table of Content都只有一個，而且TOC的標題不太能反映想找的內容。像Java、PHP、Ruby的文件都會切成幾個窗格，或至少有sidebar讓你點，我終於知道原因了，就是這樣才好用啊。還有簡單卻實用的示例也是很重要的，這點PHP做得不錯。
	]]>
</content>
</entry> 
 <entry> 
 <title>Ubuntu Server 升級到 Hardy 攻略</title> 
 <link rel="alternate" type="text/html" href="http://blog.roodo.com/fauztech/archives/5898763.html" /> 
 <modified>2008-04-22T01:45:18+08:00</modified> 
 <issued>2008-04-22T01:45:18+08:00</issued> 
 <id>tag:blog.roodo.com,2008://231431.5898763</id> 
 <created>2008-04-22T01:42:40+08:00</created> 
  <author>
 <name></name> 
 <url>http://blog.roodo.com/fauztech/</url> 
 
</author> 
<dc:subject>資訊攻略</dc:subject> 
<summary type="text/html" mode="escaped">
<![CDATA[
script /tmp/upgrade-hardy
sudo aptitude install update-manager-core
sudo do-release-upgrade

script是錄影用指令（這指令真難記，很容易混淆的名字）。錄影完打exit跳出。]]>
</summary> 
<content type="text/html" mode="escaped" xml:lang="zh-tw" xml:base="http://blog.roodo.com/fauztech/archives/5898763.html">
<![CDATA[
	<kbd>script /tmp/upgrade-hardy
sudo aptitude install update-manager-core
sudo do-release-upgrade<kbd>

script是錄影用指令（這指令真難記，很容易混淆的名字）。錄影完打exit跳出。
	]]>
</content>
</entry> 
 <entry> 
 <title>flickr video 上傳不成功</title> 
 <link rel="alternate" type="text/html" href="http://blog.roodo.com/fauztech/archives/5835697.html" /> 
 <modified>2008-04-09T15:59:35+08:00</modified> 
 <issued>2008-04-09T15:59:35+08:00</issued> 
 <id>tag:blog.roodo.com,2008://231431.5835697</id> 
 <created>2008-04-09T15:59:35+08:00</created> 
  <author>
 <name></name> 
 <url>http://blog.roodo.com/fauztech/</url> 
 
</author> 
<dc:subject></dc:subject> 
<summary type="text/html" mode="escaped">
<![CDATA[

 
 
 
  flickr video: upload not successful
  
  原由 fauzty 上載
 

剛剛試用了flickr video，我傳了一隻我在畢業典禮上，用Fuji數位相機拍的avi影片。結果上傳失敗，flickr說：請你重傳一次。囧。
]]>
</summary> 
<content type="text/html" mode="escaped" xml:lang="zh-tw" xml:base="http://blog.roodo.com/fauztech/archives/5835697.html">
<![CDATA[
	<div style="float: right; margin-left: 10px; margin-bottom: 10px;">
 <a href="http://www.flickr.com/photos/fauzty/2399829341/" title="photo sharing"><img src="http://farm3.static.flickr.com/2152/2399829341_e0c48a5b4a_m.jpg" alt="" style="border: solid 2px #000000;" /></a>
 <br />
 <span style="font-size: 0.9em; margin-top: 0px;">
  <a href="http://www.flickr.com/photos/fauzty/2399829341/">flickr video: upload not successful</a>
  <br />
  原由 <a href="http://www.flickr.com/people/fauzty/">fauzty</a> 上載
 </span>
</div>
剛剛試用了flickr video，我傳了一隻我在畢業典禮上，用Fuji數位相機拍的avi影片。結果上傳失敗，flickr說：請你重傳一次。囧。
<br clear="all" />
	]]>
</content>
</entry> 
 <entry> 
 <title>Sun雇用Jython開發者</title> 
 <link rel="alternate" type="text/html" href="http://blog.roodo.com/fauztech/archives/5770525.html" /> 
 <modified>2008-03-28T22:17:00+08:00</modified> 
 <issued>2008-03-28T22:17:00+08:00</issued> 
 <id>tag:blog.roodo.com,2008://231431.5770525</id> 
 <created>2008-03-28T21:53:27+08:00</created> 
  <author>
 <name></name> 
 <url>http://blog.roodo.com/fauztech/</url> 
 
</author> 
<dc:subject>資訊業界</dc:subject> 
<summary type="text/html" mode="escaped">
<![CDATA[
算是舊消息了，根據JRuby開發者Charles Nutter這篇文章Welcome Pythonistas to Sun!  ，Sun雇用了Frank Wierzbicki及Ted Leung來開發Jython及Python，就和2006年9月Sun雇用JRuby開發者一樣。目前JVM上面的主要語言，除了Java之外，還有Ruby (JRbuy)、Python (Jython)、JavaScript (Rhino)，以及JVM原生的scripting語言Groovy。看來Java平台未來發展的重點之一是scripting語言。有了Python及Ruby這兩強加入，似乎也意味著Groovy是註定來不及長大了。]]>
</summary> 
<content type="text/html" mode="escaped" xml:lang="zh-tw" xml:base="http://blog.roodo.com/fauztech/archives/5770525.html">
<![CDATA[
	算是舊消息了，根據JRuby開發者Charles Nutter這篇文章<a href="http://headius.blogspot.com/2008/03/welcome-pythonistas-to-sun.html">Welcome Pythonistas to Sun!</a>  ，Sun雇用了<a href="http://fwierzbicki.blogspot.com/">Frank Wierzbicki</a>及<a href="http://www.sauria.com/blog/">Ted Leung</a>來開發Jython及Python，就和2006年9月Sun雇用JRuby開發者一樣。目前JVM上面的主要語言，除了Java之外，還有Ruby (JRbuy)、Python (Jython)、JavaScript (Rhino)，以及JVM原生的scripting語言Groovy。<br /><br />看來Java平台未來發展的重點之一是scripting語言。有了Python及Ruby這兩強加入，似乎也意味著Groovy是註定來不及長大了。
	]]>
</content>
</entry> 
 <entry> 
 <title>IE的global namespace pollution</title> 
 <link rel="alternate" type="text/html" href="http://blog.roodo.com/fauztech/archives/5763715.html" /> 
 <modified>2008-03-27T14:36:14+08:00</modified> 
 <issued>2008-03-27T14:36:14+08:00</issued> 
 <id>tag:blog.roodo.com,2008://231431.5763715</id> 
 <created>2008-03-27T14:21:02+08:00</created> 
  <author>
 <name></name> 
 <url>http://blog.roodo.com/fauztech/</url> 
 
</author> 
<dc:subject>資訊攻略</dc:subject> 
<summary type="text/html" mode="escaped">
<![CDATA[
昨天寫了一段javascript code，在Firefox跑，一切正常；到IE不能跑。用Microsoft Script Editor來debug，雖然可以知道錯誤發生在哪一段程式，但是看了半天卻看不出錯誤在哪。後來只好死馬當活馬醫，用trial and error方法，把code隨意改一改。結果發現：咦，把相關的HTML element id改掉，似乎程式就不會卡住了。難道是IE對我的id命名有意見？

再定睛一看，會卡住的code剛好都是javascript variable和HTML id取名一樣的。原來，在IE裡javascript variable的名字不能和HTML id一樣！？再做了一些實驗，原來IE會把每個有id的element當作javascript的global variable，讓你直接用id/name存取DOM，而不必透過getElementById()。

這真的很討厭。我看到有國外的網站稱之為global namespace pollution。]]>
</summary> 
<content type="text/html" mode="escaped" xml:lang="zh-tw" xml:base="http://blog.roodo.com/fauztech/archives/5763715.html">
<![CDATA[
	昨天寫了一段javascript code，在Firefox跑，一切正常；到IE不能跑。用Microsoft Script Editor來debug，雖然可以知道錯誤發生在哪一段程式，但是看了半天卻看不出錯誤在哪。後來只好死馬當活馬醫，用trial and error方法，把code隨意改一改。結果發現：咦，把相關的HTML element id改掉，似乎程式就不會卡住了。難道是IE對我的id命名有意見？

再定睛一看，會卡住的code剛好都是javascript variable和HTML id取名一樣的。原來，在IE裡javascript variable的名字不能和HTML id一樣！？再做了一些實驗，原來IE會把每個有id的element當作javascript的global variable，讓你直接用id/name存取DOM，而不必透過getElementById()。

這真的很討厭。我看到有國外的網站稱之為global namespace pollution。
	]]>
</content>
</entry> 
 <entry> 
 <title>Ruby/Prototype.js 風格的 Array</title> 
 <link rel="alternate" type="text/html" href="http://blog.roodo.com/fauztech/archives/5635803.html" /> 
 <modified>2008-03-04T20:46:14+08:00</modified> 
 <issued>2008-03-04T20:46:14+08:00</issued> 
 <id>tag:blog.roodo.com,2008://231431.5635803</id> 
 <created>2008-03-04T19:31:41+08:00</created> 
  <author>
 <name></name> 
 <url>http://blog.roodo.com/fauztech/</url> 
 
</author> 
<dc:subject>資訊思考</dc:subject> 
<summary type="text/html" mode="escaped">
<![CDATA[
自從用過Ruby之後，對它的Array唸唸不忘，Array#each是好物啊，有了它，幾乎可以把迴圈for/foreach給丟掉了。看了《Bring some Ruby/Prototype flavour in your PHP array》之後，心想PHP5也能這樣玩，真是讚，不用在PHP/Ruby之間的抉擇天人交戰了，把Ruby的語法移植到PHP來，這樣不就可以同時擁有PHP的廣大群眾，又擁有寫Ruby語法的簡潔／美麗／爽度了嗎？Prototype.js也是這樣做的，雖然《Learning Javascript》書中嚴厲反對Prototype.js破壞了javascript當中Array和for..in的組合技，但是Prototype.js的作者們顯然不在乎這點，照樣蠻幹。另還有《JavaScript “Associative Arrays” Considered Harmful》一文認為JavaScript當中的Array本來就不該當作associative array(hash)來用，所以組合技被破壞不算Prototype.js的錯。我個人的看法：說真的，有了Array.each，誰還需要for..in/foreach呢？

但是現實是殘酷的，由於PHP沒有anonymous function（幹，PHP根本什麼都沒有嘛！），所以callback無法像JavaScript或Ruby寫得那麼漂亮。或許應該說，雖然PHP語言特性貧乏，原本的目的是內嵌在HTML裡，卻能長到這麼大，也代表著PHP切合了初級web開發的需求，打入了一個很大的市場。《Bring》文中class的名稱是ExtendedArrayObject，只實作了部分method，但是我想乾脆把整個Ruby Array class實作好了。為了符合PHP的習慣，可以再定義一個xarray() function，x代表extended，用法類似array()（PHP的array()是language construct，不是function），只是回傳ExtendedArrayObject（factory pattern!?）。

神奇的是，我用Google搜尋xarray，居然找到我想做的東西，已經有人做過了！它是模仿Prototype.js的，也叫做xarray，而且是BSD license。但是不幸的是，事情總是沒有那麼順利，這個phpclasses.org要註冊才能下載東西，我又不想註冊。所以……我想我還是有空的時候來自己實作看看好了，當作練功！]]>
</summary> 
<content type="text/html" mode="escaped" xml:lang="zh-tw" xml:base="http://blog.roodo.com/fauztech/archives/5635803.html">
<![CDATA[
	自從用過Ruby之後，對它的Array唸唸不忘，Array#each是好物啊，有了它，幾乎可以把迴圈for/foreach給丟掉了。看了《<a href="http://hasin.wordpress.com/2006/10/17/bring-some-rubyprototype-flavour-in-your-php-array/">Bring some Ruby/Prototype flavour in your PHP array</a>》之後，心想PHP5也能這樣玩，真是讚，不用在PHP/Ruby之間的抉擇天人交戰了，把Ruby的語法移植到PHP來，這樣不就可以同時擁有PHP的廣大群眾，又擁有寫Ruby語法的簡潔／美麗／爽度了嗎？Prototype.js也是這樣做的，雖然《Learning Javascript》書中嚴厲反對Prototype.js破壞了javascript當中Array和for..in的組合技，但是Prototype.js的作者們顯然不在乎這點，照樣蠻幹。另還有《<a href="http://andrewdupont.net/2006/05/18/javascript-associative-arrays-considered-harmful/">JavaScript “Associative Arrays” Considered Harmful</a>》一文認為JavaScript當中的Array本來就不該當作associative array(hash)來用，所以組合技被破壞不算Prototype.js的錯。我個人的看法：說真的，有了Array.each，誰還需要for..in/foreach呢？

但是現實是殘酷的，由於PHP沒有anonymous function（幹，PHP根本什麼都沒有嘛！），所以callback無法像JavaScript或Ruby寫得那麼漂亮。或許應該說，雖然PHP語言特性貧乏，原本的目的是內嵌在HTML裡，卻能長到這麼大，也代表著PHP切合了初級web開發的需求，打入了一個很大的市場。《Bring》文中class的名稱是ExtendedArrayObject，只實作了部分method，但是我想乾脆把整個Ruby Array class實作好了。為了符合PHP的習慣，可以再定義一個xarray() function，x代表extended，用法類似array()（PHP的array()是language construct，不是function），只是回傳ExtendedArrayObject（factory pattern!?）。

神奇的是，我用Google搜尋xarray，居然找到我想做的東西，已經有人做過了！它是模仿Prototype.js的，也叫做<a href="http://www.phpclasses.org/browse/package/3565.html">xarray</a>，而且是BSD license。但是不幸的是，事情總是沒有那麼順利，這個phpclasses.org要註冊才能下載東西，我又不想註冊。所以……我想我還是有空的時候來自己實作看看好了，當作練功！
	]]>
</content>
</entry> 
 <entry> 
 <title>在Ubuntu上安裝INN</title> 
 <link rel="alternate" type="text/html" href="http://blog.roodo.com/fauztech/archives/5035485.html" /> 
 <modified>2008-03-04T20:47:33+08:00</modified> 
 <issued>2008-03-04T20:47:33+08:00</issued> 
 <id>tag:blog.roodo.com,2008://231431.5035485</id> 
 <created>2008-01-23T06:48:37+08:00</created> 
  <author>
 <name></name> 
 <url>http://blog.roodo.com/fauztech/</url> 
 
</author> 
<dc:subject>資訊攻略</dc:subject> 
<summary type="text/html" mode="escaped">
<![CDATA[
INN (InterNetNews)是一個網路新聞群組的軟體套件。

sudo aptitude update
sudo aptitude install inn2

Ubuntu上可以用aptitude直接安裝INN，但要注意的是，套件名稱是inn2（代表INN 2.x版），套件inn是舊版的。

如果安裝到一半失敗，看看訊息是否是inn.conf檔沒設定好。如果是，你可能必須編輯它，將domain設為你的主機的FQDN。

sudo nano /etc/news/inn.conf

]]>
</summary> 
<content type="text/html" mode="escaped" xml:lang="zh-tw" xml:base="http://blog.roodo.com/fauztech/archives/5035485.html">
<![CDATA[
	<a href="http://en.wikipedia.org/wiki/InterNetNews" target="_blank" title="Wikipedia: InterNetNews">INN (InterNetNews)</a>是一個<a href="http://zh.wikipedia.org/w/index.php?title=%E6%96%B0%E8%81%9E%E7%BE%A4%E7%B5%84&variant=zh-tw" target="_blank" title="Wikipedia: 新聞群組">網路新聞群組</a>的軟體套件。

<kbd>sudo aptitude update
sudo aptitude install inn2</kbd>

Ubuntu上可以用aptitude直接安裝INN，但要注意的是，套件名稱是inn2（代表INN 2.x版），套件inn是舊版的。

如果安裝到一半失敗，看看訊息是否是inn.conf檔沒設定好。如果是，你可能必須編輯它，將domain設為你的主機的FQDN。

<kbd>sudo nano /etc/news/inn.conf</kbd>


	]]>
</content>
</entry> 
 <entry> 
 <title>UNIX中在某目錄找某副檔名裡的某段文字</title> 
 <link rel="alternate" type="text/html" href="http://blog.roodo.com/fauztech/archives/4765787.html" /> 
 <modified>2008-01-23T07:07:33+08:00</modified> 
 <issued>2008-01-23T07:07:33+08:00</issued> 
 <id>tag:blog.roodo.com,2008://231431.4765787</id> 
 <created>2008-01-03T14:39:54+08:00</created> 
  <author>
 <name></name> 
 <url>http://blog.roodo.com/fauztech/</url> 
 
</author> 
<dc:subject>資訊攻略</dc:subject> 
<summary type="text/html" mode="escaped">
<![CDATA[
grep REGULAR_EXPRESSION `find DIRECTORY -name '*.EXT' -print`

指令組合分析：

  grep REGULAR_EXPRESSION FILE
  ``（反引號，backquote）：將find指令的stand output轉成命令列上grep動詞的FILE受詞
  find DIRECTORY -name 'FILE' -print：FILE兩旁是普通單引號


]]>
</summary> 
<content type="text/html" mode="escaped" xml:lang="zh-tw" xml:base="http://blog.roodo.com/fauztech/archives/4765787.html">
<![CDATA[
	<code>grep</code> REGULAR_EXPRESSION <code>`find </code>DIRECTORY<code> -name '*.</code>EXT<code>' -print`</code>

指令組合分析：
<ul>
  <li><code>grep</code> REGULAR_EXPRESSION FILE</li>
  <li><code>``</code>（反引號，backquote）：將find指令的stand output轉成命令列上grep動詞的FILE受詞</li>
  <li><code>find </code>DIRECTORY<code> -name '</code>FILE<code>' -print</code>：FILE兩旁是普通單引號</li>
</ul>


	]]>
</content>
</entry> 
</feed>