[轉貼] 20年自由軟體 現在呢?

放輕鬆,這個版純聊天不談技術,歡迎大家進來坐坐。

[轉貼] 20年自由軟體 現在呢?

文章Tetralet » 週三 1月 07, 2004 10:48 pm

20年自由軟體 現在呢?
                              Richard Stallman

7/1/2004
原文網址 : http://taiwan.cnet.com/news/special/0,2 ... 848,00.htm

評論:20年前的今天(星期一)我辭去MIT(麻省理工學院)的工作,開始開發一套稱為GNU的自由軟體作業系統。雖然我們從來沒推出一套真正可用在生產上的完整GNU系統,不過現在卻有另一個衍生的 GNU系統廣為大眾所採用,只是多數人並不知所以然。自由軟體(free software)不是免費的(gratis),它所表達的是用戶可自由執行程式、研究程式碼、做修改,甚至重新散佈,至於要免費或收費則並無限制。

我的希望是藉由自由作業系統打出一條永遠免受封閉式專屬軟體的限制。非自由軟體往往對用戶做出種種限制,我曾深深體會到這種模式醜陋的一面,因此我決定逃脫出來,並讓大家也有機會跳出來。

不自由的軟體隱藏著一種反社會的體制,禁止大家共同合作與社群分享。通常你看不到原始碼;你不知道裡面到底有哪些愚蠢的漏洞。即使你不喜歡,你也不能動手修改。最慘的是,你不能與他人分享。禁止軟體分享在本質上就是切斷社會的關連,與世隔絕。

現在,市場已經有一大群用戶在使用GNU、Linux與其他自由軟體。成千上萬的使用者更希望加以延伸,立志要說服更多電腦用戶「採用自由軟體」。但「採用自由軟體」這句話是什麼意思?這是代表逃脫專屬軟體的枷鎖?還是只是同時多安裝一套自由軟體就算了?我們希望讓大家真正享有自由?或者僅是要他們加入我們的工作?換言之,我們究竟是希望為自由而奮鬥?還是看到用戶數節節上升就以此自滿?

有時我們很難察覺這之間的區別,因為在很多情況下兩者似乎無甚差異。你試圖說服他人使用一套自由程式時,或者要他們安裝GNU/Linux作業系統時,不管以哪一種目標都可達到同樣的行為。不過,在某些情況下,這兩種目標卻又會造成截然不同的行動。

例如,當有人推出非自由的驅動程式、或者資料庫、編譯器等用在GNU/Linux系統時,我們應該感謝這些開發人員大力相助我們的系統嗎?還是我們也應該把這些也等同視作跟其他專屬軟體一樣,都是一種誘人的陷阱,讓我們受到束縛,我們必須加以解決?

若你是以增加自由軟體受歡迎度為目標,若你只是說服周遭用戶撥出點時間來用自由軟體,那你或許就認為這些非自由程式對於此一目標相當有幫助。我們也很難不承認這些程式多少助長了GNU/Linux的熱門程度。若自由軟體社群是以GNU或Linux普及化為目標,那我們對於任何可相容執行的程式都該予以喝采,不管這些是專屬與自由軟體。

但若我們的目標是自由,那一切就為之改觀了。用戶若繼續使用非自由程式就無法達到自由的境界。若要解放電腦世界的公民,我們必須將所有不自由程式都加以取代,而非接受。這些非自由程式對於我們社群而言並非貢獻,他們反而誘使我們繼續沈淪在不自由的境界中。

開發自由軟體通成有兩種動機,一是因為沒有其他程式可用,可惜的是一旦接受了非自由程式就等於消滅了此一動機;另一個則是渴求自由的意志,這會激勵大家撰寫自由軟體來取代不自由的程式。在這種情況下,動機是唯一的支撐,只要大家勇於使用自由程式,即使許多技術還無法與不自由程式相比,但這就足以鼓勵自由開發人員繼續努力寫出更好的程式。

