開源是什麼?
所謂的「開源」,原本指的是開放其設計讓所有使用者自由修改的一項機制。
雖然大多被用於軟件開發過程中,但這項機制已逐漸演變為泛指在產品、計劃與專案方面,透過開放大眾的參與、討論與修改,進而加速其發展、增加透明度及大眾福祉的方式。
什麼又是開源軟件?
開源軟件,指的則是開放其原始碼讓所有使用者自由修改的軟件。對於一般電腦使用者而言,原始碼或許只是個陌生的概念。但是在專業的程式設計師眼中,擁有可以修改原始碼的權限,不但能夠修改程式美中不足的部分,甚至能以該原始碼為基礎,增加更多不同的功能。
開源軟件跟其他一般軟件差在哪裡?
相對於開源軟件,其他不對大眾開放修改原始碼權限的軟件,則被稱為「版權軟件」或是「closed source 軟件」。由於其原始碼的版權屬於開發公司所有,往往只有原始的開發團隊俱有合法修改的權利。 Microsoft Word 與 Adobe Photoshop 就是最著名的例子。在使用這些版權軟件之前,使用者必須同意許多條款,包括在未獲得原始開發者同意的情況下,不得對軟件做出任何修改等。
開源軟件,如 LibreOffice 、GNU Image Manipulation Program等, 與版權軟件不同之處就在於,這些開發者皆願意與大眾分享其原始碼,讓其他開發者能夠借此觀摩學習,甚至加以修改。雖然使用者在開始使用開源軟件之前,也必 須要同意遵守部分使用條款,但條款內容卻與版權軟件的大異其趣。開源軟件的使用條款不但鼓勵使用者對軟件進行修改,部分的使用條款甚至要求修改過後的版本 也必須提供大眾無償使用。也就是說,任何程式設計師只要同意以上條款,就能自由地對這些開源軟件的原始碼進行修改或升級。
就像開源Initiative中所提到的:「開源並不只代表著原始碼的開放。」開源的主要精神在於讓所有人都能擁有依照自己的需求,修改原始碼的權利。而除此之外,開源Initiative也提到了開源的其他層面。
開源軟件只跟程式設計師有關吧?
開源的風潮不只造福了程式設計師們,對於一般使用者也好處多多。事實上,由於整個全球網路的架構,有很大的一部份建立在開源科技如the
Linux operating system 、 Apache Web server appli
cation等的基礎上,因此,不論是使用浏覽網頁、收發 e-mail、即時通訊或是音樂串流等功能,所有的網路使用者都在某種程度上,直接或間接地受惠於開源軟件。
目前,許多個人電腦的運算功能,已逐漸被遠端處理所取代,也就是時下最流行的雲端運算功能。大多數電腦使用者,對雲端運算的依賴程度正與日俱增。從文字編輯、e-mail 管理到影像處理,在利用自己電腦上所安裝的軟件之外,更多出了使用網頁或手機上應用程式的便捷選擇。
這種遠端處理的模式之所以被稱為雲端運算的原因,正是因為其以個人電腦為窗口,與遠端電腦結合所形成的雲狀網路運作結構而得名。在現今高度資訊化的 時代中,雲端運算的重要性已隨著行動上網裝置的普及,而漸漸融入大眾日常生活之中。有些雲端運算應用,如 Google Docs,屬於 closed-end 的版權程式。而其他的應用,如 Etherpad等,則屬於開源軟件。
除了一般使用者所使用的雲端應用以外,支援這些應用運作的平台也可以依屬性,分為閉源(closed source) 與開源,如
OpenStack等。
為什麼要選擇開源軟件?
相較於 closed source 的版權軟件,開源軟件在使用者族群中的愛用程度更勝一籌。對於程式設計師族群來說,開源軟件的開放性原始碼,不但讓他們能夠以其為基礎,根據自己的需要進行開發,也可以透過分享、回會與觀摩他人的原始碼,進一步相互切磋與學習。
另外,對於非程式設計專業的使用者來說,開源軟件的開放性,使其安全性或功能性的缺點與漏洞皆能透過程式設計者社群的共同開發,快速的被修正與改 善。同時,著眼於開源軟件的高度可靠性與長時間由公眾提供維護、升級支援特性,長期專案的規劃及執行者,多半也偏好使用開源軟件,以避免版權軟件過時和消 失的問題。
開源=免費?
大部分人對於開源的最大誤解,就是將開源與免費使用畫上等號。
事實上,雖然是基於開源原始碼修改或升級的版本,程式設計者仍是擁有向任何使用其軟件的使用者收費的權利。然而,因為開源軟件的使用條款強制要求程 式開發者在出售軟件的同時,也必須一併將原始碼公開。因此,大部份的開發者已經逐漸由出售軟件的模式轉為釋出免費軟件,並提供需付費的支援服務。如此一 來,使用者大眾仍可以免費使用開源軟件,而開發者則可以透過協助使用者安裝、使用與除錯來獲利。
開源=生活態度
開源的觀念並不只限於軟件的開發與使用,而是希望能夠把開源昇華成生活中的態度。抱持著開源態度,意味著透明化的與大眾分享與合作、將失敗視為進步的一部份、並盡量鼓勵、推廣開源的觀念與模式。
除此之外,開源也代表了對於現今大眾對於公共事務冷漠的反思。透過積極地參與公共事務,才能破除現實世界中,如同 closed source 軟件的封閉原始碼般,僅由少數人把持著形塑大多數人生活的計劃、規則制定過程的壟斷現象。不論是在軟件開發、教育、商業、政治等方面,任何規則的制定 (不管是以原始碼、制度或法律的形式),透過開放公眾參與,都能達到一個更加美好完善的結果。
原文:http://buzzorange.com/techorange/2014/12/19/what-is-open-source/
譯文:http://www.oschina.net/news/58921/what-is-open-source