2012-04-17

評《雲端運算網路程式入門》

書名:雲端運算網路程式入門
ISBN:978-986-201-444-8

我是不知道看這本書能不能練出雲端,不過拿來練腹肌倒是挺不錯的......

2012-04-12

Haskell 與超人 [上]

人類是一條繫在動物與超人之間的繩索,一條高懸於深淵的繩索,要從一端越過另一端是危險的。  ——尼采
這篇文章的內容會有點凌亂,甚至應該屬於另一個 Blog 的範圍。不過真正讓我開始下筆書寫的觸發點,卻是 Haskell 與這幾年寫程式的有感而發,那也就放在這邊了。

先說標題的「超人」。雖然開頭引用了尼采的超人說,不過我沒打算(也沒能力)使用尼采的「超人」定義,而是普羅大眾習慣的「superman」,或著用「天才」可能更適切一點。但是用 superman 來誤解尼采的這番話,其實另有一番味道在......

我覺得這幾年的程式語言發展逐漸有「超人化」的現象。

2012-03-29

[偽] 端雲科技

注意:本文內容純屬架空之作,與實際存在公司、團體無任何關係

(兩造雙方坐定,寒暄已畢,Sales 鄭重其事地送上一杯水)

客戶:謝謝... (正要舉杯啜飲一口,Sales 連忙打住)

Sales:抱歉抱歉,還沒跟您說,這是敝公司產品。如果您要喝水,我再給您倒一杯來。

客戶:啊? 你說這是......?

Sales:(點頭微笑)敝公司試用產品。

客戶:等等,你們不是作雲端科技的嗎?

Sales:(連忙點頭)是的是的,沒有錯。

客戶:(指著那杯水)那這......

Sales:(點頭微笑)敝公司試用產品。

客戶:我是來買貴公司的雲端產品,你在唬弄我嗎?

Sales:不敢不敢,絕對名符其實,這不是給您端了杯水上來了嗎?

客戶:什麼?

Sales:這杯水,只要您不喝下去,短則一天、長則一週,就會上到雲端了。

客戶:............

Sales:當然,這試用產品格局太小,不值得入您法眼。(攤開型錄)我們有針對個人進階用戶設計個人雲端產品,像這台噴霧機還兼具降低室內溫度節能減碳的效果;如果您是公司行號,那不妨考慮這個流水造景方案,我們的設計團隊可以配合風水地理為您量身打造兼具美觀效果的客製化產品。不瞞您說,敝公司產品跟同業「希歐釷」比起來是貴了許多、視覺觀感也差了一節,但我們才是真正符合 OSI 1009 雲端規範的公司、而且不論運作還是維護成本都便宜許多。不少地方政府為了配合中央的雲端政策改建的大型噴水池,就是敝公司的精心傑作,「希歐釷」就沒這個辦法了......

注意:本文內容純屬架空之作,與實際存在公司、團體無任何關係

2012-03-28

所謂專業

女友死黨的姊姊是為瑜伽老師,聽說我在搞網站,於是想跟我聊一聊。雖然私下推敲了半天,實在不知道能幫上什麼忙,反正也沒 case 作,就當增廣見聞吧。

果然,坐下來談了五分鐘之後就發現...... 完 全 跟 網 站 扯 不 上 關 係  Orz,核心問題是一個單打獨鬥的教學者如何擴編規模提高利潤如此之類這樣那般...... 既然來都來了,就拿出十五年學生社團的經驗來瞎攪和。結果被稱讚比她之前找的青輔會顧問還厲害、能切中她的問題跟糾結點,而我心中則 OS:「幹... 青輔會顧問有這麼弱嗎?」

扯遠了。

由於我對瑜伽(相關領域)完全不熟,所以我問了一個問題:「你覺得當瑜伽老師、教瑜伽,最困難的是什麼?」本來是想得到類似「作一行怨一行」的行內資訊,結果卻聽了一個出乎意料的答案:
每次上課都要能夠做出標準的動作來示範,對我來說是最困難的部份。
誠專業者也。

類似的話也在不同領域的人上得到印證,例如教我大一微積分的葉芳栢教授曾有此一說:
當你半夜被人搖醒,問到「微積分第一基本定理要怎麼證明?」你回答的出來,那大概就是真的懂了。
某次東海機研社舉辦的活動,請一位賽車手演講,其中一段的大意大概是:
我在日本受訓的時候,過每個彎道就是不管三七二十一、殺紅了眼地在拼,但是成績沒有很好。教練要我觀察那些成績不錯的人的跑法,我才發現,他們每次練習時過彎的路線幾乎一模一樣......
當然也可以提一下觀念上有點過時,但是基本精神還是一樣的 Gitto 畫圓傳說......

族繁不及備載。

簡單地說,無時無刻都能神來一筆,才能稱得上專業,否則只是運氣好。