這些不自由的程式可不是小問題。要開發出自由的替代品是個浩大的工程,說不定要花上許多年。這些工作還需仰賴未來的電腦高手,也就是現在的年輕人,那群還未對自由軟體心生嚮往者。我們現在該怎麼做才能說服這些年輕人未來能秉持這樣的意志來完成此一工作?

若要強化我們社群的未來,那就需要讓大家能更瞭解自由的真諦,教導大家認識不自由的軟體絕不可接受。只有真正重視自由的人才能長期抵擋得住這種誘惑。(陳奭璁)

Copyright 2004 Richard Stallman
本文歡迎全文轉載,無須稿酬,但需保留此段告示。


----------------------------------------------

因為在文末已經說明可以全文轉載了,
所以就直接貼上來了。
若有任何冒犯敬請告知。 
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

文章Tetralet » 週三 1月 07, 2004 11:41 pm

這個問題我想了很久了:

  什麼是『自由』?

對於程式設計師而言,
如果全世界只有 C++ 一種語言,
那麼我只要會 C++ 我就可以吃遍天下了。
這也是一種自由,不是嗎?

對於資料庫管理者而言,
如果全世界只用 Oracle 這種資料庫,
那麼我只要精通 Oracle 就夠了,
這也是一種自由,不是嗎?

對於網頁設計師而言,
如果全世界只用 IE 6.0 SP1,
所有人的螢幕大小全是 1024X768,
那麼在設計網頁時就不用考慮那麼多了,
這也是一種自由,不是嗎?

對於 Linux 使用者而言,
如果全世界只用 KDE 當作桌面環境,
那麼不管是 Theme 的安裝、環境的設定、使用的介面等等就不會各吹各的調,
這也是一種自由,不是嗎?

對於 MS Windows 使用者而言,
我在安裝任何硬體時只要光碟放進去,
『下一步』、『下一步』一直按下去,
我的新硬體就可以正常使用了,
這也是一種自由,不是嗎?


由此觀之,『自由軟體』到底自由在哪裡呢?
如果說是因為有了太多的選擇,
是不是反而會讓人們無所適從呢?


再一個比喻:

Linux 的執行檔大多都放在 /usr/bin 下面,
還有些會放在 /usr/X11R6/bin 下面,
而有的人會放在 /usr/local/bin 下面,
放在 /opt 下面的也有,
還有的就乾脆放在自己的 Home Directory 下面的...

如果說這是自由,那還真是一團亂的。


而『自由軟體』所追求的『自由』,
就是這種自由嗎?
Richard Stallman 所提倡的『自由』到底是怎麼一回事呢?
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

文章moto » 週四 1月 08, 2004 9:41 am

Richard Stallman 一直強調的自由除了 source code 不應該被包起來,還必須要讓人能夠自由的修改與散佈,他也強調了不反對金錢行為,可是以公司的立場而言,這的確是有很大的困難,單靠 Service 賺錢不是一般小軟體公司能夠維持生存的獲利方式,對於芸芸眾生而言,免費似乎才是大家最關心的.. :ooops:

我個人認為這種自由只是一種理想,或許我們可以很接近這個理想,但是要完全符合 Richard Stallman 的境界我想是不太可能的... :-P
歡迎你來到MOTO學園一起討論Debian相關問題。
在post問題前可先別忘記了以下的步驟:
1:翻一下/usr/share/doc/中是否已經有解答了?
2:閱讀一下無痛起步是否已經提到了?
3:找一下google予以解答?
4:善用學園中的"搜尋"功能,往往答案就在裡面窩。
頭像
moto
摩托學園站長
摩托學園站長
 
文章: 2808
註冊時間: 週二 9月 03, 2002 3:37 am
來自: 台北

文章Edward G.J. Lee » 週四 1月 08, 2004 7:09 pm

moto 寫:Richard Stallman 一直強調的自由除了 source code 不應該被包起來,還必須要讓人能夠自由的修改與散佈,他也強調了不反對金錢行為,可是以公司的立場而言,這的確是有很大的困難,單靠 Service 賺錢不是一般小軟體公司能夠維持生存的獲利方式,對於芸芸眾生而言,免費似乎才是大家最關心的.. :ooops:

