Friday, February 13, 2009

哪個比較難

前陣子碰到個有趣的問題,新公司一位其他部門的主管,一次問我『你覺得你以前的工作比較難還是現在的工作比較難』,我本著實話回答他『我以前比較偏系統,現在比較偏應用程式,不一樣的東西』,他老大一付問到智障的表情又問了一次『那我就是問你系統程式比較難還是應用程式比較難呀』~~~我實在不想回答,於是我很敷衍的說了『差不多』。

在台灣的資訊領域有一個很有趣的現象,就是普遍認為會寫系統程式的比較厲害,甚至我曾經面試過一些公司的主管對於自己寫驅動程式的熟悉而感到他屁股都快飛上天,對於應用程式卻只覺得~~那個隨便都可以寫。說真的我不會覺得應用程式比驅動程式簡單,而且我也不覺得寫的好的人比較多(大多數人都覺得只要是資訊領域畢業的都應該可以寫應用程式,驅動程式類的系統部份就靠高手了)。

或許是因為台灣以硬體代工起家,因此早年面對最多軟體的需求就是系統程式與驅動程式,確實台灣也營造了不少的生意(但詭異的是系統軟體商還大多是外國廠商),但台灣往往在產品上面沒有做的很好。或許有人會覺得,那只是設計的問題,只要有好的設計其實應用程式都差不多,但~~真的是這樣嗎?

一般在寫系統相關的程式工作,端看你對那個系統的熟悉程度,每一個系統模組之間其實不會有大變動,但了解系統確實是一個浩大的工程,因此一些撰寫驅動程式的人對於類似的硬體其實往往可以很快的寫好。而應用程式的撰寫在思考上必須著重在軟體的彈性與靈活度上面,因為不同的需求與很多合理與不合理的改變,一個良好的應用程式架構往往需要很多巧思。

其實我覺得很有趣的地方是,以往也遇到過很多系統很熟的工程師主管(恩~~要碰系統才能升主管~~這是以前的鐵則),他們寫程式真的很拼也很快~~但~~對於應用面的程式,他們寫出來的東西通常會讓大家搖搖頭。並不是程式邏輯有問題,而是~~~撰寫的時候太多一條鞭的寫法,讓這程式缺乏靈活與改變的能力,而且~~通常那介面只有他自己會用~~哈。

如果你注意過中國這幾年的發展,你會發現他們在系統程式進步非常快速,之前一位中國網友在MSN跟我聊系統程式的問題(看吧~~我沒有仇中~~哈),我發現現在中國對於一些open source的系統掌握度絕對不輸台灣,其實那也是因為大多數硬體生產都跑到中國去了,所以這也是一個十分正常的現象。

反過來想想,當硬體生產慢慢轉移到中國去的同時,商業經營模式又歷經這次金融海嘯顯得搖搖欲墜,台灣的軟體市場如果還是漸漸萎縮(這是很多台灣軟體界的這幾年共同的觀察),台灣的資訊產業要靠啥撐下去?現在~~你覺得系統程式與應用程式哪一個比較難?

No comments: