科技會過時?
2019-04-18
不諳編程或是編程初學者常常會有一個印象:就是資訊科技發展很快,一種最新技術可能數年又會變得「不再流行」,又時時會有一些新穎的科技流行語(Buzzword),早幾年是雲端、大數據,過了一會又是數據科學、人工智能、現在又出現了所謂的區塊鏈技術。編程初學者,在沒有先前經驗的情況下,往往無所適從,不知如何是好。
由蒸汽機講起
要理解科技變遷的原因,最好的方法莫過於觀察科技一直以來的發展歷史:蒸汽機這個名詞,聽起上來非常十九世紀,蒸汽火車是只有老一輩才曾經坐過的交通工具,十九世紀英國發明家占士.瓦特(James Watt)改良原有蒸汽機,正式開啟工業革命的時代。蒸汽機在工業時代不可或缺,當時出現了蒸汽火車、蒸汽船、甚至蒸汽推動的汽車。二十世紀初,內燃機(Internal Combustion Engine)的發明,使傳統的蒸汽機,慢慢退出歷史舞台,今時今日的汽車及輪船,皆是由內燃機所推動的。
內燃機與蒸汽機最大的分別,在於蒸汽機是外燃機,也就是以燃料在容器外加熱,將釋放之熱能轉化為機械能,從而推動機器。內燃機則相反,將燃料放於容器內加熱,既是燃料也是介質。 內燃機成為現今絕大多數交通工具的引擎,原因就是內燃機的能量轉化效率較多,約有三至四成,相比起 蒸汽機的一至兩成,改善良多。
那蒸汽機就完全被人類文明摒棄了嗎?當然不是,蒸汽機同內燃機其實在性能上各有優劣,蒸汽機非常適合有恆常(constant power output)輸出的情況,也就是不適合經常改變負載(Sudden Loading Changes)。因此相對而言,在汽車的情況,行行停停的汽車,使用蒸汽機,遠比使用內燃機無效率。反之,在發電廠的世界,基本上全都使用 蒸汽渦輪發動機(Steam Turbine),因為供電輸出必須恆定,發電廠不會行行停停,在這種情況下,使用蒸汽機就比內燃機更有效率。
資訊科技的情況
資訊科技的情況,與上述情況類似,任何改變,必然是由於有一個明顯的好處,才會推動技術的進步。就用近年的Buzzword作為例子:
1. 雲端計算(Cloud Computing)是由於現代應用程式需要快速擴張負載能力(Scale Up loading),傳統自行託管的數據中心方式,已經無法達至如此的需求,想像一下,要在傳統的數據中心增設一部伺服器,起碼要一個星期。相較之下,在Amazon Web Service上增設一個EC2,只是十分鐘的問題。
2. 大數據的出現,是伴隨著雲端計算的發展而壯大,未有雲端計算之前,處理大量、多種類的數據是一個複雜的問題,要對數據加以分析亦難以成事。當數據不論容量、種類、收集速度都上升的情況,大數據處理工具如Apache Spark、Apache Hadoop等就應運而行。
3. 完成處理數據後,就開始可以對數據進行分析及視覺化,要處理數據,運用的就是數據科學。數據科學本身是由編程加上統計而成,正是數據量大幅增加使數據科學不可或缺。也正是數據科學的發展,令使用深度學習的難度也大大降低。
總結
資訊科技與傳統科技無異,都是正常的科技發展進程,感覺上資訊科技發展較快,是因為資訊科技較為年輕,不及傳統科技多年的高速發展,才有變化較快的錯覺吧。
Comments
Read More
破除迷思系列:Programming language 有高下?Java 、PHP 無人再用?
2018-11-05
久不久在Programming 的社群內、討論區內,總有同行大聲疾呼:「Java 已死!」或是「PHP 已死!」一類的講法,總令想學習這類「悶蛋」語言的朋友望而卻步,怕投入了時間精力,最終卻無用武之地。
破除迷思系列:Programmer 做到三十歲就要轉行?
2018-11-15
有人看到這些故事,結論就是Programmer 做到30歲就好,要盡快升遷到不用再寫Code的位置,才會穩妥,不然一遇上經濟轉差,就會面臨裁員的可能性。其實不只香港,外國亦有人有類似看法,彷彿三十歲是一條無形死線。過了三十歲,還在前線寫Code,未來就會一片暗淡無光。
馮紐曼
2018-12-28
今日是12月28日,115年前的今日,一位對現今電腦有深遠影響的天才出世了。他一生對數學、電腦科學、物理學貢獻良多,被譽為電腦科學其 中一位奠基人,與廣為人所知的艾倫‧圖靈齊名,他就是約翰‧ 馮紐曼(John von Neumann)。
專家級新手
2019-03-19
今次要介紹的,是一個非常常見之現象,不論你是學寫程式、學做甜品、學寫文章,又或是練習球技、體能訓練等,都會經常窺見其身影。 想像一下:你的朋友問你:「你的駕駛技巧好嗎?比較起其他司機來說如何?」如果你本身有駕駛執照,但是不常常駕車,大概你會回答:「中規中矩吧,平均水平」;經常駕駛的人,因為經驗豐富,會覺得自己是中上甚至良好之水平。然而,這個想法人人都有,卻與現實完全相悖:因為任何羣體之中,必然有一半個體在中位數(Median)以下,而一項經典的調查發現,八成的司機都認為自己的駕駛水平在平均之上,這明顯代表在駕駛技術的世界上,大部份人都有自視過高的問題,也代表其實大多數司機,無法準確判斷駕駛技術之高下。