我個人認為這種自由只是一種理想,或許我們可以很接近這個理想,但是要完全符合 Richard Stallman 的境界我想是不太可能的... :-P


在 TW Slackware Forum 也有人提出類似的質疑。:-)

我的問答是:

我們讀聖賢書,知道聖賢事的道理。

但,我們實際上做了多少聖賢事?而聖賢書、聖賢事的道理,仍然不減其存在的價值。:-)
LGJ
道隱於小成,言隱於榮華。(莊子.齊物論)
頭像
Edward G.J. Lee
榮譽學長
榮譽學長
 
文章: 211
註冊時間: 週一 11月 10, 2003 9:24 pm
來自: 鄉下

文章z586 » 週四 1月 08, 2004 11:20 pm

Tetralet 寫:這個問題我想了很久了:

  什麼是『自由』?

對於程式設計師而言,
如果全世界只有 C++ 一種語言,
那麼我只要會 C++ 我就可以吃遍天下了。
這也是一種自由,不是嗎?

對於資料庫管理者而言,
如果全世界只用 Oracle 這種資料庫,
那麼我只要精通 Oracle 就夠了,
這也是一種自由,不是嗎?

對於網頁設計師而言,
如果全世界只用 IE 6.0 SP1,
所有人的螢幕大小全是 1024X768,
那麼在設計網頁時就不用考慮那麼多了,
這也是一種自由,不是嗎?

對於 Linux 使用者而言,
如果全世界只用 KDE 當作桌面環境,
那麼不管是 Theme 的安裝、環境的設定、使用的介面等等就不會各吹各的調,
這也是一種自由,不是嗎?

對於 MS Windows 使用者而言,
我在安裝任何硬體時只要光碟放進去,
『下一步』、『下一步』一直按下去,
我的新硬體就可以正常使用了,
這也是一種自由,不是嗎?


由此觀之,『自由軟體』到底自由在哪裡呢?
如果說是因為有了太多的選擇,
是不是反而會讓人們無所適從呢?


再一個比喻:

Linux 的執行檔大多都放在 /usr/bin 下面,
還有些會放在 /usr/X11R6/bin 下面,
而有的人會放在 /usr/local/bin 下面,
放在 /opt 下面的也有,
還有的就乾脆放在自己的 Home Directory 下面的...

如果說這是自由,那還真是一團亂的。


而『自由軟體』所追求的『自由』,
就是這種自由嗎?
Richard Stallman 所提倡的『自由』到底是怎麼一回事呢?


呵!
看了您的許多"也是一種自由"後,總覺得怪怪的,個人覺得您所說的"自由"應該換成"標準"或許會比較恰當一些,在標準之下所建立的自由,不是嗎?

我也打個比喻,中華人民共和國說,只要台灣不攪獨立,你們仍可維持民主現狀...好了!照您的比喻方式來說,只要不攪獨立,我們仍可維持民主現狀,這不也是一種自由??

很抱歉!!打了個敏感的政治比喻,我想"自由"的前提是不應該建立在某個太過狹觀的基礎之上的,這和那隻坐井觀天的青蛙有和不同??在井底之下,牠不也很自由??

無論是您所說的自由或是我打的政治比喻,在這裡面搞出來的所謂自由,都可以被一個有絕對能力的東西否決掉,那就是這些包容自由的"基礎",誰叫你要把自由建立在某些基礎之上...

我個人覺得,自由軟體之所以吸引我的地方是在於一種思想的解脫,我想大家想表達的自由是這種感覺吧?不管用甚麼形式或是在任何形式之下,我們可以接受它,也可以改變它,甚至創造出從來沒有的它,一切都由我們自己決定,沒有任和人有絕對的能力否定我的想法,就是這種解放感覺,商業軟體正好相反,你只能選擇要不要接受它,但絕不可以改變它,甚至創造出一個有點模仿它的另一個它,因為它會告你,讓你吃不玩兜著走...

