如果引用或轉貼,麻煩註明出處與本網誌連結,否則視為侵權。

2005年10月3日

學然後之不足

"人類基於研究上的立場、角度和方法上的不同,所獲得的知識往往是部分的、相對的、暫時的,不代表有「絕對」的意含。因此我們在求的過程中,必須要懂得謙虛、包容和體諒,而不應有妄自尊大、自以為是-------知識份子的傲慢心態。進一步言,求知的目的仍在明理,在開拓一個人的胸襟和視野,最後仍須回歸到「做人」的本分,否則一切必落於空談而毫無智慧可言。"
- 許國宏「知識與人生」 --通識教育的重要

學然後之不足, 各種領域充斥著兼具專業與傲慢的人, 往往讓人將專業與傲慢劃上等號, 事實上, 所知越多越廣博者, 應該越知道所了解的不足, 而能更謙虛與客觀, 而非傲慢. -- Fred Wang

其他文章 :
1. 專業的傲慢與持續的欺騙
2. 一場「傲慢」與「偏見」的對抗
3. 媒體工作者的傲慢
4. 警惕專業權威型傲慢
5. 職場中的佼佼者

2005年10月2日

個人的藍海策略

Fred Wang 2005/10/02 (http://fredwang.blogspot.com)

在商業周刊"藍海策略"文中提及"創造新價值曲線的四項行動架構, 應用在個人價值的提昇上可以用下面的方式表達 :

消除 : 工作中習以為常的因素有哪些應予消除?

降低 : 哪些因素應降低至遠低於一般人的標準?

提升 : 哪些因素應提升到遠超過一般人的標準?

創造 : 哪些工作中從一般人無法或不易達成的因素,自己應該建立

擬定與執行藍海策略的階段的六項原則就可以用下面的方式表達 :

原則一:改造市場疆界 : 提昇自我, 擴大視野, 讓自己有多樣化的能力, 以提昇自己的市場及可工作的種類

原則二:聚焦願景 : 專注於長期的願景, 投資自己, 不要只汲汲營營與短暫的利益

原則三:超越現有需求 : 學習的方向不要限於短期工作所需, 而是要以培養真正的實力為目標

原則四:策略次序要正確 : 確定你努力的方向與目標是一致的, 正確的工作與學習的態度, 做好時間管理, 確實建立自我無可取代的能力與價值

原則五: 設法克服「認知與慣性、資源有限、缺乏動機、政治問題」這四項重大障礙, 相對於個人就是工作與學習有低潮, 人類有惰性, 時間有限, 家庭無法配合等

原則六: 一開始就把執行與策略整合,建立使命感 : 激勵自己不斷朝目標前進

在職場上人與人不免有競爭, 與其花時間在與人勾心鬥角, 或憤世嫉俗, 不如致力於個人價值的提昇, 重新訂定個人的藍海策略.

傾聽的技巧

Fred Wang譯
如何暸解客戶或部屬在想甚麼, 這看來簡單, 但最好的方法還是傾聽, 但是多數人只能聽進25%, 下面有十點提昇傾聽技巧的方法:

1. 傾聽你有興趣及你應該要知道的想法

2. 注意力放在談話的內容而不是姿勢, 分出"說甚麼"及"怎麼說"

3. 不要遽下結論或自以為知道對方要說甚麼

4. 專注在談論主題的主要想法上

5. 保持彈性且不要強迫對方下結論來迎合你心中既定的模式

6. 藉由眼睛接觸與臉部表情讓對方知道你很專心在傾聽

7. 排除及忽略一些會分散注意力的事情如關掉手機, 專注在談論主題

8. 小心你的偏見, 不要讓這些偏見影響你傾聽對方訊息的能力

9. 不要讓自己失了神, 人們一般而言, 思考的速度會比談話速度的快四倍,
不要因為講話的人速度慢而失去耐心, 可以利用這個時間概括整理你所聽到
的

10. 聽出話跟話之間及說的話背後真正的含義及要傳達訊息的內容

2005年9月30日

提升自信控制壓力的十個祕訣

Fred Wang譯

1.想想看在你離開人世時希望留給別人怎樣記憶,這決定你是怎樣的一個人,銘記在心,做你想要變成的那種人

2.每日給自己一個激勵的話幫助自己養成正面思考的習慣

3.將您過去的成功事例列表記在筆記本上,時常檢視及更新

4.避開消極的思想與消極的人

5.脫離你的舒適(或懶惰)領域,大膽去做些你害怕做的事情

6.不管任何狀況盡你的可能做好, 但不要騙自己認為自己是最完美的

7.原諒自己所曾經犯過的錯誤, 感謝自己努力所得的成就, 把自己當成自己最親密的朋友

8.信賴自己的判斷並在自己的能力範圍內做好的決策

9.學習對將耗盡你的時間與能量的要求說不

10.成就是做出來的不是夢想出來的, 積極的努力成為你希望變成的那種人

下一波程式設計的挑戰-multithreading 讀後感

看過另一篇文章"程式設計師的保鮮期只有十年", 恰巧Java誕生至今剛好十年, 不過Java的熱度未退, 如同Pascal, Fortran, COBOL 沒有什麼語言,什麼技術是永遠的主流的, 程式設計的思維從結構化到物件導向, 從單機處理,Client-Server,到Multi-Tier, 隨著硬體發展而重新被提起的平行處理/多執行緒的應用.
不要讓自己成為"過期"的IT人員, 只有持續的學習, 保持謙卑與彈性來面對改變!
-- Fred Wang

下面文章是冼鏡光老師(資訊科系的學生應該很熟悉吧!)在程式設計師俱樂部發表的文章, 這裡還有許多的討論
http://www.programmer-club.com/pc2020v5/forum/showsametitleN.asp?board_pc2020=general&id=3499

下一波程式設計的挑戰:multithreading
作者 : shene(冼鏡光)

也許說平行處理太曲高和寡,因為沒多少人買得起,談起來總是相當遙遠。但是我們的桌上型電腦的速度卻也愈來愈快,想當年有一台8mhz的PC就可以引以自豪,再比一比目前3.4ghz的PC,兩者的差別何止千里!問題是,CPU的速度不可能無止境地加快,終有到達瓶頸的一天;沒有人知道這一天何時到來,但若目前的瓶頸無法突破(事實上也很難突破),我們寫程式的人終究有一天會覺得CPU不夠快,我們有對策嗎?我們的知識與技術足以克服這個障礙嗎?
在硬體方面,Intel與其它廠家已經加上了hyperthreading的功能,但效能的增加在最好的狀況也不過是10%到15%而已。所謂的 hyperthreading,指的就是CPU中會把待執行的指令分成幾條執行線(thread),讓CPU可以在一條線無法繼續時(譬如等待cache 來的資料,或是等待另一條線完成某項工作),能夠執行另一條線的工作。但是運算單元與邏輯單元在CPU中都只有一個,所有執行線都搶著用,於是瓶頸就出現了。
今年,各廠家可能會推出multicore的CPU,把兩個或更多個CPU的功能放在固一個CPU中,因此CPU中的執行線就至少有兩組運算單元與兩組邏輯單元可以使用,這樣hyperthreading的效能又可以再度提高。聽說Intel會把兩個Xeon合併在一個CPU中,並且在今年上市;AMD據說也有類似計劃,當然PowerPC與SPARC也不會落後太遠。
如果這些新一代硬體出現,一般的程式設計技術就不太夠用了,用為我們從頭開始所學的都是「序列式」(serial)的思考方式,所以寫成的程式很可能使hyperthreading與multicore 的架構無用武之地。然而,複線作業(multithreaded programming)的觀念在1960年代末遂漸成型,從IBM PL/I F,全錄(Xerox)的Star,到Modula 3、Ada與Java,這些語言本身都具有複線作業的能力。另外,Unix在1980年代中期也引進了複線作業的能力,後來ANSI的POSIX加上 Pthread標準,以及OS/2、Windows與Sun Solaris都有此等能力。
為什麼複線作業那麼重要?很簡單,如果一個程式有個分身來做額外的事,程式的效率與CPU的使用率就都會提高。好比說,當一條執行線正在等輸出輸入完成時,我們可以起動另一條線進行計算的工作,於是 CPU就不會閒置,從而CPU使用率就會比較高,程式也執行得比較快。這些觀念在您的OS課程中應該學過,正因為如此,我很想請教各位一個很嚴肅的問題:
您準備好迎接下一波程式設計的挑戰了嗎?
過年放假不少天,在吃喝玩樂之餘,我們得真心想一想這個問題的答案。
後記:不知道什麼人始作俑者,把thread譯成「執行緒」而不是上面用的「執行線」。這個「執行緒」譯名的確有點滑稽,程式或系統中何「緒」之有?