我們所接觸到的電腦系統, 大至可分為如下兩種特性:
1) 整合性系統
所謂的整合性系統, 通常會提供完整易用的操作界面, 將許多本來是零散的子系統加以整合, 提供使用者一個相對容易的作業環境. 這類系統的入門門檻相對來說較低, 且也較容易實現所需的運作功能. 從學習成本來說, 短線而言, 是相對較低的. 這對於現代人急功近利的心態(有些情形或是環境所迫)在某一程度上不謀而合. 因而整合性系統只要行銷得宜, 一般都較容易被使用者接納, 也常淪為初學者們首選. 然而, 整合系統的整合工作通常是由生產廠商那邊完成, 因此大都需要使用者付出一定的費用加以換取(天下沒白吃的午餐). 且, 由於整合技術完全委外, 因此使用者在產品主導權及擁有權方面相當被動, 甚至完全不能控制而被廠商牽制. 使用端唯一能掌握的就是在"付錢"與"免用"之間作一個選擇, 及至日後的升級(不少是被迫的)也是重複這個選擇.
若從學習層面來說, 整合系統卻是"成也整合, 敗也整合!", 這是因為整合界面在提供便利性的同時, 也帶來了不可逾越的限制性. 使用者們通常只能接觸到整合好的界面, 鮮有使用者主動地也鮮有機會接觸到界面之後的東西. 就算使用者閉著眼睛也能將系統的每項設定弄出來, 充其量只是一種操作行為的結果, 而運作原理與來龍去脈往往是霧裡看花. 加之使用授權條款等各項限制, 除非你是廠商的人, 一般外人跟本不得其門而入. 若你是個養牛者的話, 那你頂多是個擠牛奶的人! 你還是搞不懂牛是要怎麼養的啦~~~
2) 組合性系統
反過來, 組合性系統基本上不提供任何組合界面, 所有的子系統都是彼此零散的. 這樣的系統別說要實現運作功能了, 控怕連操作都有問題. 好比手排檔的汽車, 不再是踩油門就可開走那麼簡單. 這類系統對那些需要在短期內達成目標的急功近利者來說, 是很不合謂口也很不劃算的(除非他的功利神經有問題)! 因此在短線來說, 組合系統的學習成本相當高, 且本益比很低(嗯, 我這裡只強調短期評估)! 再加上缺乏行銷(其實行銷難度也如登天), 因而一下子要一般使用者與入門者接納, 是件很不容易的事情. 然而, 相對於整合系統來說, 由於使用者無須支付別人整合的費用, 再加上 Open Source 概念漸為人知, 組合系統一般來說價錢都低很多, 或根本就不用錢! 當然了, 一切的整合就得由使用方自行解決. 或, 選擇委外進行也可, 但這又回到了費用的問題上了. 要是一切都在 Open Source 的規範下運作的話, 使用端絕對掌握著自己的主導權與擁有權! 選擇只不過轉變為"自研"或"委外"這兩者之間. "免用"這選項已不再是必選而是一個備選項目而已. 由於篇幅與主題所限, 我這裡暫時不去分析組合系統在中長期的利弊了. 這是 CEO 們要操心的事情, 恐怕真要我這個技術人來說, 也有所偏差. 但我想提醒的一點是: 資訊命脈由誰來掌握(自己還是他人)? 是影嚮整體成本的關鍵因素之一, 尤其在日後的談判桌上!
回到主題, 組合性系統在學習層面上, 由欲卻乏了界面的依賴, 使用者勢必越過"操作"層而去探索其背後的每一個零散項目以及前因後果. 這跟我們玩積木的原理是一樣的! 使用者最終能做出哪些結果, 取決於組合能力還有對參與組合的每一零部件的了解, 以及掌握的項目多寡. 相對於整合界面的限制性來說, 組合系統是沒限的! 沒有故定形式也沒故定的方案; 且條條大路通羅馬, 做到同樣的一個目的, 方法千變萬化, 也各有好壞. 一切, 不是取決於系統本身, 而是取決於使用系統的人! 若你是個養牛者, 那你就真的要知道養牛的所有一切才行!
再回過頭來看 Linux 系統, 很明顯的, 是屬於組合性系統. 雖然也有組合方案可選, 且組合化趨勢越見成形, 不過目前還沒成熟(若你的撈錢神經還沒退化的話, 應猜得出背後的商機吧?). 因而, 若這時候你要跳進來學 Linux, 卻抱著之前學習整合系統的經驗與方法不放的話, 那無疑自討苦吃. 我這裡就可判定你準死無疑, 就算不死也是半殘廢的! 然而, 面對如此龐大複雜而又零散的系統, 你有信心學好它嗎?
呵, 且慢! 現在還別急著去鋪草薪掛苦膽啦. 我跟你說: 光有鬥志還是不夠的! 你還要知道方法才能學得好...