我想商業軟體和自由軟體的差別就是商業軟體可以擁有絕對權利左右你的想法,只要你不照它的模式運作和付出一定的代價,它就能否定你,但付出也是有代價的,你所必須付出的是金錢,而得到的是專業的功能,這未嘗不件是好事!!使用者付費本來就天經地義,用自由軟體難道不需付費嗎?其實我們只是付出另一種形式的代價而不自知罷了!
映心塵
z586
可愛的小學生
可愛的小學生
 
文章: 10
註冊時間: 週六 12月 13, 2003 1:12 pm
來自: taiwan

文章Edward G.J. Lee » 週五 1月 09, 2004 12:00 am

Tetralet 寫:這個問題我想了很久了:

  什麼是『自由』?


得看你要的是哪方面的自由。

對於程式設計師而言,
如果全世界只有 C++ 一種語言,
那麼我只要會 C++ 我就可以吃遍天下了。
這也是一種自由,不是嗎?


那麼,對不是 C++ 的程設師而言呢?:-)

對於資料庫管理者而言,
如果全世界只用 Oracle 這種資料庫,
那麼我只要精通 Oracle 就夠了,
這也是一種自由,不是嗎?


同樣的,如果不是 Oracle 的使用者呢?
又,什麼樣的力量會造成「世界只用 Oracle 」這種情況呢?
如果真有這種力量,又如何保證,這種力量不會用到其他地方呢?

對於網頁設計師而言,
如果全世界只用 IE 6.0 SP1,
所有人的螢幕大小全是 1024X768,
那麼在設計網頁時就不用考慮那麼多了,
這也是一種自由,不是嗎?

對於 Linux 使用者而言,
如果全世界只用 KDE 當作桌面環境,
那麼不管是 Theme 的安裝、環境的設定、使用的介面等等就不會各吹各的調,
這也是一種自由,不是嗎?

對於 MS Windows 使用者而言,
我在安裝任何硬體時只要光碟放進去,
『下一步』、『下一步』一直按下去,
我的新硬體就可以正常使用了,
這也是一種自由,不是嗎?


答案和前面的一樣。

由此觀之,『自由軟體』到底自由在哪裡呢?
如果說是因為有了太多的選擇,
是不是反而會讓人們無所適從呢?

再一個比喻:

Linux 的執行檔大多都放在 /usr/bin 下面,
還有些會放在 /usr/X11R6/bin 下面,
而有的人會放在 /usr/local/bin 下面,
放在 /opt 下面的也有,
還有的就乾脆放在自己的 Home Directory 下面的...

如果說這是自由,那還真是一團亂的。


已經有人回應了。可以建共同遵守的 stand/spec。
這是一種協議。我們的社會規則(道德、法規)就是這樣制訂出來的。

而『自由軟體』所追求的『自由』,
就是這種自由嗎?
Richard Stallman 所提倡的『自由』到底是怎麼一回事呢?


他已經說得很明白了。就像我們呼吸空氣一樣的自由。
至於空氣的污染(亂象),這和自由本身並無直接困果關係。

當然,這是一種理想。就像我們的大同世界理想一樣。

現實上可不可能實現已經不是那麼重要,重要的是有了一種制衡。我們還是得回到現實的世界(中庸)。

這種制衡的力量相當的寶貴,這也是我們珍惜 FS/OSS 甚至我們的大同世界理想的原因。

這是個人的看法,希望對你的思緒整理有幫助。
LGJ
道隱於小成,言隱於榮華。(莊子.齊物論)
頭像
Edward G.J. Lee
榮譽學長
榮譽學長
 
文章: 211
註冊時間: 週一 11月 10, 2003 9:24 pm
來自: 鄉下

文章shogun1234 » 週五 1月 09, 2004 6:48 pm

