2008/06/19

Find and Remove Files

$ find . -name "*.pyc" -type f -print0 | xargs -0 /bin/rm -f

一般情況 find 預設使用 -print 參數,如果擔心找到的檔名含有空白、換行等符號,使用 -print0 較安全,而且搭配 xargs 時會使用 -0 參數。

2008/06/14

Communication Breakdown - Led Zeppelin


1969 年六月19日 Led Zeppelin 在法國的開場演出,聽眾事先可能不知道會有搖滾樂團出現,有位媽媽還抱著沈睡襁褓的小孩。
Communication Breakdown 是 Led Zeppelin 在 1969 年一月第一張專輯裡的作品,據說此曲的吉他是受到 Eddie Cochran 的 Nervous Breakdown 啟發,有段間奏是重覆式的爬階,Jimmy Page 表示是這首歌最難的部份,此外,這也是少數 Page 擔任合音的歌曲之一。
這首歌是在樂團履行演唱合約過程中,所合作出來的新作品,在美國曾以單曲方式發行,但並未出現在排行榜。Jimmy Page 這首歌的吉他彈奏方式,啟發了 The Ramones,而 Iron Maiden 後來曾在 Eddie's Archive 盒裝光碟第六張裡收錄此曲。

Open Controlling

Android 以 Linux 為基礎,但開發策略是「先閉門造車,然後再開放源碼」,為什麼 Google 會這樣做?
Red Hat 技術長 Brian Stevens 認為 Google 該更早開放原始碼,「社群如果對商業公司領頭的計畫感到興趣,通常是在產品概念形成的階段,肯定不是產品出貨的時刻。」Mozilla 的 Mike Schroepfer 講得更白,「公開源碼並不是難事,最難的是公開決策機制,讓公司之外的人員也能分享決策權。」「社群要是發現講話不受重視,他們是不願意參與計畫的。」
為了確保公司開放源碼後仍能獲致最大效益,Android 的 技術總監 Andy Rubin 說明實務作法,原始碼公開後,同意或否決 patch 的權力將交由各專案管理員,Google 則會提供 certification test suite 來確保 Android 成果的一致性,通過 certification 的專案能使用 Open Handset Alliance Android 商標。「這不是說,你不能搞自己的 branch,而是,你會發現不想去搞自己的 branch。」
有了這樣聰明的陽謀並不夠,Android 計畫還要處理 licensing 議題。手機廠商都想利用 proprietary feature (特別是使用者介面層的應用程式) 來突顯自家品牌的市場優勢,避開 GPL 要求公開原始碼的無限上綱威脅,成為商業聯盟的另一項重要考量,因此 Google 選擇限制較小的 Apache License
open source 與 proprietary 之間的平衡拿捏,對產業而言,正處於做中學的階段。

2008/06/10

The Origins of Linux

影片據稱錄於 2001年 9月 19日,由 Linus Torvalds 介紹 Linux 的故事,影片提供人是 Computer History Museum,其網站維護一份電腦編年史

2008/06/06

How Do Python and RubyOnRails Relate?

有朋友提到這問題。

Python 和 RubyOnRails 是兩個不同範疇的技術項目,最明顯的共同點,它們都是當紅的開發工具。RubyOnRails 是 web application framework,使用的是 Ruby 語言,因此,拿 Ruby 和 Python 來秤斤論兩尚稱公允,Python 世界裡也有 web application framework,而且百家爭鳴,例子有 Zope, Django, Turbo Gears, Pylons 等。

Python 老爹曾評論過它們,當然,挑自己順手的工具,才是聰明的作法。