就拿炸雞排這件事(雞排:幹!又是我!你們這些寫程式的就沒別的例子好舉了嗎?),以科學實驗的講法,所有的變因都在控制下(都變成控制變因),才能得到一模一樣結果。問題是從雞排的大小厚薄就沒辦法控制的一模一樣了,也就只好讓其他的變因跟著作對應的變化。以演算法的角度,這算是 CSP(Constraint Satisfaction Problem),光有沒有解(existence problem)就是 NP-Complete,你說「維持相同品質」這檔事能不專業嗎?

若這雞排攤還是 xx 年老店,都維持相同品質,那就更不得了了。試想這 xx 年中就算沒有接班傳承問題,那還得人不能生病,隨時能以人腦解 CSP 兼實際操作、雞不得禽流感,不吃奇怪飼料...... 看看自己的健保卡紀錄、翻翻這陣子新聞,就明白這是難上加難的事情。

行筆至此,只能嘆曰:「嗟乎!專業之不存也久矣!」

如今「創新」當道,凡事若不求新求變、不掛個新潮名詞就似乎跟不上潮流撈不到錢。於是隨波逐流敷衍潦草浮泛空洞者如過江之鯽,而堅守本分反覆辯證追根究底者幾何?動輒生病告假、私事告假、壓力過大告假,遇爭論則高掛「這沒有對錯」、「這是個人喜好問題」免戰牌...... 連敬業都稱不上,又何來專業可言?拿偶發性的神來一筆來自稱專業,又何不專心簽樂透反正也會有中頭獎的一天?

專業,真正的專業,是值得尊重且尊敬的,那怕只是你家巷口的雞排攤。要認真說起來,跟結果一定遵守 GIGO 法則的程式設計師比起來,要炸出夠格的雞排,的確是雞排的多了。

希望有一天我能問心無愧地自稱程式設計師。

2012-03-21

台電中油的五大浪費告訴我什麼?

自由時報今天(03.21)用了頭版跟 A3 版砲轟中油跟台電有「五大浪費與四大缺失」,最終當然是為了替「這樣也敢喊漲價!」作立論基礎。

政治、經濟、會計、以至於公司營運這種太艱深的事情我不懂,也說好不提「多想三秒鐘」。不過其中兩個「浪費」倒是讓我這個不怎麼成材的程式設計師看的有些不知所措:
  • 浪費 1:150 億探氣 自由油源比例反降
  • 浪費 5:推廣節能 大方送錢不見成效
浪費 1 是指中油從 2006~2010(不是一年,這有點標題殺人)總共花了 150 億進行油氣探勘,但是自有油源比例卻持續下降。浪費 5 是指台電今年編列 23 億(比去年增加 58%)的預算撥給能源研究發展基金,這個基金的任務是節能減碳研發與推廣,但是報導中質疑該基金成效。

一言以蔽之,這兩點都表達同一個立場:
如果公司沒有營利,把錢花在「未來」上就是浪費。
我沒有要替中油台電辯解什麼。只是一個應該習以為常的事情,看到了卻還是忍不住悲傷:
雖然好像是投資未來,但現在看不到成效就是失敗
這似乎解釋一些台灣軟體開發上的現象,例如剛剛以「過去兩個月」、「繁體中文」為預設條件,google 了一下幾個關鍵字:Dart、Shadow DOM、Rust 語言、Rust Mozilla,基本上看不到什麼技術類的文章,甚至連 GWT 的結果(扣掉自己寫的)都很悽慘。

當然,這樣子的「解釋」有以管窺天之嫌,因為我不確定是否能類比至實際業界狀況、有在專注於此的高手懶得寫文章或以英文寫文章...... 只是轉頭 google 當下已然流行的 jQuery,很難不懷疑這不是一窩蜂的現象——因為學 jQuery 馬上用得到,看得到成效、而且有人會看 [慘笑]。反過來說,這些文章當中有多少是真正「殺進去核心」的文章,而不是進階版的 tutorial 呢?

解決當下的問題很重要,但不能老是只打算解決當下的問題、而不顧慮到未來,甚至挖肉補瘡。

可是公司都快生存不下去了,你還在談什麼 research?

雞蛋問題太難了,我不懂。只能說,如果有人從蛋開始養出雞,請給他多一點空間與容忍,而不是指責「為甚麼你不直接買隻雞回來」or「請不要重新再造輪」。或著,用姜文的說法:「讓子彈飛一會」

再強調一次,我沒有要替中油台電辯解什麼。不知道的事情只能說不知道,所以中油該不該花錢去探勘油田、台電該不該撥款給能源研究基金,我有想法,但不知道答案。research 不能保證成果(又有多少投資能保證成果?),也就可以是混水摸魚的好藉口(我加起來也拿過約好幾萬的「計畫補助」,除了報帳之外不記得有作過什麼事)。只是對於大眾傳播媒體所傳達出來的訊息(以及被其煽動的族群),對應自己身處行業常面臨的窘境,抒發自己的無奈與惶恐。

台電中油的五大浪費告訴我什麼?我會說賣雞排的確比寫程式好的多。至少研發新口味、學習新作法產生的失敗品,還是可以拿來填飽肚子......

ps. 如果有人要戰藍綠的話,那我得說,基本上我還算是泛綠的......