2013年6月22日

認識 Mozilla:Firefox 成長實錄

「Mozilla」的歷史,最早可以追溯至 1994 年。當時,這個名字首次作為 Netscape Navigator 的品牌名稱出現,取其「Mosaic 殺手(Mosaic Killer)」之意。 1998 年,Netscape 決定向開放原始碼社群公開他們瀕死瀏覽器的原始碼,成就今日我們所認識的 Mozilla 組織。Firefox 的前身的 Mozilla 瀏覽器, 直至 2002 年才誕生。在某種意義上來說,Firefox 總共經歷了 10 年奠定基礎,才在 2004 年釋出了 1.0 版。

沿革

Firefox 的起源可以直接追溯至 Netscape 公司的網頁瀏覽器 Netscape Navigator。在微軟發展出 Internet Explorer 前,Netscape 曾經獨霸全球,當時公司內部就稱呼此瀏覽器為 Mozilla。在 1998 年,Netscape 以開放原始碼授權公開 Navigator 的原始碼,讓任何人都能夠觀看、使用。他們設立了一個非營利小組,運用這些程式碼作為基礎開發瀏覽器。這個小組在 2003 年成為 Mozilla 基金會。

然而,Firefox 並不是 Mozilla 小組計畫中的成果。當時 Mozilla 小組所開發的 Mozilla 瀏覽器,就像先前的 Netscape Navigator 一樣,隨著新增的功能越來越多,變得越來越大 ── 在軟體工程中,我們稱呼這種問題為「功能蔓延(Feature creep)」或「軟體膨脹(Bloat)」,而且日益嚴重。

大約此時,14 歲就開始貢獻 Mozilla 計畫的電腦狂熱份子 Blake Ross,與 Dave Hyatt、Joe Hewitt 及 Chanial 開始了一個 Mozilla 瀏覽器的實驗性分支計畫。他們相信 Mozilla 瀏覽器因為需要迎合 Netscape 的贊助商及開發者們的商業需求,因此產生功能氾濫、效能大打折扣。為了解決 Mozilla Suite1 的軟體膨脹2 問題,他們希望以 Mozilla 為基礎,開發一個精簡樸實的瀏覽器,希望能以此取代 Mozilla Suite。

Ben Goodger 在 2003 年加入了 Ross 的實驗計劃,從那時候開始有了大幅進展。Mozilla 組織在 2003 年 4 月 3 號宣佈,他們計劃把發展重心從 Mozilla Suite 轉向 Firefox 和 Thunderbird。

盡管 Mozilla 基金會一直希望能讓 Mozilla Suite 走入歷史,用 Firefox 來取代它,但由於還有許多企業用戶使用,也被一些第三方軟體包裹在內,因此 Mozilla 基金會仍然持續維持更新,直至 2006 年 4 月 12 號。在那之後,Mozilla 社群改以 SeaMonkey 為產品名稱,繼續發行新版的 Mozilla Suite。

命名

Firefox 計畫起源於名為 m/b(或稱 mozilla/browser)的 Mozilla Suite 實驗性分支,在 2002 年 9 月,以 Phoenix 為名,釋出測試用執行檔而正式問世。其後並歷經多次改名:

Manticore

Phoenix 朝著和其上游的 Mozilla 完全不同的開發方向進行。相較於 Mozilla Suite 是以資深工程師為首,組織大型開發團隊的大型應用軟體,Phoenix 的開發成員,則是特別專注於網頁瀏覽功能的小型核心式團隊。這種小型志願專案的形式源自於更早期,David Hyatt 與 Ben Goodger 以 Netscape 和 Internet Explorer 為基礎,使用 C# 和 .NET 語言撰寫的 Manticore 瀏覽器。

Phoenix

Manticore 意在以精幹的軟件型態,提供基本瀏覽功能;而 Blake Ross 和 David Hyatt 的 Phoenix 計畫,則著眼於瀏覽體驗的創新。致力於將安全及效能作為支柱,且不被 Netscape 的商業心態的約束,才能開發出一個「完全替終端使用者量身訂造」的瀏覽器。Phoenix 這個名子一直使用至 2003 年 4 月 14 日,因為與 BIOS 製造商 Phoenix Technologies(開發了以 BIOS 為基礎的 Phoenix FirstWare Connect 瀏覽器)的商標糾紛而更名。

Firebird

在 2003 年 4 月,Mozilla 宣佈他們的新瀏覽器將命名為 Firebird,以避開與 Phoenix 的爭議。Firebird 是個通過自焚重生的神話生物不死鳥,有時也被認為是鳳凰的別稱。這個新名子引起了許多不同的反應,特別是激起了早以 Firebird 為名的自由軟體資料庫專案強烈反彈。因應於此,Mozilla 基金會亦表示他們將會永遠使用「Mozilla Firebird」的名稱,以避免和 Firebird 資料庫混淆。

更令人困惑的是,贊助 Firebird 資料庫開發團隊的公司,名為 IBPhoenix(和先前與 Mozilla 產生商標爭議的 Phoenix Technologies 無關)。IBPhoenix 由 InterBase Software 於 1984 年成立,在 1991 年被 Borland Software 收購,在 2000 年推出開放原始碼的 Firebird 自由資料庫軟體專案。

Firefox

來自 Firebird 社群的持續壓力,迫使 2004 年 2 月 9 號的另一次改變,Mozilla Phoenix 計劃再次更名成 Mozilla Firefox(簡稱 Firefox)。「Firefox」是「小熊貓」的暱稱3,因為它和「Firebird」的相似性、以及它在資訊產業中的獨特性而雀屏中選。

為了確保不會再有變更名稱的問題,Mozilla 基金會在 2003 年 12 月向美國專利與商標局申請註冊 Firefox 商標。不幸的是此時發現,在英國 Firefox 已是 Charlton Company 軟體公司的註冊商標。這個問題導致 Firefox 0.8 延遲了幾個月釋出,在基金會取得 Charlton 的歐洲商標使用權後順利解決。

版本

Firefox 1.0 在 2004 年 11 月 9 號正式釋出。在那之前,Firefox 計畫已經公開過許多個開發中測試版。

經過一系列穩定性及安全性更新後,Mozilla 基金會在 2005 年 11 月 29 日發布第一個主要更新版本 Firefox 1.5。Firefox 2.0 在 2006 年 10 月 24 日釋出。Firefox 3.0 在 2008 年 6 月 17 號發布,Fx 3.5 及 3.6 則分別在 2009 年 6 月 30 號及 2010 年 1 月 21 日釋出。Firefox 4.0 在 2011 年 5 月 22 日公開。

Firefox 在 4.0 版之後,為了追求新功能的快速上線與軟體的穩定更新,Mozilla 開始執行快速釋出週期的開發模式,即是在每六週的星期二定期發布新的主要版本。在此之後,版本號碼即不像過去般重要,而主要是作為開發者的參考之用。Firefox 5 在 2011 年 6 月 21 日發布,最新的 Firefox 22,則在 2013 年 6 月 24 日釋出。

註解

1. Mozilla Suite:Mozilla 是 Netscape Navigator 瀏覽器的產品開發代號及內部的簡稱;Mozilla Suite 則是一個軟體集,包含瀏覽器、IRC、電子郵件、新聞群組等通訊軟體,以及所見即所得的 HTML 編輯器。目前 Mozilla Suite 由社群以 SeaMonkey 之名持續釋出中。

2. 軟體膨脹(Software bloat) :電腦程式的後續版本,包含越來越多終端用戶未使用到的功能。新版耗用了更高的系統資源,卻只提供多一點點的效能,甚至沒有增進。

3. Firefox:小熊貓(Red Panda)的暱稱。小熊貓是一種紅色軟毛,與浣熊科和鼬科相近,瀕臨絕種的哺乳動物,在喜馬拉雅山、中國和緬甸都可以發現牠的蹤跡。

原文 / En:NeMo-Firefox
授權 / 創用 CC 姓名標示-相同方式分享-3.0或更新版本

φ 無銘氏 翻譯 / Irvin 編輯 / 感謝所有貢獻本文翻譯的社群成員

2013年6月19日

Firefox OS - 客製化手機的最佳方案

Firefox OS 是今年 Mozilla 最具話題性的產品。以目前行動系統市場分布的情況來看,Mozilla 為什麼會想投入行動市場?Firefox OS 挑戰 Android 及 iOS 的優勢在哪?本文就由 Firefox 校園大使 Dayo 為大家簡單分析。

Firefox OS 與 App 的開發資訊可至此查閱,各位狐迷也歡迎參加每週台北與基隆的 MozTW Lab 聚會,現場均備有開發者預覽機可以親手把玩喔。

親愛的,我把 Web 通通變成 App了

開發 Firefox OS App,並不需要像寫 iOS、Android 應用程式一樣,得重新學習 Native App 的寫法。只要俱備 HTML、CSS、JavaScript 的 coding 能力,就可以動手開始開發。此一開放特性是在於 Firefox OS 系統架構上,即具備 Firefox 瀏覽器的 Gecko 引擎,因此「任何有手機版的網站,Web App 都是 Firefox OS 的 App」,因為 Firefox OS 在系統核心 (kernel) 之上即是 Firefox 所使用的 Gecko 引擎。在這種架構下,開發者不需再針對 Firefox OS 重新開發一個 Native App,因為在 Firefox OS 中,Web App 就是 Native App。

對開發者來說,要兼顧各個平台的相容性是一大噩夢。有時除了 Web、Mobile Web 外,還必須顧及 iOS、Android、Windows Phone 等各家平台互不相通的原生 App 架構與硬體規格。對於較晚進入市場的 Firefox OS 來說,以開放標準提供系統運行、程式的開發平台我認為是相當明智的選擇。

HTML5 效能大解放

Mozilla 以 Gecko 瀏覽器引擎來試圖打造行動作業系統並不稀奇,因為 Google 的 Chrome OS 也是如此。究竟為何兩個瀏覽器大廠都試圖開發以瀏覽器引擎為核心的作業系統呢?

因為 HTML 經過 20 多年發展至 HTML5,已足夠作為開發完整的應用程式之用,除了透過 CSS,在設計 UI 上更為簡易方便外,Mozilla 開發的一系列 Web API,還能讓 JavaScript 程式完整運用,並存取各項硬體功能。現今的網路應用程式早已如同桌面應用程式一般強大,以 web 引擎來打造 OS 已不再是天方夜譚。

Firefox OS 除了對於 HTML5 有最完整的支援,更強化和硬體溝通的能力,讓 JavaScript 程式能直接存取方向、靠近、光感、地理資訊……等等各種感應器資訊,以及存取藍牙、Wifi、NFC、檔案系統、相機及音樂資料庫之外,還另外針對通話、簡訊、通訊錄等手機特殊的功能設計出相對應的 API。Firefox OS 目的是讓 Web 成為最大的平台,而非要取代 HTML5 或其它相關技術。

客製化手機,不讓 Facebook Home 專美於前

以前陣子話題性十足的 Facebook Home 為例。Firefox OS 的潛能並不只有在 App,甚至可以輕鬆打造「專屬手機」。從 Firefox OS 的架構來說,如果 Facebook 以 Firefox OS 打造 Facebook Home 的話,運作會更加靈活、有彈性、開發成本也能大為降低。

Firefox OS 可以讓前端工程師輕易打造出專屬於自家網站的手機作業系統,舉例來說:開機後直接連入網站、將使用者在網站上的好友作為通訊錄、拍照立即上傳到網路相簿等,讓自家網路平台和手機做最緊密的整合等都是可以簡單做到的事。例如:無名小站可以打造無名小機、Readmoo 可以打造 Readmoo 電子書機……等應用方式。Firefox OS 還能有什麼其他用途?一切盡由你發揮。

Firefox Marketplace 軟體商現身說法

以下是三間最早投入 Firefox Marketplace 的軟體公司的現身說法,歡迎大家使用 Android 版╱桌面版 Firefox 進入 Firefox Marketplace (marketplace.firefox.com) 下載使用。

φ Dayo 撰寫 / Irvin 編輯

2013年6月17日

開放網路有什麼重要?

關於開放網路,我實在不知該從何說起……原因在於,有關開放網路(Open Web)及其標準,實在有太多太多面向可談了。因為人們對同一件事總是有著不同的觀點,如果想要傳達某件事,在訴諸話語前,知曉該事物在他心中的樣子,是很重要的。因此,我需要一個起頭,來進入這個主題。

我決定先快速地調查一下,人們對開放網路的想法,就從我的親人們開始。我如此簡潔明瞭地問:「嘿,老媽!你覺得『開放網路』是什麼?」我的老媽給了我一個奇怪的眼神,在回答我的問題前,她的視線不斷地在地板、天花板,以及椅子間游移著──「呃,現在的網絡沒有很開放嗎?你可以從網絡得知太多資訊,你可以分享任何東西給任何人。網路上有許多免費的東西、教材及文件可以學習。網路本身就是開放的。」

這個答案令我多麼驚訝!在這之後我問了許多人,或多或少都是同樣的內容。

我要要告訴你們的是,現在的網路,在以「標準」為標準去衡量時,並非如人們所想的如此開放。你應該要明白,就如我過去的感覺,人們只看到網路的外在、而非更廣泛的整體。記住,我們現在要討論的,並非網路的籠統外觀,而是它的內部運作。嘿、各位,開始動起腦筋吧!我們接下來要開始講些複雜的東西了。

在90年代,全球資訊網(World Wide Web,簡寫為 WWW)從歐洲核子研究組織(CERN,一個歐洲的研究組織,也是現代網路之父)對外公開亮相之時,許多網絡的內容格式都是開放給任何人觀看、操作、改善,以及貢獻的。舉個最直接的例子:透過瀏覽器中的「檢視原始碼」功能,就能查看一個網頁的程式碼。

「哇靠!這樣不對吧。我幹嘛讓個路人甲乙來複製我的網站?」許多人或許會這麼問。但這不完全是壞事──至少沒那麼糟糕,如果你的飯碗沒被影響到的話。「分享你所知道的東西,就能創新的更快更好」,我認為這是個被廣為接受的概念,也正是開放網路的關鍵所在。

無論是什麼東西,只要有個既創新,又具吸引力的框架,就會使更多人傾向加入你的行列來使它變得更好。隨著更多人的加入,就會有更多的創意、更多的想法,以及更好的解決方案。

這就是網際網路在這幾十年間呈現指數型飆漲的原因。因此,在網路發展的早期階段,那些看似他人在標準之上的即興創作,最終都成為非常不錯的樣貌。

這幾年來,越來越多的網路科技問世。人們開始使用視訊串流服務(白話來講,就是在線上觀看影片)、互動遊戲、網路銀行和其他類似的基礎服務。這些新流行,必須依賴某些科技來實現。就拿視訊串流來說好了,很多我們在網路上觀看的都是 Flash 影片(Flash 是一種檔案格式,就像 mp3 或 doc 檔一樣),想看必須先安裝 Adobe Flash Player。但是,Flash Player 的技術規格一直到現今,都還是不為大眾所知。微軟也是相同的情況,他們創造了 Flash 的替代品 Silverlight,又一個專有的規格。噢拜託!這麼做有什麼意義?

如果全世界的開發者們都能夠自由取用這些技術的話,他們也許就會發現某些潛在的發展機會,在多元平台及設備上實作,也不再會是問題。這些矽谷人的問題,就是他們不去嘗試互相合作,而是相互競爭,嘗試做出專屬自己的解決方案。在最糟的情況中,沒有一方要提供替代品、也不把技術帶到對方的產品之上,然後雙方還互相宣傳自己才是業界標準。

最後身受其害的,不是別人,正是我們大眾。邪惡吧!

而且,當某個人掌有某樣技術的掌控權後,他就會創造壟斷局面、並試圖利用它來致富。類似的營運方針,不但會限制人們的喜好,還會剝奪大家實現自己理想網路的權力。

這正恰恰違背我們在談的「開放網路」理念。網路在現今早成為公共資源,它演變成為一個重要的元件──無論是教育、商業或娛樂上,隨便你怎麼舉例,網際網路總會含括在內。基本上,它必須對所有人開放,讓每個人都有權利去參與和貢獻。它必須有能力能塑造出個人體驗、必須能豐富大家的生活。但是現在看來,前景並不是這樣美好。

我們現在有一些免費卻專利的網路應用程式可以用。但我很擔心,按照目前的趨勢來看,除非我們開始認真的審視它們,否則他們不會永遠維持如此。

原文 / En:NeMo-Openweb
作者 / Dwaraka Nath
授權 / 創用 CC 姓名標示-相同方式分享-3.0 或更新版本

φ 無銘氏、kero 翻譯 - Irvin 編輯