Why OpenSource ……

我算是玩 OpenSource 的人, 常常在網路上看到有人抱怨 OpenSource 太難入門.
為什麼搞 OpenSource 會這麼累…

我就拿我身邊的人做案例分析吧


某位 程式設計很厲害的人, 電腦經驗超過十年, 有豐富的 Coding 經驗
以下是他的抱怨的文章
===
最近在玩 FreeBSD ,順便自己學著架一些東西,突然有些感想
很多人罵微軟,連我這個 M$ 派的人有時也在罵,尤其是自由軟體界的人。
不過走 Win32路線的人仍然是前仆後繼, OpenSource 的社群雖有成長,但
跟 M$ 社群比起來,可以說還有很長的路要走….

常看到狂信者在推廣 OpenSource 教義,卻沒看到有人在思考 “WHY” 這個字
直到最近我想我有點體會其中一小部分的原因了….

我玩電腦雖然時間不長,但好歹也靠這個吃飯,但當我開始學 BSD 時,
我很訝異以我的基礎居然學得痛苦萬分….

OpenSource 名為 Open,但是給新手的感覺卻是如此的封閉….
像今天我想自己架看看 blog ,就遇到這種情形, google 出來 blog
滿天飛,我卻被搞得眼花撩亂 = =a

OpenSource 給我的感覺,就像很巨大明顯的殿堂聳立在路口,但卻
找不到門在哪,甚至連鑰匙孔也看不到,裡面的人卻不斷高喊:
“施主,要怎麼進來就要靠你自己的努力了”

學習永遠要靠自己,但如果連個線索都沒有,是要怎麼要求新手大海撈針?
站在門口喊芝麻開門嗎? = =a
這樣的結構與情形,給企業的傷害最大
也是OpenSource 社群成長的瓶頸之一

我以大量的時間愚公移山加上有人幫忙,才總算能稍微了解一點點
我不敢想像今天如果我再忙一點或是沒有前輩帶,我不知道
要花幾年才能學會基礎

這是一個很入門的 CASE, 首先
(1) 他長年習慣於 Windows 的文化, Microsoft 投入了非常多的人力, 物力, 資源在所有產品的整合, 尤其是文件部份. 在 Unix 下, 一般來說最缺的就是文件, 熱血的程式設計師可以設計出優秀的產品, 但是大多數卻寫不出好的文件, 大部份都是 Install Guide 之類的. 大不了就是 man page .

(2) 選錯套件: 一個剛入門的人, 放著 Linux 不選, 選 FreeBSD , 我只能說, 勇氣可嘉. 如果選 Linux, 裝好以後, 不管是用什麼套件, 一般的應用上, 至少中文是沒有問題的. 設定方面, 在網路都可以找到大量的文件, 例如: free.tnc.edu.tw , www.study-area.org, www.vbird.idv.tw . 卻去選難度較高的 FreeBSD , 不管是 Library 的選擇, 或是 ports 系統的問題, 除非有人在旁指導, 否則入門的難度高上一級.

(3) 我不知道有沒有買書, 但是學習 Linux/FreeBSD 等 OpenSource 系的 OS , 有一本好書是很重要的. 第一次就照著書上做就可以了. 不像是 Windows , 只要裝好就可以用.(事實上大多數的 Linux Distrubtion 都是裝好就可以用漂亮的 XWindow UI, 如果選 KDE 套件, 70% 都很像 Windows 2000 UI)
另外就是有沒有看 Install Guide . 大多數的 OpenSource Package 都有 Guide. 80% 看 Guide 就可以裝起來了.

(4) 不了解 OpenSource 文化: OpenSource OS 對上 Microsoft OS ,我個人認為最大的差異在於, OpenSource free programmer’s mind . Microsoft hold programmer’s mind.
OpenSource 最大的好處就是,創意無限,今天你不必只靠一種語言,一種方法去達到你的目地,創意可以無限的延伸(就像是 Microsoft 的廣告一樣 :p),例如像 Linux 做 Kernel Communication 最少就有 proc filesystem, ioctl,pipeline,kernel 讀檔, 這兩天還讀到 netlink. 壞處就是,積木要自己做,要一個一個堆。
Microsoft 最大的好處就是,己經有一個整合好的平台,也有廣大的使用者使用 Microsoft 的產品,基本上各家都會 follow Microsoft 的標準,當一個 Programmer 應該學的就是儘情的發揮創意。最大的缺點就是,這個創意建構在 Microsoft 給你的架構之上,今天沒有 shell script language, 如果要解決網站 Loading 太大的問題,就必須買 Layer7 的 solution. blah blah blah .

(5) 我不得不講 OpenSource 最重要的一件事,那就是原始碼是開放給你的客戶的,我今天購買一套軟體,我不必怕公司不 support ,我可以自己 maintain,將價值建立在 service ,而非軟體上,軟體是不值錢的,但是 Programmer 是要花錢的 service 是有價的。

若 OpenSource 真的那麼差,為什麼大家前扑後繼的跳火坑?從 IBM/SGI 到 Oracle/Novell .
embedded 硬體就不用說了,vxworks 被打得半死,目前許多 Hardware menufactor 主要 driver 除了 Windows 外就是 Linux 了.

至於我自己,我覺得 OpenSource 我可以悠遊自在的玩樂 Programmer ,又可以賺錢,何樂而不為?而且 windows 開發太不對味了,不合我的興趣,我是”選擇”改用 Linux (Mac 看起太笨了,也不合我味口,不過人各有志 MAC 迷別罵我),雖然苦了一點,我個人認為非常值得

On this day..

Comments

comments

Related Posts
  1. Using Mozilla Firefox Mozilla Firefox 1.0 on Windows Windows 2000

    呵~看完站大的文章, 個人非常認同, Opensources可帶給人們樂趣與無限的想像空間, 但相對的因為有時太過於free了, 會讓初入門的user摸不著頭緒, 因為條條大路通羅馬, 但該走那條路, 那條路最快最好走最不會踩到地雷= =, 我想這應該是初學長最常碰到的問題, 我也算是玩Opensources的人, 初入門也是玩FreeBSD, 不過還好有人帶我一步一步來, 當然也就一步一步陷進來:)
    近年來unix-like社群雖有逐漸壯大的聲勢, 但就如同站大所說的”跟 M$ 社群比起來,可以說還有很長的路要走…”

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>