First to say here, I'm not to declaim the following statement is right from wrong. However, it's percept to the original definition. According to the "The Free Software Definition" defined in the GNU (http://www.gnu.org/philosophy/free-sw.html). It doesn't matter weather you can run the programme or not. On the contrary, the higher freedom is that of having those permission defined in the article.
<quote>
...
A program is free software if users have all of these freedoms
...
</quote>
Freedom to run the programme simply be part of it.

[quote="Tetralet"]這個問題我想了很久了:

  什麼是『自由』?

對於程式設計師而言,
如果全世界只有 C++ 一種語言,
那麼我只要會 C++ 我就可以吃遍天下了。
這也是一種自由,不是嗎?

對於資料庫管理者而言,
如果全世界只用 Oracle 這種資料庫,
那麼我只要精通 Oracle 就夠了,
這也是一種自由,不是嗎?

對於網頁設計師而言,
如果全世界只用 IE 6.0 SP1,
所有人的螢幕大小全是 1024X768,
那麼在設計網頁時就不用考慮那麼多了,
這也是一種自由,不是嗎?

對於 Linux 使用者而言,
如果全世界只用 KDE 當作桌面環境,
那麼不管是 Theme 的安裝、環境的設定、使用的介面等等就不會各吹各的調,
這也是一種自由,不是嗎?

對於 MS Windows 使用者而言,
我在安裝任何硬體時只要光碟放進去,
『下一步』、『下一步』一直按下去,
我的新硬體就可以正常使用了,
這也是一種自由,不是嗎?


由此觀之,『自由軟體』到底自由在哪裡呢?
如果說是因為有了太多的選擇,
是不是反而會讓人們無所適從呢?


再一個比喻:

Linux 的執行檔大多都放在 /usr/bin 下面,
還有些會放在 /usr/X11R6/bin 下面,
而有的人會放在 /usr/local/bin 下面,
放在 /opt 下面的也有,
還有的就乾脆放在自己的 Home Directory 下面的...

如果說這是自由,那還真是一團亂的。


而『自由軟體』所追求的『自由』,
就是這種自由嗎?
Richard Stallman 所提倡的『自由』到底是怎麼一回事呢?[/quote]
shogun1234
可愛的小學生
可愛的小學生
 
文章: 53
註冊時間: 週三 1月 08, 2003 3:04 pm

文章Tetralet » 週日 1月 11, 2004 4:12 pm

感謝各位的回覆。


其實,我一直在想:『Free Softwar』,『自由軟體』所言及的『自由』,
是不是和我們一般的認知有所差距呢?


當然囉,我們可以從 GPL 的授權聲明裡,
來了解什麼是『Free Software』:

 一個軟體應該能夠自由得讓任何人使用
 一個軟體應該能夠自由得讓任何人學習其技術
 一個軟體應該能夠自由得讓任何人將其散佈給別人
 一個軟體應該能夠自由得讓任何人修改並公開修改成果

這就是 GNU 所言及的 Free Software 四大自由。(請參考:The Free Software Definition

如果綜合以上四點來看,
個人斷定:Free Software 所保障的自由,應該說是『程式設計師的自由』
如果您是程式設計師,
那麼有了 GPL 您就可以如魚得水般悠遊於 Free Software 的世界裡。


但是『程式設計師的自由』有時並不是『使用者的自由』


我們大多數人只是一般的使用者。我們很少進行什麼程式開發。
Source Code 對於我們而言往往只是雞肋,
有了 Source Code 我們並不會覺得太高興,
沒了 Source Code 我們也並不是很在乎。


比如說,nVIDIA 的 XFree86 Driver。
nVIDIA 官方有提供 For XFree86 的 Driver,不過是 non-Free 的。
XFree86 也有提供它的 Driver,是 Free 的,但是效能相較之下並不是很好。

那麼請問,您會採用哪一個 Driver 呢?


而 nVIDIA 的 nForce2 的網路晶片一直沒有 Free 版本的 Driver。(正在開發中)
那麼它的使用者也就不得不使用 nVIDIA 的官方 non-Free Driver 了。


沒錯,我們使用者喜歡免費、可以任意使用的東西。
至於是否能夠任意修改 有 時 候 我們就比較不在乎了。
但是不能任意修改的軟體,就絕對不能叫做 Free Software 了,不是嗎?


那,我們這些使用者關心什麼呢?
其實,我們只關心使用者環境是否便於使用。
也就是『整體系統的整合性』及『軟體的功能性』。


舉個例子:中文輸入。
在想像中,一個注重『使用者自由』的電腦系統,
我們應該可以在任何軟體裡鍵入中文字。

但是在 Linux 裡,目前為止還是不行。


再舉個例子:locale。

在 RedHat / Mandrake 裡,是由 /etc/sysconfig/i18n 來控管,
而在 Debian 裡,是由 /etc/environment 及 Login Script 等等來設定。

如此重要的設定,
竟然有多種完全不同的做法?


還有另外一個例子:Kernel Header。
在編譯驅動程式時,
常常會需要 Linux Kernel Header,
那麼 Linux Kernel Header 是位於哪裡呢?
據個人的經驗,根本沒一個準,以下位置(以敝人系統為例)都有人在用:

  /usr/src/linux
  /usr/src/linux-2.4.22
  /lib/modules/2.4.22-1-k7

Linux Kernel Header 該位於哪裡的確是沒規定,
但這樣子是不是太亂了點?


而在網路上,也常常聽到一些 Linuxer 的論調:

 你不會想辨法自己修改 Source Code 呀?
 你不會想辨法自己動手開發一個出來呀?

沒錯,我們的確有修改、開發或是 Bug Report 的義務,
但很可惜的,不負責任地要求使用者自己想辨法去修改去開發並不能算是『使用上的自由』。
像這樣動輒說:『自己想辨法』的作業環境,
我想要說服人們來使用它並不是很容易吧?


當然,您可能會抗議:『GPL 是個「軟體授權書」,
它哪會管 GPL 的軟體能否支援 XIM、要如何設定、擺放位置在哪裡、該由誰來開發等等瑣事呀?』

沒錯,GPL 講的只有『程式設計師的自由』,
其它的它不必管,也不可能會去管。
但是一個良好的電腦系統環境,
必須要注重其整合性及功能性,不是嗎?
否則,在使用它時,所感受到的根本就是『不自由』。


所以,我的總結是:
雖然是『Free Software』,但是還是必須有良好的規範,
否則各自為政的結果反而會使得使用者感到困惑及無所適從,
連基本操作都有其困難了,
更遑論什麼自由自在、無拘無束得使用呢?
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

文章damon » 週日 1月 11, 2004 5:23 pm

01.買硬體,廠商提供driver,是廠商的義務,至於他們要不要用gpl來release他們的dirver,是他們的選擇自由,這無法強迫他們

02.輸入中文的問題,老外不需要,所以必須由台灣人自己想辦法,而現在這樣雖然有缺陷但還算堪用,使用者自由要看對那裡的使用者而言,以目前free software developer幾乎都在國外而言,要他們能夠理解台灣地區使用者的需求很難,所以只能怪台灣人自己,不過現在螢火飛在弄xcin,感謝他的努力

03.linux每個dist的設定檔位置都不一樣理所當然,linux本來就只是kernel而已,至於包dist的人想怎麼包,那是他們的自由,不過近年來有人在堆動標準化,不過效果有限

04.我不覺得free software應該受到所謂的規範,在不違反gpl的前提下,拿到free software的人想怎麼弄都是他的自由,也就是法律沒有禁止的,你去作都不違法,應該推動的是開放與統一的標準,讓這些標準成為rfc,就像mta有sendmail , postfix , qmail , exim等等,但他們都遵守smtp rfc,雖然他們的設定檔都不一定一樣,或是字型這種東西,每一家廠商都會自己研發,但都必須符合一定的公定標準
而有許多部份還沒有統一的開放標準,最明顯的就是列印這部份,目前還沒有那一方成為標準
而這些標準不能只有某些軟體能用,例如微軟每次都喜歡在某些軟體或是效果流行的時候推出只有微軟的軟體能夠看的懂得微軟標準,這就不是公定標準,

您所說的這些問題,需要的都是大家能夠接受的公定標準,而不是free software需要有良好的規範,更不是只有某家軟體公司出的軟體才能使用的自家標準,而且回歸基本面,gpl定義的是軟體授權,軟體授權本來就不管你的xxx設定檔怎麼放,拿到軟體的人怎麼包成package,但gpl授權給他們權利去決定怎麼作,以法律的觀念來說的話,憲法也不會規範那些行為必須判甚麼處分,公務人員滿幾年可以退休這種細部的規範,這是屬於得到憲法授權的政府單位,如立法院跟實際執法的警察,司法單位的權利
damon
活潑的高中生
活潑的高中生
 
文章: 358
註冊時間: 週二 9月 10, 2002 5:42 pm

文章Edward G.J. Lee » 週日 1月 11, 2004 6:00 pm

Tetralet 寫:感謝各位的回覆。
其實,我一直在想:『Free Softwar』,『自由軟體』所言及的『自由』,
是不是和我們一般的認知有所差距呢?

當然囉,我們可以從 GPL 的授權聲明裡,
來了解什麼是『Free Software』:

 一個軟體應該能夠自由得讓任何人使用
 一個軟體應該能夠自由得讓任何人學習其技術
 一個軟體應該能夠自由得讓任何人將其散佈給別人
 一個軟體應該能夠自由得讓任何人修改並公開修改成果

這就是 GNU 所言及的 Free Software 四大自由。(請參考:The Free Software Definition

如果綜合以上四點來看,
個人斷定:Free Software 所保障的自由,應該說是『程式設計師的自由』
如果您是程式設計師,
那麼有了 GPL 您就可以如魚得水般悠遊於 Free Software 的世界裡。


我們常說:「自由以不侵犯他人的自由為界線」。
很明顯的,自由是互相的,是在人群互動中才會顯現出自由
的可貴。

但是『程式設計師的自由』有時並不是『使用者的自由』

我們大多數人只是一般的使用者。我們很少進行什麼程式開發。
Source Code 對於我們而言往往只是雞肋,
有了 Source Code 我們並不會覺得太高興,
沒了 Source Code 我們也並不是很在乎。


一般使用者的界線不太容易區分。
縱使沒有嚴格的區分。我們試想想看,給程設師的自由,也
就間接的給了使用者的自由。以 nVIDIA 的例子來看,如果
規格就是公開的,或他們封閉的程式碼是開放的,那麼,一
般使用者豈不是獲益更多?

比如說,nVIDIA 的 XFree86 Driver。
nVIDIA 官方有提供 For XFree86 的 Driver,不過是 non-Free 的。
XFree86 也有提供它的 Driver,是 Free 的,但是效能相較之下並不是很好。

那麼請問,您會採用哪一個 Driver 呢?


可是,有人能保證會是永遠免費使用嗎?大家也知道一些商
業公司的策略,放長線釣大魚,或者是從其他地方去獲利。
這些是無可厚非,因為他要生存,但這樣就不能稱之為我們
所謂的自由了,因為他們可以隨時中止供應,或改變方式供
應。

而 nVIDIA 的 nForce2 的網路晶片一直沒有 Free 版本的 Driver。(正在開發中)
那麼它的使用者也就不得不使用 nVIDIA 的官方 non-Free Driver 了。


上面也提到了,如果一開始規格就是開放的,或程式碼是開
放的,那社群中很可能早就寫出 driver 出來了。

沒錯,我們使用者喜歡免費、可以任意使用的東西。
至於是否能夠任意修改 有 時 候 我們就比較不在乎了。
但是不能任意修改的軟體,就絕對不能叫做 Free Software 了,不是嗎?

那,我們這些使用者關心什麼呢?
其實,我們只關心使用者環境是否便於使用。
也就是『整體系統的整合性』及『軟體的功能性』。


問題是後顧的發展、後續的使用。

舉個例子:中文輸入。
在想像中,一個注重『使用者自由』的電腦系統,
我們應該可以在任何軟體裡鍵入中文字。

但是在 Linux 裡,目前為止還是不行。


這個不行是發展進度的問題,而不是他的限制。
如果不是和使用者的自由有關,那麼發展輸入法的用意又何
在呢?沒有使用者的支持,這些 FS/OSS 的程式設計師所寫
的程式又有什麼意義呢?因為,如果只是他自己要用,那就
沒有一定要開放出來的理由了,不是嗎?

再舉個例子:locale。
在 RedHat / Mandrake 裡,是由 /etc/sysconfig/i18n 來控管,
而在 Debian 裡,是由 /etc/environment 及 Login Script 等等來設定。

如此重要的設定,
竟然有多種完全不同的做法?


這在前面已經談到過,這是 stand/sepc(標準/規格) 的問題
和軟體自由沒有關係,這裡把使用的不方便要分成好幾個面
像來看。

有些操作,有人認為是不習慣,但有人卻如魚得水。一個很
有名的例子,那就是 vi 編輯器,有人說這是程設師用的編
輯器,但是也很多不是程設師在使用。以這個編輯器而言,
他算是方便,還是不方便呢?
(這裡使用方便會比自由更貼切)

底下有關 kernel 的例子也是一樣的道理。我就不引了。

而在網路上,也常常聽到一些 Linuxer 的論調:

 你不會想辨法自己修改 Source Code 呀?
 你不會想辨法自己動手開發一個出來呀?

沒錯,我們的確有修改、開發或是 Bug Report 的義務,
但很可惜的,不負責任地要求使用者自己想辨法去修改去開發並不能算是『使用上的自由』。
像這樣動輒說:『自己想辨法』的作業環境,
我想要說服人們來使用它並不是很容易吧?


Windows 的作業系統,很多人覺得滿方便的,這個個人沒
什麼意見,那裡方便就那裡用。

但他的的確確是要自己想辦法的,買書或上課或花錢買更方
便的工具。

而且,幾個人的言論是不能代表多數沉默,這樣好像不公平。

當然,您可能會抗議:『GPL 是個「軟體授權書」,
它哪會管 GPL 的軟體能否支援 XIM、要如何設定、擺放位置在哪裡、該由誰來開發等等瑣事呀?』

沒錯,GPL 講的只有『程式設計師的自由』,
其它的它不必管,也不可能會去管。
但是一個良好的電腦系統環境,
必須要注重其整合性及功能性,不是嗎?
否則,在使用它時,所感受到的根本就是『不自由』。


方便和自由是不太一樣的意思。

所以,我的總結是:
雖然是『Free Software』,但是還是必須有良好的規範,
否則各自為政的結果反而會使得使用者感到困惑及無所適從,
連基本操作都有其困難了,
更遑論什麼自由自在、無拘無束得使用呢?


我還是覺得你把方便使用和使用的自由混在一起思考了。

stand/spec 的建立不是一朝一夕的,而且也另有商業規格
要考慮,才能得到整體性的方便,但這無論如何是和軟體封
閉或開放不是直接相關,這應該是兩回事。

例如,你可以花錢請人寫適合你自己的操作方式的程式,這
對你個人而言會得到很方便的結果,但這和軟體的自由及使
用者對軟體本身的使用自由是不同的。自由的軟體不一定使
用上就保證方便,同樣的花錢買來的封閉性軟體也不一定能
保證使用上會很方便,還得買對東西。

我要再強調,自由軟體的自由並不是僅僅指程設師的自由,
畢竟軟體是要給人們用的,不能因為發展的進度不夠快而
認為沒有讓使用者得到充分的自由。許多商業封閉軟體,
縱使錢花下去了,往往不見得就能得到完全的方便,這是
一樣的道理。
LGJ
道隱於小成,言隱於榮華。(莊子.齊物論)
頭像
Edward G.J. Lee
榮譽學長
榮譽學長
 
文章: 211
註冊時間: 週一 11月 10, 2003 9:24 pm
來自: 鄉下


回到 talk

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客

cron