(續上期) 再來就是台灣軟體市場需求所引發的問題. 一般我們把軟體分成系統軟體(System Software)和應用軟體(Application Software). 編譯器,組譯器,除錯器,作業系統,驅動程式,都是屬於系統軟體的一部分. 台灣除了硬體廠商,IC Design House 之外,甚少有撰寫驅動程式的需求.前幾年 Linux 被炒得熱時,也有許多高手投入作業系統,編譯器以及簡化標準函式庫的研究.而台灣所需求的軟體,極大多數是屬於應用軟體,這些需求的應用軟體其中很大比例是和資料庫有關係的(其實不只是台灣,其他地方也是約略相同的情形). 所以 VB,Delphi 和 Power Builder 這類 IDE 大行其道,因為他們容易上手,可以快速開發資料庫應用程式,相關入門書籍很多,會的人更多. 因此符合我們前面所說的:"會的人越多,價值就越低"的理論.
但是別忘了,系統軟體有部分是偏向應用軟體的,比方說開發軟體用的 JBuilder 和 Visual Studio; 製圖用的AutoCAD; 一套 IC Design 用的 Xilinx 或 Altera; 做 OOA/OOD 的 Rational Rose 和 TogetherJ, 筆者習慣稱這些軟體叫做"軟體的軟體"(Meta Software). 在一般程式設計師眼中,這類軟體"理所當然"地認為都是由國外所發展. 這類軟體有極高的進入門檻,所以國外這類軟體公司的獲利率很高,所以該公司的程式設計師可是身價非凡. 要知道,先前在媒體上有報導過,能夠讓 Microsoft 買軟體來用的公司,只有 Rational Rose (當然,不可能只買 Rose 來用). 如果做 IC Design 的人沒有你的軟體就沒辦法做事,身為一個程式設計師,你會覺得你的身價和地位比做IC Design 的人低嗎? 如果你做的軟體像 SoftICE 或 DriverWorks 那樣被做硬體的工程師大量地倚賴,你會覺得搞硬體的人比你厲害嗎? 問題是,知道該如何設計一套這類軟體的人,恐怕才是真正的異數. 而且需要跨領域的專才. 要不是許多 OpenSource 的 project (例如: KDeveloper) 正在進行,恐怕很少人知道該如何設計一套 IDE. 既然會製作這類軟體的人在國內少之又少,那麼他們的身價高嗎? 很抱歉,台灣沒有公司發展出足以和國外大廠競爭的開發工具. 舉 IDE 為例,國內早期有家公司開發出一套名為 DBtools 的產品勉強可以算的上是這類產品,旗標也曾為它出版過入門手冊,可是使用這套軟體的人好像...沒看過(如果該產品有不錯的佔有率,請原諒我是井底之蛙),沒有市場,公司無法賺錢,即使你是少數能夠製作某類型產品的高手,公司最後關門大吉了,您也只能算是"少數能讓公司賠錢的程式設計師"罷了. 所以我大膽假設, James Gosling 或 Anders Hejlsberg 如果學李敖一樣 50 年不離開這個小島,大概早餓死了.
以上的討論,真正優秀的高手看了之後,或許會產生有時不我予,不得已必須遠渡他鄉的想法. 程式設計師的價值就如同書的價值一般,國內和國外有不同的看法.國內教科書比較便宜,應用的書比較貴.國外教科書比較貴,應用的書比較便宜. 國外重內容,薄薄一本 How Debuger Work 可以賣 44.99 美金. 而國內,都是看頁數來計價(侯俊傑先生的書有努力在打破這個頁數的迷思,也做得蠻成功).有很多原因導致這兩種文化之間的差異,但是,市場因素肯定是其中重要的一項.