<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>同人的生活派對 &#187; 思考</title>
	<atom:link href="http://www.lifeparty.idv.tw/blog/archives/category/thinking/feed" rel="self" type="application/rss+xml" />
	<link>http://www.lifeparty.idv.tw/blog</link>
	<description>君子學以聚之,問以辨之,寬以居之,仁以行之</description>
	<lastBuildDate>Fri, 20 Jan 2012 11:19:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.1</generator>
		<item>
		<title>歧見之後的間隔</title>
		<link>http://www.lifeparty.idv.tw/blog/archives/6838</link>
		<comments>http://www.lifeparty.idv.tw/blog/archives/6838#comments</comments>
		<pubDate>Fri, 20 Jan 2012 10:57:57 +0000</pubDate>
		<dc:creator>jim yeh</dc:creator>
				<category><![CDATA[問題解決]]></category>
		<category><![CDATA[思考]]></category>
		<category><![CDATA[新時代]]></category>
		<category><![CDATA[溝通]]></category>
		<category><![CDATA[生活感觸]]></category>
		<category><![CDATA[衝突]]></category>

		<guid isPermaLink="false">http://www.lifeparty.idv.tw/blog/?p=6838</guid>
		<description><![CDATA[上週日在總統大選結束之後，看到網友在臉書表達對 HTC 的意見，從她的觀點中讓我注意到歧見之後的間隔。我們總是習慣面對反對意見奮力抵抗，卻經常忽略了力量不在我們對反對意見的干擾行為，這樣只是給予對方力量讓我們聲嘶力竭；其實力量來自於歧見之後的間隔，它是歧見帶給我們最有價值的禮物，只是我們經常錯過它。 網友 EL 小姐在臉書上說賈伯斯不會對台灣的選舉表達意見，她真懷念蘋果執行長，她說 HTC 是中國品牌，這是王雪紅自己說的。她的看法引起了另一位網友 LU 君的不同意見，他說王雪紅和朋友的中國概念並不一樣，王雪紅和所有台灣人有相同的權利，沒有人可以否定她是台灣人的事實。 對 LU 君的質疑，EL 小姐提到賽斯說「世界上從來沒有兩個人真正地溝通過」，並且希望他能好好的想一想。從政治意識談到新時代的身心靈觀點，同人覺得 EL 小姐指出的問題很有趣。確實人與人之間不能溝通和個體之間的差異有絕對的關係，但我認為 EL 小姐所說的歧異並非本質而是表相，它是讓我們尋求整體一致性的必要開始。 為什麼世界上從來沒有兩個人真正地溝通過？賽斯也說過，話語最大的力量，並不在話語的本身，而在於話語之間的標點和停頓，它們蘊涵了說話者的很多情感，因而能夠產生強而有力的能量。我想這正是人們沒辦法透過溝通來分享意義，也就是讓彼此能夠進行「對話」來幫助思考的原因；這讓人沒有想到要在歧見之後停下來思考雙方其實是代表更大脈絡整體的一部分，只從片斷的差異性來分離彼此，否則他就可以尊重對方。在意於雙方的差異性，讓我們的信念只能創造彼此無法溝通的實相。 Mark Wu 對同人的上述觀點提出了他的想法，他說也許應該思考兩者間的不同。他提到了下面的觀點： 我想到朝倉啟太中解釋同理心的一段話，透過對話來了解雙方的不同點，就是因為體會到「對方與自己不一樣」，所以更尊重對方。 我是很喜歡這樣解釋的。因為再怎麼一致，只要有 1% 的不同，其實都很難去思考 99% 的相同 &#8230; 因為眼中只有「自己的不同」。那還不如更去正視雙方的不同 &#8230; Mark Wu 認為對話不是尋求一致，而是積極地在不同中尋求解決。但實際上不同個體間的差異不見得能夠被解決（Resolved），卻需要去面對（Confrontation）由差異所造成的對立現象。當雙方出現的歧異太大，很多時候是不可能找到彼此都能接受的方案，更不可能要某一方去屈就於另一方的道理去做。因此如果彼此的溝通不能求同存異，那麼就不可能尊重對方的差異，也就沒有可以對話的立基點。 同人認為 Mark Wu 提到透過對話來了解雙方的不同點，就是因為體會到「對方與自己不一樣」，所以更尊重對方。這句話並不是不正確，而是在要在溝通過程中完全做到根本相當困難。想想看，如果我們確認自己絕對沒有錯，那麼對方一定有錯，而且還不知道自己錯誤真是錯得相當離譜。你真的能夠尊重這種執迷不悟的人嗎？這時候我們嘴巴說尊重或包容，其實只是宣稱自己比對方高尚的歧視，對方必然感受不到絲毫的尊重而讓彼此對立更加劇烈。分別心的執念擴大了非我族類的歧異，但其實這一切可能只是因為自我的迷惑。 對與錯和是與非，往往是一體兩面，關鍵在一體，但人多半習慣在兩面的執念。其實這個執念往往是我們一廂情願的想法，讓我們無法跳脫思想讓雙方共同創造整體的一致性。所以賽斯說「話語的力量不在話語本身，而在話語的間隔」，在歧見之後，如果在間隔之中我們只有抽取他人的片斷意義、以記憶取代思考、以確定性拒絕可能性、以及強迫他人以自己的觀點來看事情，那麼雙方就只能各說各話。除非我們改變另一種不一樣的溝通行為，歧見便是雙方得以共同思考的起點，以創造出更大的可能性，來達到「對話」的目的－共享意義。 近年來台灣因為政治因素的影響，使得社會上的歧見很難相互對話，這是令人憂心的事情。同人很喜歡《深度匯談》提及的對話的一致性原則及尊重行為的觀點，這本書提到下列幾個相關的內容： 在我們不願意接受他人的看法時，表示我們對該項看法沒有產生任何的關聯性。在這種情況下，我們常常會忽略別人的看法其實擁有一致性的意義，而我們只是一味地拒絕接受，認為他們就是不對的。我們如果真的這樣做，一定會忽略別人思想與經驗的正當來源，而這些思想與經驗都是我們加以探求就可以理解的。假如我們拒絕瞭解他人的看法和經驗，就是堅持在自己和他人之間製造分裂的狀況。 對話的基礎就是，認知到這世界為無法分割的主體，而問題就在於我們沒有清楚瞭解這個事實。世界已經是完整不可分割了，而我們面臨的挑戰是以各種方法來洞悉這個事實。 「尊重」這個動作的核心精神，是將他人視為「正當的」個體，即使我們不喜歡他做的事、說得話或思考方式，但我們仍然無法否定他們是「正當」生命體的事實。 看完上面這些有關一致性原則和尊重行為的內容，再看看台灣在總統大選後的社會氛圍，不知你看到了什麼？同人認為他人的歧見絕對不是整個社會無法理性對話的原因，關鍵在於我們能不能尊重差異，在歧見之後的間隔中思考彼此的一致性觀點，以促進提昇整體社會的進展。因為偏好不同而否定其他人的正當性是沒有用的，因為世界是不能分割的整體，分離意識只會造就自我與現實矛盾的衝突。]]></description>
			<content:encoded><![CDATA[<p>上週日在總統大選結束之後，看到網友在臉書表達對 HTC 的意見，從她的觀點中讓我注意到歧見之後的間隔。我們總是習慣面對反對意見奮力抵抗，卻經常忽略了力量不在我們對反對意見的干擾行為，這樣只是給予對方力量讓我們聲嘶力竭；其實力量來自於歧見之後的間隔，它是歧見帶給我們最有價值的禮物，只是我們經常錯過它。</p>
<p>網友 EL 小姐在臉書上說賈伯斯不會對台灣的選舉表達意見，她真懷念蘋果執行長，她說 HTC 是中國品牌，這是王雪紅自己說的。她的看法引起了另一位網友 LU 君的不同意見，他說王雪紅和朋友的中國概念並不一樣，王雪紅和所有台灣人有相同的權利，沒有人可以否定她是台灣人的事實。</p>
<p>對 LU 君的質疑，EL 小姐提到賽斯說「世界上從來沒有兩個人真正地溝通過」，並且希望他能好好的想一想。從政治意識談到新時代的身心靈觀點，同人覺得 EL 小姐指出的問題很有趣。確實人與人之間不能溝通和個體之間的差異有絕對的關係，但我認為 EL 小姐所說的歧異並非本質而是表相，它是讓我們尋求整體一致性的必要開始。</p>
<p>為什麼世界上從來沒有兩個人真正地溝通過？賽斯也說過，話語最大的力量，並不在話語的本身，而在於話語之間的標點和停頓，它們蘊涵了說話者的很多情感，因而能夠產生強而有力的能量。我想這正是人們沒辦法透過溝通來分享意義，也就是讓彼此能夠進行「對話」來幫助思考的原因；這讓人沒有想到要在歧見之後停下來思考雙方其實是代表更大脈絡整體的一部分，只從片斷的差異性來分離彼此，否則他就可以尊重對方。在意於雙方的差異性，讓我們的信念只能創造彼此無法溝通的實相。</p>
<p><a href="https://www.facebook.com/markplace">Mark Wu</a> 對同人的上述觀點提出了他的想法，他說也許應該思考兩者間的不同。他提到了下面的觀點：</p>
<blockquote><p>我想到朝倉啟太中解釋同理心的一段話，透過對話來了解雙方的不同點，就是因為體會到「對方與自己不一樣」，所以更尊重對方。</p>
<p>我是很喜歡這樣解釋的。因為再怎麼一致，只要有 1% 的不同，其實都很難去思考 99% 的相同 &#8230; 因為眼中只有「自己的不同」。那還不如更去正視雙方的不同 &#8230;</p></blockquote>
<p>Mark Wu 認為對話不是尋求一致，而是積極地在不同中尋求解決。但實際上不同個體間的差異不見得能夠被解決（Resolved），卻需要去面對（Confrontation）由差異所造成的對立現象。當雙方出現的歧異太大，很多時候是不可能找到彼此都能接受的方案，更不可能要某一方去屈就於另一方的道理去做。因此如果彼此的溝通不能求同存異，那麼就不可能尊重對方的差異，也就沒有可以對話的立基點。</p>
<p>同人認為 Mark Wu 提到透過對話來了解雙方的不同點，就是因為體會到「對方與自己不一樣」，所以更尊重對方。這句話並不是不正確，而是在要在溝通過程中完全做到根本相當困難。想想看，如果我們確認自己絕對沒有錯，那麼對方一定有錯，而且還不知道自己錯誤真是錯得相當離譜。你真的能夠尊重這種執迷不悟的人嗎？這時候我們嘴巴說尊重或包容，其實只是宣稱自己比對方高尚的歧視，對方必然感受不到絲毫的尊重而讓彼此對立更加劇烈。分別心的執念擴大了非我族類的歧異，但其實這一切可能只是因為自我的迷惑。</p>
<p>對與錯和是與非，往往是一體兩面，關鍵在一體，但人多半習慣在兩面的執念。其實這個執念往往是我們一廂情願的想法，讓我們無法跳脫思想讓雙方共同創造整體的一致性。所以賽斯說「話語的力量不在話語本身，而在話語的間隔」，在歧見之後，如果在間隔之中我們只有抽取他人的片斷意義、以記憶取代思考、以確定性拒絕可能性、以及強迫他人以自己的觀點來看事情，那麼雙方就只能各說各話。除非我們改變另一種不一樣的溝通行為，歧見便是雙方得以共同思考的起點，以創造出更大的可能性，來達到「對話」的目的－共享意義。</p>
<p>近年來台灣因為政治因素的影響，使得社會上的歧見很難相互對話，這是令人憂心的事情。同人很喜歡《<a href="http://www.anobii.com/books/01878bf7ff24a7819e/">深度匯談</a>》提及的對話的一致性原則及尊重行為的觀點，這本書提到下列幾個相關的內容：</p>
<blockquote><ol>
<li>在我們不願意接受他人的看法時，表示我們對該項看法沒有產生任何的關聯性。在這種情況下，我們常常會忽略別人的看法其實擁有一致性的意義，而我們只是一味地拒絕接受，認為他們就是不對的。我們如果真的這樣做，一定會忽略別人思想與經驗的正當來源，而這些思想與經驗都是我們加以探求就可以理解的。假如我們拒絕瞭解他人的看法和經驗，就是堅持在自己和他人之間製造分裂的狀況。</li>
<li>對話的基礎就是，認知到這世界為無法分割的主體，而問題就在於我們沒有清楚瞭解這個事實。世界已經是完整不可分割了，而我們面臨的挑戰是以各種方法來洞悉這個事實。</li>
<li>「尊重」這個動作的核心精神，是將他人視為「正當的」個體，即使我們不喜歡他做的事、說得話或思考方式，但我們仍然無法否定他們是「正當」生命體的事實。</li>
</ol>
</blockquote>
<p>看完上面這些有關一致性原則和尊重行為的內容，再看看台灣在總統大選後的社會氛圍，不知你看到了什麼？同人認為他人的歧見絕對不是整個社會無法理性對話的原因，關鍵在於我們能不能尊重差異，在歧見之後的間隔中思考彼此的一致性觀點，以促進提昇整體社會的進展。因為偏好不同而否定其他人的正當性是沒有用的，因為世界是不能分割的整體，分離意識只會造就自我與現實矛盾的衝突。</p>
<br /><div class="googlePlusOneButton"><g:plusone href="http://www.lifeparty.idv.tw/blog/archives/6838"  size="standard"   ></g:plusone></div><br />]]></content:encoded>
			<wfw:commentRss>http://www.lifeparty.idv.tw/blog/archives/6838/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>被排擠的理念</title>
		<link>http://www.lifeparty.idv.tw/blog/archives/6826</link>
		<comments>http://www.lifeparty.idv.tw/blog/archives/6826#comments</comments>
		<pubDate>Sun, 08 Jan 2012 09:13:11 +0000</pubDate>
		<dc:creator>jim yeh</dc:creator>
				<category><![CDATA[占星]]></category>
		<category><![CDATA[占星觀念]]></category>
		<category><![CDATA[學習]]></category>
		<category><![CDATA[寫作]]></category>
		<category><![CDATA[思考]]></category>
		<category><![CDATA[新時代]]></category>
		<category><![CDATA[生活感觸]]></category>

		<guid isPermaLink="false">http://www.lifeparty.idv.tw/blog/?p=6826</guid>
		<description><![CDATA[去年底，一位朋友告訴我他和某個社團的紛爭始末，同人從朋友的敍述中，看到了被團體排擠的理念，這讓我想到對於寶瓶座特質強烈的人而言，堅持真理總是他們認為最重要的事，即使遭到眾人排拒也不可能絲毫讓他們退縮。 朋友當時和社團某個人物因為某件事而發生衝突，對方說有能力整我的朋友，然後就在社團散播謠言中傷朋友並藉此將他趕出社團，甚至在朋友離開社團之後繼續污辱及咀咒他的母親、以及私下跟其他團員說朋友睡人老婆，以上這些都是沒有證據的指控卻讓朋友及其家人朋友的名譽受到極大的損害。考慮到對社團的情誼、及擔心因為個人紛爭而破壞當初設立這個社團的理想，朋友對以上這些惡意行徑只能忍耐，但卻讓他對社團的一些朋友感到非常的心寒。 同人看到朋友和社團那些中傷他的人的紛爭，正是來自於理念的不合。但奇怪的是如果理念真的不相同，為什麼當初能夠能夠為了共同的目標而組社團？顯然問題是時空背景的改變，而讓有些人的想法改變了。從朋友告訴我的故事當中可以很清楚看到，朋友的理念遭受到排擠，是因為和朋友衝突的那個人，可以給眾人他們所需要的虛榮心之滿足，而朋友的堅持理念相形之下顯得食古不化，所以他當然可以被犧牲而被當成獻祭。 其實從占星學星座的結構已經告訴我們被排擠的理念是怎麼一回事，從塔羅牌〈命運之輪〉這張牌出現的四獸代表四正星座－天使代表的寶瓶座、獅子代表的獅子座、老鷹代表的天蠍座、牛代表的金牛座，命運之輪的轉輪總是有人要沉淪或是提昇，差別只在於你有沒有人面獅身的正義之劍所代表的智慧，才能足以讓人世局混濁的時候有洞見來看到趨勢及未來。 寶瓶座性格強調追求真理，這種性格追求的理念不是為了權威、私利、或是私欲，而是為了求真的理性。這種性格總是有悲天憫人及人道主義的胸懷，致力於為眾人尋求更好的環境。然而他們的身影總是孤獨的，因為特立獨行的寶瓶座性格，總是容易遭受到盲目的大眾所排擠。獅子座正是和寶瓶座直接對衝的星座，而它正象徵了王者的尊貴，不能容許寶瓶座質疑或反對由它樹立起行為典範的權威。 金牛座和天蠍座的性格也會阻礙寶瓶座求真的特質而加以排擠。金牛座和利益有關，面對寶瓶座的真理，基於人性考量真正的理性恐怕是「人不為己，天殊地滅」，因此要打破利之所趨的價值觀信仰是很困難的。因為擔心既得利益會被破壞，金牛座性格的陰暗面天蠍座性格只得出來攻擊反對者，而且是為了達到目的，不擇手段及不計任何代價的破壞行為。所以惡意中傷的謠言或指控可以用來對待昔日並肩作戰的親密戰友，為了得到自身的好處，違背良心也在所不惜，這是醜陋的人性罪惡面。 寶瓶座和魔羯座是子丑合土的六合星座，所以他們都重視事物的結構和脈絡，魔羯座重視物質的結構，而寶瓶座重視理念的脈絡。兩者有相似的擇善固執的性格，尤其寶瓶座堅持的不是實體事物，而是抽象概念，於是更是不容易讓人理解他們的先見之明。此外，雙魚座是寶瓶座的下一個星座，正是寶瓶座命宮的財帛宮，代表追求真理的價值可能會被認為是太過於理想，而且也是可是被犧牲的。 然而從塔羅牌用天使來代表寶瓶座，可以知道寶瓶座性格是超越世俗的先知或覺者層次，這讓我們了解對於遭受被排擠的理念，我們不需要媚俗來討好世人、或是徒留「眾人皆醉，唯我獨醒」的感嘆，只要堅定地做自己就對了。因此同人以為縱使朋友的理念總是被人所排擠，但如果他沒有放棄自己，人們因為害怕對他所做的行為仍然不能加害他，因為他所面對的是堅定的自己，而視他為仇敵的人卻是逃避自己的陰影。站在真理這一邊，正是寶瓶座性格的人之所以成就寶瓶座特質的表現，而這正是至善的人性光明面。]]></description>
			<content:encoded><![CDATA[<p>去年底，一位朋友告訴我他和某個社團的紛爭始末，同人從朋友的敍述中，看到了被團體排擠的理念，這讓我想到對於寶瓶座特質強烈的人而言，堅持真理總是他們認為最重要的事，即使遭到眾人排拒也不可能絲毫讓他們退縮。</p>
<p>朋友當時和社團某個人物因為某件事而發生衝突，對方說有能力整我的朋友，然後就在社團散播謠言中傷朋友並藉此將他趕出社團，甚至在朋友離開社團之後繼續污辱及咀咒他的母親、以及私下跟其他團員說朋友睡人老婆，以上這些都是沒有證據的指控卻讓朋友及其家人朋友的名譽受到極大的損害。考慮到對社團的情誼、及擔心因為個人紛爭而破壞當初設立這個社團的理想，朋友對以上這些惡意行徑只能忍耐，但卻讓他對社團的一些朋友感到非常的心寒。</p>
<p>同人看到朋友和社團那些中傷他的人的紛爭，正是來自於理念的不合。但奇怪的是如果理念真的不相同，為什麼當初能夠能夠為了共同的目標而組社團？顯然問題是時空背景的改變，而讓有些人的想法改變了。從朋友告訴我的故事當中可以很清楚看到，朋友的理念遭受到排擠，是因為和朋友衝突的那個人，可以給眾人他們所需要的虛榮心之滿足，而朋友的堅持理念相形之下顯得食古不化，所以他當然可以被犧牲而被當成獻祭。</p>
<p>其實從占星學星座的結構已經告訴我們被排擠的理念是怎麼一回事，從塔羅牌〈命運之輪〉這張牌出現的四獸代表四正星座－天使代表的寶瓶座、獅子代表的獅子座、老鷹代表的天蠍座、牛代表的金牛座，命運之輪的轉輪總是有人要沉淪或是提昇，差別只在於你有沒有人面獅身的正義之劍所代表的智慧，才能足以讓人世局混濁的時候有洞見來看到趨勢及未來。<br />
<img class="alignnone size-medium wp-image-6829" title="命運之輪" src="http://www.lifeparty.idv.tw/blog/wp-content/uploads/2012/01/imgc010-164x300.jpg" alt="" width="164" height="300" /><br />
寶瓶座性格強調追求真理，這種性格追求的理念不是為了權威、私利、或是私欲，而是為了求真的理性。這種性格總是有悲天憫人及人道主義的胸懷，致力於為眾人尋求更好的環境。然而他們的身影總是孤獨的，因為特立獨行的寶瓶座性格，總是容易遭受到盲目的大眾所排擠。獅子座正是和寶瓶座直接對衝的星座，而它正象徵了王者的尊貴，不能容許寶瓶座質疑或反對由它樹立起行為典範的權威。</p>
<p>金牛座和天蠍座的性格也會阻礙寶瓶座求真的特質而加以排擠。金牛座和利益有關，面對寶瓶座的真理，基於人性考量真正的理性恐怕是「人不為己，天殊地滅」，因此要打破利之所趨的價值觀信仰是很困難的。因為擔心既得利益會被破壞，金牛座性格的陰暗面天蠍座性格只得出來攻擊反對者，而且是為了達到目的，不擇手段及不計任何代價的破壞行為。所以惡意中傷的謠言或指控可以用來對待昔日並肩作戰的親密戰友，為了得到自身的好處，違背良心也在所不惜，這是醜陋的人性罪惡面。</p>
<p>寶瓶座和魔羯座是子丑合土的六合星座，所以他們都重視事物的結構和脈絡，魔羯座重視物質的結構，而寶瓶座重視理念的脈絡。兩者有相似的擇善固執的性格，尤其寶瓶座堅持的不是實體事物，而是抽象概念，於是更是不容易讓人理解他們的先見之明。此外，雙魚座是寶瓶座的下一個星座，正是寶瓶座命宮的財帛宮，代表追求真理的價值可能會被認為是太過於理想，而且也是可是被犧牲的。</p>
<p>然而從塔羅牌用天使來代表寶瓶座，可以知道寶瓶座性格是超越世俗的先知或覺者層次，這讓我們了解對於遭受被排擠的理念，我們不需要媚俗來討好世人、或是徒留「眾人皆醉，唯我獨醒」的感嘆，只要堅定地做自己就對了。因此同人以為縱使朋友的理念總是被人所排擠，但如果他沒有放棄自己，人們因為害怕對他所做的行為仍然不能加害他，因為他所面對的是堅定的自己，而視他為仇敵的人卻是逃避自己的陰影。站在真理這一邊，正是寶瓶座性格的人之所以成就寶瓶座特質的表現，而這正是至善的人性光明面。</p>
<br /><div class="googlePlusOneButton"><g:plusone href="http://www.lifeparty.idv.tw/blog/archives/6826"  size="standard"   ></g:plusone></div><br />]]></content:encoded>
			<wfw:commentRss>http://www.lifeparty.idv.tw/blog/archives/6826/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>選舉文宣的道德</title>
		<link>http://www.lifeparty.idv.tw/blog/archives/6759</link>
		<comments>http://www.lifeparty.idv.tw/blog/archives/6759#comments</comments>
		<pubDate>Tue, 06 Dec 2011 06:13:32 +0000</pubDate>
		<dc:creator>jim yeh</dc:creator>
				<category><![CDATA[思考]]></category>
		<category><![CDATA[新聞]]></category>
		<category><![CDATA[生活感觸]]></category>

		<guid isPermaLink="false">http://www.lifeparty.idv.tw/blog/?p=6759</guid>
		<description><![CDATA[在上個禮拜在臉書看到有人引用 BillyPan 的文章說民進黨的文宣並未讓柿子的價格下跌，讓我想到不同的觀點想藉由這篇文章表達出來。這篇文章不談政治立場的信仰，只探討有關選舉文宣的道德。]]></description>
			<content:encoded><![CDATA[<p>最近柿子應該是總統大選最熱門的話題。民進黨先前發出文宣月曆稱柿子 1 斤 2 塊錢，誤植甜柿照片，引起部分柿農質疑文宣誤導消費者亂殺價，打壞水果行情。蔡英文 11/30 日為文宣誤植照片表示「遺憾」，12/1 日進一步道歉。至於民進黨立法院黨團幹事長蔡煌瑯 12/1 日上午在媒體提問後，對於民進黨水果月曆文宣照片使用不夠周全，他被動地表示，對這部分確實要道歉，但是整個水果文宣確實激發成為政府全面收購柿子最大的動力。<sup>[<a href="http://www.lifeparty.idv.tw/blog/archives/6759#footnote_0_6759" id="identifier_0_6759" class="footnote-link footnote-identifier-link" title="小英為文宣「誤植」道歉 籲馬勿卸責 | 文宣引爆果價戰 | 國內要聞 | 聯合新聞網 Power By udn.com">1</a>]</sup></p>
<p>其實同人很少在網誌上談論有關政治的議題，因為我的網誌的讀者不一定和我有相同的政治傾向或偏好，萬一為了政治取向不同而辯論，我覺得是很浪費時間的。尤其是我有很多想要寫的文章都沒時間寫了，那裡還有什麼美國時間來評論政治呢？只不過在上個禮拜在臉書看到有人引用 <a href="http://www.wretch.cc/blog/billypan101/16701813">BillyPan 的文章</a>說民進黨的文宣並未讓柿子的價格下跌，讓我想到不同的觀點想藉由這篇文章表達出來。這篇文章不談政治立場的信仰，只探討有關選舉文宣的道德。</p>
<p>看到 BillyPan 的觀點，心中有種很微妙的感覺。他常用一些資料數據來證明他的論點，但卻曾經被同人發現他使用的方法有問題，使科學淪為政治宣傳的工具。所以這一次會不會又是用看起來真實的數據資料，詮釋出他想要訴求的意義？說實在地，同人不會相信他文章所下的結論：民進黨的文宣沒有造成柿價的下跌，情況沒有像國民黨和名嘴們所說的那樣。</p>
<p>同人想到上次總統大選他用部落格訪問數推估遊行人數，<a href="http://www.lifeparty.idv.tw/blog/archives/374">被同人發現他用的統計學方法有錯誤</a>的經驗，這次就算柿價是像 BillyPan 的數據資料所顯示的那樣，我還是反對 BillyPan 的詮釋。因為民進黨文宣的錯誤並不是造成柿價的下跌，而是其選舉文宣的道德問題。不過有趣的是，沒想到後來還是不巧發現 BillyPan 的數據資料真的有問題，又讓同人發現 BillyPan 的那篇文章其實只是拿科學當幌子來為政治服務。</p>
<p>如果柿價如 BillyPan 說的並沒有因為水果月曆文宣而造成下跌，甚至可能還讓柿價因此上揚，這是不是意味著蔡煌瑯說的沒錯；整個水果文宣確實激發成為政府全面收購柿子最大的動力？如果確實是這樣的話，這反而代表文宣用不實的水果價格，刻意壓低水果行情，大家反而要感謝其造成對柿子價格的推昇作用，顯然它並不合邏輯。</p>
<p>因為扭曲事實本來就不對，即使後來沒有因此發生嚴重的後果，但並不會因為結果沒有變壞就代表扭曲事實是正確的，更何況民進黨文宣打壓柿價由政府收購來控制柿價的平穩，這根本就不是公平的事。假如柿價沒有下跌很可能是因為政府及時補救得宜讓柿價得到平穩，但說是民進黨文宣刺激政府全面收購柿子最大的動力，這真是倒果為因，難道柿價的問題處理得宜，我們還要感謝水果月曆文宣放的這一把火嗎？</p>
<p>不管民進黨水果月曆有沒有影響柿子的價格，民進黨的水果月曆文宣都是不道德的。2 元柿子的宣傳，對柿農會產生最直接的危害，但這並非成就不實選舉文宣不道德的因，而是不道德文宣讓人承受的果。不實的選舉文宣不道德的因在於它傳播未經查證是事實的資訊，等到被人質疑之後才去四處去找尋 2 元柿子，可見當初民進黨根本不知道那裡有 2 元柿子。因此關鍵根本不在圖片弄錯的技術問題而已，而在於水果月曆讓人信仰沒有經過證實的事情。關於信仰的道德，我們應該注意《<a href="http://mtlin.org/archives/519">信仰的道德</a>》這篇論文所強調的，任何人無論何時、何地，在缺乏證據下相信任何東西，就是錯誤的。</p>
<blockquote><p>因個人輕信造成的危害不僅限於助長他人的輕信，從而支持錯誤的信仰，若對自己相信的事情，都養成小心戒慎的習慣，當別人告訴我所謂的真理時，也會讓他養成小心戒慎的習慣。不管是自己心中的真，還是別人心中的真，當大家都對此抱持尊重的態度，人們才會彼此說真話，若連我自己都不小心戒慎，我相信是因為我喜歡、我爽、我高興，那我的朋友們又如何尊重我心中的真呢？當和平根本不存在的時候，他會對著我高喊「和平」嗎？（Will he not learn to cry, ‘Peace,’ to me, when there is no peace?）若如此，在我四周便瀰漫了一股濃厚的虛偽、欺瞞的氣氛，而我必須生活在這種氣氛之中，對我來說，活在自己的空中樓閣，裡頭全是美好的假象和甜蜜的謊言，或許並沒什麼壞處，但對全人類來說，就不是好事，這會讓我周遭的人跟著一塊欺騙。一位輕信的人，就是一個謊言和騙徒的淵藪，他跟家人一起生活，那麼親近，最後會養出一窩同類的人根本不足為奇。所以，請把我們的責任緊密交織在一起，誰要是遵守了所有的法律，卻在這點上有所逾越，他就是有罪。<sup>[<a href="http://www.lifeparty.idv.tw/blog/archives/6759#footnote_1_6759" id="identifier_1_6759" class="footnote-link footnote-identifier-link" title="Morton，The Ethics of Belief（信仰的道德），Morton&rsquo;s Weblog">2</a>]</sup></p></blockquote>
<p>因此，站在信仰的道德的觀點，不管 2 元柿子到底是不是事實，民進黨都應該為水果月曆的文宣道歉，而且重點不在於圖片是否誤植，而在於沒有查證就認為 2 元柿子是想當然爾的故事。讓人隨便就輕信 2 元柿子的故事，而沒有證實它究竟是否是真的事實，蔡英文怎麼可能沒有半點責任呢？再多的故事也沒辦法遮掩民進黨文宣的不道德，更何況，柿子的價格並非如 BillyPan 說的那樣沒有下跌，從柿子在市場銷售的資料來看，水果月曆文宣和水柿價格下跌之間存在明顯的相關性。</p>
<p>BillyPan 的文章中提到柿子價格在水果月曆前後，價格並沒有下跌，而銷量也前後差不多。可惜我上網查了一下資料，再用 Excel 進行統計，發現事實並非如此，而且還讓我發現他隱藏部分的資料，其中有沒有說出來的秘密。</p>
<p>我查了柿子價格的變化，不分品種的柿子價格+4.68%，但成交量-8.14%。甜柿為價格-1.76%，成交量+1.24%。水柿為價格-8.11%，成交量為-12.84%。所以柿子價格沒變動嗎？我看到 BillyPan 的文章又在為政治而服務了。</p>
<p>從柿子價格和銷售量的標準差來看，價格不分品種為4.53%，甜柿為3.80%，水柿為8.48%。成交量不分品種為22.10%，甜柿為15.23%，水柿為7.03%。可知道價格波動以水柿最劇烈震盪，甜柿最平緩，不分品種的價格波動居次。銷售量則是以不分品種的波動最大，水柿最平緩，而甜柿居次。</p>
<p>因此代表水柿的價格波動最劇烈，而甜柿保持平緩；而在柿子的銷量方面，這段比較期間中，不分品種也就是普遍各種柿子的銷售量有劇烈變化，水柿則是銷售量呈一定的幅度下降。</p>
<p>從柿子價格和銷售量的平均值來看，整體來說，柿子價格上升，但銷售量卻大降，顯見消費者因為抱怨柿價太高而不消費的傾向。而甜柿價格下降，成交量稍微上提，代表柿價雖有下跌，但銷量微幅上升，市場交易情形受到控制。至於水柿價格大降，銷售量也降低，代表價格和銷售量和文宣有直接而顯著的相關。同人把<a href="https://docs.google.com/spreadsheet/ccc?key=0AiWhos0VcpSWdGsxbklQOEVLWWl6bXVneVNodnY2ZUE&#038;hl=en_US#gid=0">資料放在 Google Docs</a> 上，並公開分享可以提供給對資料有興趣的人來參考。</p>
<p>BillyPan 的文章提到不分品種和甜柿價格沒什麼差異，於是認為不用再看水柿了下了價格沒有下跌的結論。但其實真正的問題就在這裡，由上面的敍述統計資料我們知道水柿價格下降劇烈，而銷售量最後也下跌超過了 10%。令人欣慰的是，資料顯示等級較高的甜柿好像沒受到民進黨文宣太大的負面影響。也許是相關單位及時補救，也可能是消費者的良善沒有趁火打刼，總之價格和銷售量似乎不受民進黨的文宣影響。但 BillyPan 沒有提到的水柿呢？同人發現 BillyPan 沒有揭露這部分的資料，是因為它正好打了蔡英文一個大巴掌。</p>
<p>市場的甜柿價格沒有下跌，但水柿可就大大下跌。蔡英文說她為圖片誤植成甜柿而道歉，可是市場的反應好像沒有錯解甜柿的價格，而是大大地讓水柿的價格下跌和銷量下滑，顯見圖片放錯好像市場也知道文宣說的是水柿而非甜柿，就好像圖片並沒有誤植一樣，顯然蔡英文道歉圖片誤植根本就沒有必要，她應該道歉的是民進黨的文宣打壓柿價的事實。</p>
<p>從資料看到水柿的價格受到文宣的影響，那麼在文宣出現之後看到的 2 元水柿，在文宣之前必然是大於 2 元，那麼民進黨的文宣為什麼要測期水柿價格只有 2 元呢？他們沒有給社會滿意的交待，卻只是一再地死不認錯，把問題歸咎於別人身上，編造屬於他們的<a href="http://www.lifeparty.idv.tw/blog/archives/128">巧妙壞人故事</a>－這不是我的錯、這是別人的錯、我沒辦法做什麼。資料顯示，2 元柿子不是事實，而可能是被水果月曆文宣打壓價格後的結果，由此可知民進黨文宣的問題不是因為圖片弄錯，而是因為無矢放的的扭曲事實，拿偏誤的資料來掩蓋事情的真相。</p>
<p>其實只要學過一點統計學的人，都能夠看出 BillyPan 的論點很奇怪。尤其是看他強調不能看單一地區的柿子價格變化，要看全國柿子價格變化的平均，我就直覺這當中有問題。因為統計只看平均不看變異是看不出群體的整體狀況，這是統計學的常識，我們看到資料中柿子價格中的變動有正有負，就應該看資料的標準差來衡量價格變動的變異程度，才能夠了解柿子價格和銷售量的波動情況。同人動手去分析資料，果然發現 BillyPan 資料的以偏概全，他的分析和結論就和民進黨的水果月曆文宣一樣不道德。</p>
<p>網友 Maxr Wang 對我在 <a href="https://plus.google.com/u/0/112933080216626433758/posts/RBMYa1Thbgh">google+ 提到這件事</a>留言說：「沒人怪他立場挺綠，但『扭曲事實』就無法容忍嚕～冷眼看他『自鳴得意、沾沾自喜』，他不知道他每天都在幫馬拉票。我最喜歡他的一句話，『我一直在部落格強調的是，所有的政客，媒體你都不要相信』，所以他也不信民進黨跟小英的意思吧～」同人認為 BillyPan 不是不相信民進黨和小英，而是要人不要相信自己的信仰，要來改信 BillyPan 的信仰，然而問題是這樣的信仰不道德，同人的意思不是挺綠不道德，而是輕信未經證實的事情是不道德的。當然在宗教信仰的層面我們沒辦法確認我們的信仰是真實的，但在政治上你在確認之前就已經信仰了，那絕對不是有道德的信仰。</p>
<br /><div class="googlePlusOneButton"><g:plusone href="http://www.lifeparty.idv.tw/blog/archives/6759"  size="standard"   ></g:plusone></div><br />附註
&nbsp;<hr/><ol class="footnotes"><li id="footnote_0_6759" class="footnote"><a href="http://udn.com/NEWS/NATIONAL/NATS4/6753847.shtml#ixzz1fIbsjGsb">小英為文宣「誤植」道歉 籲馬勿卸責</a> | 文宣引爆果價戰 | 國內要聞 | 聯合新聞網 Power By udn.com</li><li id="footnote_1_6759" class="footnote">Morton，<a href="http://mtlin.org/archives/519">The Ethics of Belief（信仰的道德）</a>，<a href="http://mtlin.org/">Morton’s Weblog</a></li></ol>]]></content:encoded>
			<wfw:commentRss>http://www.lifeparty.idv.tw/blog/archives/6759/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>從房屋漏水事件體悟「或躍在淵」之道</title>
		<link>http://www.lifeparty.idv.tw/blog/archives/6696</link>
		<comments>http://www.lifeparty.idv.tw/blog/archives/6696#comments</comments>
		<pubDate>Mon, 21 Nov 2011 04:36:37 +0000</pubDate>
		<dc:creator>jim yeh</dc:creator>
				<category><![CDATA[問題解決]]></category>
		<category><![CDATA[思考]]></category>
		<category><![CDATA[易經思維]]></category>
		<category><![CDATA[溝通]]></category>
		<category><![CDATA[生活感觸]]></category>

		<guid isPermaLink="false">http://www.lifeparty.idv.tw/blog/?p=6696</guid>
		<description><![CDATA[有道是「聽某嘴，大富貴」（台語），她反對同人打電話給主委，要我緩和一下衝動的情緒，這讓我想到我們面對的正是易經乾卦三爻和四爻的凶險處境，面對這種危險的境地，惟有從自我反省和警愓才能及時採取適當的做為來避免犯錯。]]></description>
			<content:encoded><![CDATA[<p>前二個禮拜我們家又漏水了，和上一次兩個月前的狀況一樣，這次漏水影響最嚴重的還是住在我們家樓下的鄰居王媽媽。但這一次漏水並不像上一次可以清楚界定問題發生的原因，由於這幾天連日下雨，加上前不久剛好有其他住戶才整修完浴室，讓人懷疑可能是因為其施工不慎所造成的影響，最後才回過頭來檢查自己家中的水管才發現問題出在我們家。這個過程讓同人體悟到《易經》乾卦九四「或躍在淵」的道理。</p>
<p>同人上週四才剛回到家，老婆就說我們家漏水了。她說帶女兒放學回家之後，女兒發現靠近浴室的牆面下有一大攤水，牆壁也出現水痕和潮濕的現象。老婆趕緊拿抺布來擦乾地板並且塞了乾的抺布到牆邊來吸水，這時候樓下的王媽媽出現告訴老婆她們家漏水了，而且情況比我們家還嚴重，她表示四樓前不久前才裝修完房屋，懷疑很可能是因為四樓裝修不慎而造成我們家和她家漏水的現象。</p>
<p>同人家住一樓，兩個月前才修好後陽台熱水管路的漏水問題。當時，也讓王媽媽家中飽受漏水的困擾，讓她們半夜都無法安眠。當老婆告訴我家裡發生漏水的情形發生之後，雖然我認為出在家中管路問題的機率應該不高。但對於王媽媽對漏水現象原因的假設，我覺得應該要有具體的根據來證明它的合理性，因為雖然四樓最近裝修了浴室，但二樓和三樓都沒有漏水，換作是同人也沒辦法相信因為四樓的裝修而造成一樓和地下一樓的漏水現象。</p>
<p>晚餐之後，老婆到樓下王媽媽家去了解她們漏水的情形。回來之後，老婆說王媽媽的狀況真的非常嚴重，並且提到四樓要找人在週六或週日到我們家，查看漏水是不是因為她們家施工造成的問題。後來老婆在我們家樓上夾層的房間發現牆壁也有潮濕的現象，這樣看起來的確很有可能漏水不是我們家管路漏水的問題，因為漏水通常不是從上面流到上面，而是從上面往下面流，所以造成漏水問題的來源很可能在我們家的樓上。</p>
<p>接下來我們等了兩天，在這段期間中，我們必須不斷地更換塞在牆邊的抹布，潮濕的抹布因為連日陰雨不容易晾乾，甚至必須找一些破舊的衣服來充當抹布。到了周六早上，王媽媽上來問我們四樓的人有沒有過來看漏水的狀況。我回答說沒有，王媽媽希望我打電話過去問看看，不要讓對方以為只有王媽媽家裡有受到影響。</p>
<p>同人撥了電話，接通之後我向對方表明身份，並說明我家和樓下王媽媽家漏水的狀況。對方四樓的景小姐認為他沒有動到水管，我則表示不確定她的疑慮是否存在，她當然可以朝這些方向提出明證，但由於漏水發生的時間和她裝修房子有時間的巧合，我覺得兩者或許會有關係，打電話給她只是想傳達我和王媽媽家漏水的狀況都十分嚴重，撥空到我們家察看對釐清責任也會有幫助。</p>
<p>景小姐表示她會找時間來看，只是最近很忙，她要再安排時間，並向我表達造成我們困擾的歉意。直到傍晚，我都沒有看到景小姐，也沒有收到她的任何消息，這時候樓下王伯伯和王媽媽來了，王伯伯表示我們兩家原來都沒有出現漏水的現象，一直到四樓裝修之後就發生漏水了。他認為這水很可能是從四樓的管路漏下來的，他一直想找四樓出面來確認是不是這個原因，但卻都一直找不到人。</p>
<p>王伯伯建議大家一齊上樓把四樓那一戶的總水開關關起來，我們在到頂樓水塔前還問二樓有沒有發生漏水，二樓回答沒有漏水不能證實漏水是四樓的問題，後來因為我們無法確認那一個水錶是四樓的，還是沒有關閉四樓的水源總開關。大家討論覺得到找主委出面協調解決這件事，但當我要打電話的時候，同人嫂卻覺得有問題而阻止我聯絡主委。果然後來王媽媽的兒子來電告訴我們，主委在下午已經和四樓達成共識認為漏水事件和他們家的裝修無關，要我們兩家共同找水電來檢修漏水的問題。</p>
<p>老婆覺得漏水有可能是我們家的問題，即使我們家水管會突然漏水的機會並不高，但至少要先懷疑自己家裡沒問題，才有立場質疑是別人家的問題。於是同人到頂樓水塔關閉了我們家的水源總開關，結果漏水現象好像有減緩的跡象，第二天，樓下的王伯伯和王媽媽很驚訝地跑來告訴我們他們家不再漏水，同人才確認漏水事件是因為我們家管路問題所造成的，並且告知王伯伯和王媽媽我們會找水電來修好它，在修復之前我們都不會把我們家的水源總開關打開。</p>
<p>還好同人的房屋瑕疵保固尚未超過民法規定的六個月，我們會要求前屋主負起漏水問題修繕的責任。雖然在漏水問題修復之前我們家都無水可用，還真是令人感到困擾及麻煩，但這個過程卻讓同人體悟到易經乾卦九四「或躍在淵」的道理，實在是非常寶貴的教訓及經驗。</p>
<p>有道是「聽某嘴，大富貴」（台語），她反對同人打電話給主委，要我緩和一下衝動的情緒，這讓我想到我們面對的正是易經乾卦三爻和四爻的凶險處境，面對這種危險的境地，惟有從自我反省和警愓才能及時採取適當的做為來避免犯錯。</p>
<p>雖然四樓的景小姐沒有履行他的承諾而令人失望，但萬一真相不是因為她裝修房屋而造成漏水，我們的行為豈不更顯得魯莽；而且就算漏水事件真的和她的裝修房子有關，沒有自我檢測之前就懷疑別人也違反了<a href="http://mtlin.org/archives/519">信仰的道德</a>。其實我一開始就了解這個道理，但看到王伯伯和王媽媽的慘境，感染到他們緊張的心情而忘了處於危險處境的因應之道。《易經》乾卦〈文言〉曰：</p>
<blockquote><p>九三曰：「君子終日乾乾，夕惕，若厲，無咎。」何謂也？<br />
子曰：「君子進德修業，忠信，所以進德也。修辭立其誠，所以居業也。知至至之，可與幾也。知終終之，可與存義也。是故，居上位而不驕，在下位而不憂。故乾乾因其時而惕，雖危而無咎矣。」</p>
<p>九四：「或躍在淵，無咎。」何謂也？<br />
子曰：「上下無常，非為邪也。進退無恆，非離群也。君子進德修業，欲及時也，故無咎。」</p>
<p>&#8230;&#8230;</p>
<p>九三，重剛而不中，上不在天，下不在田。故乾乾因其時而惕，雖危無咎矣。<br />
九四，重剛而不中，上不在天，下不在田，中不在人，故或之。或之者，疑之也，故無咎。</p></blockquote>
<p>當人處於乾卦的三爻和四爻的情況，會面臨所謂「不三不四」的混亂。由於情況多變詭譎難測而埋藏許多危機，此時必須因其時而愓，以忠信來進德、以修辭立其誠來居業，這樣就算是在上位也不驕，在下位也不憂，所以情況雖然凶險也不會有過錯發生。</p>
<p>在混亂的局勢中，從顛峰掉落到谷底不見得是因為個人的邪妄所致，而是因為世事無常；進退沒有按照常理也不是因為想表現與眾不同，而是因為時機不同的緣故。君子應該在德業上下功夫，在適當的時機修正自己的行為，所以才能夠在危險的境地中不發生過錯。</p>
<p>因此，從乾卦九三的「行事也」，關鍵在因其時而愓，到了九四的「自試也」，重點乃在懷疑自己有沒有問題的自我檢視的態度。只有在確定自己沒有問題之後，「或躍在淵」乃是在適當的時機讓自己更上一層樓，而達到飛龍在天的狀態。這是「上治也」的境界，但它除了機遇之外，更需要機遇在尚未來臨前的自持功夫。從房屋漏水事件可以體悟「或躍在淵」之道，深覺在生活中，易理真是無所不在而且非常有趣呀。</p>
<br /><div class="googlePlusOneButton"><g:plusone href="http://www.lifeparty.idv.tw/blog/archives/6696"  size="standard"   ></g:plusone></div><br />]]></content:encoded>
			<wfw:commentRss>http://www.lifeparty.idv.tw/blog/archives/6696/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>對於「做好產品」還沒說清楚的觀念</title>
		<link>http://www.lifeparty.idv.tw/blog/archives/6645</link>
		<comments>http://www.lifeparty.idv.tw/blog/archives/6645#comments</comments>
		<pubDate>Mon, 15 Aug 2011 11:11:43 +0000</pubDate>
		<dc:creator>jim yeh</dc:creator>
				<category><![CDATA[品質文化]]></category>
		<category><![CDATA[思考]]></category>
		<category><![CDATA[溝通]]></category>
		<category><![CDATA[生活感觸]]></category>
		<category><![CDATA[策略]]></category>
		<category><![CDATA[行銷]]></category>

		<guid isPermaLink="false">http://www.lifeparty.idv.tw/blog/?p=6645</guid>
		<description><![CDATA[在同人簡要地回覆學長的留言之時，其實在我心中對於「做好產品」有一些還沒表達清楚的觀念。想等到有空的時候再補充我的想法，雖然後來看到學長說他不再寫文章與人爭辯了，但這些觀念其實不是為了爭辯而產生的，而是為了對話以分享意義，所以我還是決定把它們寫出來。]]></description>
			<content:encoded><![CDATA[<p>對於〈<a href="http://www.lifeparty.idv.tw/blog/archives/6624">做好產品一定能賺到錢</a>〉這篇文章，喲哪桑學長在 <a href="http://www.facebook.com/inpines/posts/161666513908256">facebook 的討論中</a>提出了他的看法。同人看到他的留言時並沒有時間完整表達我的看法，所以只是簡單地闡明我文章的題旨不是沒辦法把產品做好，而是認為客觀的好產品是不存在的。</p>
<p>在同人簡要地回覆學長的留言之時，其實在我心中對於「做好產品」有一些還沒表達清楚的觀念。想等到有空的時候再補充我的想法，雖然後來看到<a href="http://jonathanspeaking.blogspot.com/2011/08/blog-post.html">學長說他不再寫文章與人爭辯了</a>，但這些觀念其實不是為了爭辯而產生的，而是為了對話以分享意義，所以我還是決定把它們寫出來。</p>
<p>學長的留言提到：</p>
<blockquote><p>I find English can express my points better. My point, as well as Phil&#8217;s is that: Create a great product, and then charge it. This is the business we want to do. I don&#8217;t mean doing a product well. Thanks.</p></blockquote>
<p>同人猜想學長大概是看到我的文章提到「把產品做得再好」而認為我把做好產品誤解成把產品做好。但實際上，同人說把產品做得再好指的是把「做好產品」這件事做好，而不是把特定產品依照規格無誤地把產品開發出來。</p>
<p>有開發產品經驗的工程師都很能體會到做好產品要比把產品做好要困難許多。因為後者只需要具體的產品規格就不成問題，而前者則需要界定出對的問題，才能讓人朝向「正確」的方向去發展解決方案。然而，有時候你即使走的路是正確的，但不見得必然能得到該有的回饋，通常只是因為時機尚未配合。</p>
<p>所謂的「對」和「正確」都只存在主觀性而非客觀性，尤其是在市場上，群眾多半是盲目的，消費者總是非理性多過理性的，所謂的「對」和「正確」只是他們在市場上依據個人偏好所得到的結果，這並不代表多數人的選擇必然比少數人的選擇更「偉大」。</p>
<p>這種以成敗來論英雄的觀點其實是忽略了<a href="http://en.wikipedia.org/wiki/Efficient-market_hypothesis">市場通常不是有效率的</a>；在市場能獲利的產品通常不是走在時代尖端的高科技產品，而是接續附加價值高有實際應用的產品，後者並不是偉大的產品，而是基於多數人們保守心態的有用處的產品。</p>
<p>以策略管理的產品定位的角度來看，想要讓產品在市場上獲利應該先設定好目標客戶的特性，找出產品的水平品質（即功能）和垂直品質（即性能）之後，然後再投入適度的研發和技術把產品開發出來再向目標客戶來收費。因此產品的獲利可能只是市場行銷策略的成功，而不代表產品真的比競爭者的產品還要好；有時候，我們知道其它的產品比我們正在使用的產品更好，只是<a href="http://en.wikipedia.org/wiki/Switching_barriers">轉換成本的障礙</a>常使人望而卻步。</p>
<p>除了上面的原因之外，同人認為「做好產品」最大的不妥是在於語言上的不精確。Great Product 一如「成熟度」的偏頗，如同溫伯格說過的：</p>
<blockquote><p>「成熟度」這個字眼所傳達的並非一個事實，而是一種價值判斷－基於事實所做的一種詮釋，最起碼，它並不符合事實。<sup>[<a href="http://www.lifeparty.idv.tw/blog/archives/6645#footnote_0_6645" id="identifier_0_6645" class="footnote-link footnote-identifier-link" title="曾昭屏譯（2006），《溫伯格的軟體管理學（第一卷）－系統化思考》，p.59-60，經濟新潮社。">1</a>]</sup></p></blockquote>
<p>Great Product 的概念在於人們認為它比其它產品都成熟，但事實上，產品面對客戶的需求和他們想要解決的問題，並沒有<strong>對不對</strong>而只有<strong>有沒有效</strong>。<span style="text-decoration: underline;">「做好產品」很容易讓人流於個人主觀價值的偏見而阻礙了對問題分析的客觀的思考</span>，可怕的是語言的不精確會讓人陷入思考偏誤的陷阱當中，讓人堅持對錯批判經驗的執著。</p>
<br /><div class="googlePlusOneButton"><g:plusone href="http://www.lifeparty.idv.tw/blog/archives/6645"  size="standard"   ></g:plusone></div><br />附註
&nbsp;<hr/><ol class="footnotes"><li id="footnote_0_6645" class="footnote">曾昭屏譯（2006），《<a href="http://www.anobii.com/books/013ad41f7a862e80dd/">溫伯格的軟體管理學（第一卷）－系統化思考</a>》，p.59-60，經濟新潮社。</li></ol>]]></content:encoded>
			<wfw:commentRss>http://www.lifeparty.idv.tw/blog/archives/6645/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>做好產品一定能賺到錢？</title>
		<link>http://www.lifeparty.idv.tw/blog/archives/6624</link>
		<comments>http://www.lifeparty.idv.tw/blog/archives/6624#comments</comments>
		<pubDate>Fri, 12 Aug 2011 09:32:16 +0000</pubDate>
		<dc:creator>jim yeh</dc:creator>
				<category><![CDATA[利害關係人]]></category>
		<category><![CDATA[品質文化]]></category>
		<category><![CDATA[思考]]></category>
		<category><![CDATA[生活感觸]]></category>
		<category><![CDATA[組織]]></category>
		<category><![CDATA[職場]]></category>
		<category><![CDATA[領導]]></category>

		<guid isPermaLink="false">http://www.lifeparty.idv.tw/blog/?p=6624</guid>
		<description><![CDATA[「好產品不一定能賺到錢」並不是一項迷思。其實它告訴我們一項真理：人想要靠開發出好產品而賺到錢，除了需要有能力把產品做出來之外，還需要其它因素的配合；把各種可能的因素加在一起，我們通常會通稱它叫機運。]]></description>
			<content:encoded><![CDATA[<p>喲哪桑學長認為<a href="http://jonathanspeaking.blogspot.com/2011/08/still-make-great-product.html">「好產品不一定能賺到錢」是因為人們沒有做出好產品而提出來的迷思</a>，不過同人並不贊同他的看法。</p>
<p>同人覺得喲哪桑的觀點讓人最疑惑的地方是有關「好產品」的定義，如何在開發產品之前具體而客觀地定義出什麼樣的產品是好產品，讓人能按照這樣的標準把產品開發出來。依據同人在系統開發的經驗來看，「好產品」的觀念總是只存在決定什麼好產品的「那個人」之<span style="text-decoration: underline;">主觀印象</span>當中，它通常是來基於他的價值判斷而產生的，但其他人不見得都會認同他對好產品的主觀價值認定。</p>
<p>當然，如果市場上大部分人都能認同「那個人」對產品價值的認定，那麼做出他認定所謂的好產品就能夠賺到錢。但如果市場上認同「那個人」對好產品概念的人並不多，即使產品做得多好也不能讓產品開發者賺到錢。</p>
<p>換句話說，開發者開發出產品的好壞並不能決定產品是否能絕對獲利，更關鍵的決定因素在於市場。就算開發者有能力開發出盡善盡美的好產品，但那並不代表市場就一定會肯定它的價值，因此「好產品不一定能賺到錢」並不是一項迷思。其實它告訴我們一項真理：人想要靠開發出好產品而賺到錢，除了需要有能力把產品做出來之外，還需要其它因素的配合；把各種可能的因素加在一起，我們通常會通稱它叫機運。</p>
<p>對於一些勇於實踐冒險精神的創業家而言，他們的成功是因為承擔風險而獲得的報酬，然而，不要忘記可能不乏有人和他們做了相同的事而失敗的例子，只是這些多半是「<a href="http://www.lifeparty.idv.tw/blog/archives/888">沉默的證據</a>」而讓人不得而知。</p>
<p>喲哪桑說，在 Phil 的演講中有提到幾個好產品的特性。他引用在他的文章中提到：</p>
<blockquote><p>更明確點說，做個好產品，好到人們會長期地一直留下來​用，好到它對人們的價值愈用愈高，而且，還能壓低公司的​變動成本。</p></blockquote>
<p>對於學長上面明確提到好產品的特性，同人不是不能認同。而是認為時空背景因素常會影響人們對產品使用的偏好；人們沒有長期使用某項產品，不代表它還不夠好，而是人們會感受到該項產品好用的時機還沒有到。很多時候，新穎或前衛的創新產品沒有受到人們的青睞，只是因為人們感知不到它的有用性，有時候不是因為產品易用性欠佳的原因，而是因為外在環境還沒有足夠的變因來刺激使用者的使用需求，這正是著名的<a href="http://en.wikipedia.org/wiki/Technology_acceptance_model">科技接受模式</a>所教導我們的觀念。</p>
<p>假設你打算花費了三個月的時間來做出一個好產品，你已經用專業的市場行銷眼光看到三個月之後將會大受歡迎的產品。於是你在工程方面投入了大量的功夫和心力，想辦法把產品做到盡善盡美。但假如你真的做出了無懈可擊的完美產品，是不是就會讓客戶認為這是有價值的好產品？答案恐怕是未必見得，因為你原先對市場的預測可能出現失誤、或是其間發生難以事先料想到時空背景的改變，使你的產品終究沒有得到客戶的認同。</p>
<p>喲哪桑說他們會每隔 1 天、3 天、1 個月、甚至是 1 年來檢查保留的比率，藉此來確認做出客戶覺得有價值的好產品。同人同意這種作法的確有助於增加產品在市場的成功，只是產品在市場上成功是因為產品做得好，這並不是客觀的事實，而是主觀的價值判斷。</p>
<p>其實產品的好壞很難客觀界定的，縱使你把產品做得好到大部分的人都愛用，也很難不讓其他的人覺得你的產品不好用或是不夠完美，尤其是在不同的時空因素下，同一個人對相同的產品常會有截然不同的評價。開發產品很難能夠做到滿足每一個人的需求，在現實因素的考量必須捨棄比較少人需要的功能時，難道是代表那些功能不好所以才會被捨棄嗎？</p>
<p>真相是捨棄不是因為它不好，而是因為多數的人<strong>現在</strong>不需要它，而且人很難預知將來會不會用到它。世界上從來不缺少比目前市場成功產品做得更完美的產品，但它們很多沒辦法成功地在市場上存活，並不是因為它們不是好產品，而是人們現在不太需要它們。同樣的道理，目前在市場上走紅的產品也不是因為它們是好產品，而是剛好符合市場上的條件；有一天這樣的條件會消失，而它們也將會被其它的產品所取代，就像它們曾經取代過的商品一樣。</p>
<p>最後喲哪桑學長說：<span style="text-decoration: underline;">要做出好產品，讓它更好。別畫唬爛、別搞政治，別搞關係，別打嘴炮</span>。同人很認同這句話，但卻也不由得想到過去的一段經驗。當時同人在一家開發資料庫資訊安全​的公司負責軟體設計及開發，那家公司的總經理常說他不想讓公司成為詐騙集團。他認為台灣軟體業的問題是<a href="http://www.lifeparty.idv.tw/blog/archives/6092">不重視把事情做好的紀律</a>，只靠業務和行銷吹噓而沒有把產品做好。</p>
<p>只是同人發現在他<a href="http://www.lifeparty.idv.tw/blog/archives/6039">主觀價值判斷上的執著</a>，無形之中產生了<a href="http://www.lifeparty.idv.tw/blog/archives/5589">組織的官僚特性</a>和<a href="http://www.lifeparty.idv.tw/blog/archives/5343">文化偏見</a>，其實他不是沒有在參觀者的面前做樣子，只是沒有意識他並沒有做到言行一致，結果讓產品一直「<a href="http://www.lifeparty.idv.tw/blog/archives/279">收尾巴</a>」收不完。這個經驗讓同人學習到了<strong>做好產品關鍵不在我們怎樣要求完美，而在於如何真的做到言行一致</strong>。</p>
<br /><div class="googlePlusOneButton"><g:plusone href="http://www.lifeparty.idv.tw/blog/archives/6624"  size="standard"   ></g:plusone></div><br />]]></content:encoded>
			<wfw:commentRss>http://www.lifeparty.idv.tw/blog/archives/6624/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>占星看婚姻和戀愛的差別</title>
		<link>http://www.lifeparty.idv.tw/blog/archives/6401</link>
		<comments>http://www.lifeparty.idv.tw/blog/archives/6401#comments</comments>
		<pubDate>Fri, 29 Jul 2011 11:24:12 +0000</pubDate>
		<dc:creator>jim yeh</dc:creator>
				<category><![CDATA[占星觀念]]></category>
		<category><![CDATA[寫作]]></category>
		<category><![CDATA[心理]]></category>
		<category><![CDATA[心靈占星學]]></category>
		<category><![CDATA[思考]]></category>
		<category><![CDATA[新時代]]></category>
		<category><![CDATA[生活感觸]]></category>

		<guid isPermaLink="false">http://www.lifeparty.idv.tw/blog/?p=6401</guid>
		<description><![CDATA[同人並不是認為一對一以外的關係不道德，而是看到在追求愛情的自由表相之下，本質上卻隱藏了無法控制本能和欲望而非真實的自由。同人想到用占星看婚姻和戀情的差別，就可以理解婚姻關係第三者的問題並不是違反道德，而是建立了對生命成長沒有意義的關係。]]></description>
			<content:encoded><![CDATA[<p>前一陣子和網友討論到第三者介入他人的婚姻關係到底有沒有錯，看到<a href="http://www.plurk.com/p/d4axtq">網友 Satans 提到「小三」不見得有錯</a>，很多時候是夫妻之間的感情出問題，而不見得可以把責任歸罪到小三身上。同人不同意這樣的觀點，因為就算外遇是因為夫妻的感情有問題，也不代表小三就有合理化的原因來介入他人的婚姻關係之中。</p>
<p>然而 Satans 以「在感情的模式裡，只要當事人認可就可以」來反駁同人的質疑，他贊成感情可以有多種模式，而不是只有一對一的關係而已。他表示兩個人能不能在一起，那是當事人們的共識，不是只能信奉一對一的模式。另外還有一位網友提到如果用在同志情感，我說的一概不適用。他說：</p>
<blockquote><p>異性戀是必須或被迫遵守法律，然而無婚姻關係，就只剩道德規範，道德是人塑造出來，從古自今，中國受儒家思想影響，才有根深諦固一對一才是忠貞的形象。(但古人也搞三妻四妾不是嗎？)(說一套做一套是中國特色之一？)</p></blockquote>
<p>以上網友們反駁同人對小三的質疑，是誤解以為我認為感情只能有一對一的模式，並且以道德的角度來否定其它感情模式的自由。其實同人並不是認為一對一以外的關係不道德，而是看到在追求愛情的自由表相之下，本質上卻隱藏了無法控制本能和欲望而非真實的自由。同人想到用占星看婚姻和戀情的差別，就可以理解婚姻關係第三者的問題並不是違反道德，而是建立了對生命成長沒有意義的關係。</p>
<h4>外遇關係的自由之辨</h4>
<p>當婚姻關係之中出現第三者，很多時候是因為夫妻雙方的感情出現了一些問題。因此，也許與其責怪小三介入他人婚姻不對，還不如去先檢討反省自己和配偶之間的關係，這才是比較有效的挽救婚姻的方法。然而，這並不意味著小三介入他人婚姻是合理的。</p>
<p>同人認為小三介入他人婚姻不合理，並不是假設感情必須是一對一的關係才是正確的，而否定感情沒有一對多或是多對多的模式。如果照 Satans 說只要得到當事人們的認可，不管是一對多或是多對多的關係都是可以被接受，那麼在婚姻關係中的一對一的感情模式中，難道不正說明了雙方關係第三者的出現是不能被認可的嗎？</p>
<p>既然如此，不管是夫妻任何一方在愛情上背棄另一方，或是小三介入破壞夫妻雙方一對一的關係，他們表現了感情上不義的行為，是不應該被合理化地看待。當然，感情是不能勉強的。一旦夫妻之間的關係出現問題，的確沒有辦法讓他們一定要遵守一對一的感情模式，但一對多或多對多的模式也不見得可以讓夫妻各自的感情都得到歸屬。</p>
<p>小三的出現可能是基於滿足夫妻任何一方或雙方愛情不能被滿足的需求，而發展出來一多對、甚至是多對多的感情模式。當得到當事人們認可的共識之下，這些感情模式的出現也許會被認為意味著當事人有自由來追求他所需要的愛。</p>
<p>不過事實上，在婚姻之外的多角戀情其實突顯了外遇者需要婚姻，只是婚姻關係不能滿足他的愛情需求，於是必須從外界來尋求其它感情來彌補。這代表在婚姻之外發展多角戀情，其實在行為上已經顯示自己是身不由己，只是以追求真愛自由的假象來自欺欺人，實際上的心理狀態是恐懼比愛還要多。第三者的恐懼通常不會比外遇者還少，因為他（她）活在一片黑暗的感情世界中，而總是看不到明天。</p>
<p>即使婚姻不見得等於愛情，但如果愛情不需要婚姻合約的束縛，何須用婚姻關係來增添在情感上的累贅呢？可見得在婚姻之中的情感並非是單純愛與不愛的取捨，和在戀情之中的單純感情有非常微妙的不同。</p>
<p>韓良露在《<a href="http://www.books.com.tw/exep/prod/booksfile.php?item=0010089277">愛情全占星</a>》提到神話故事三個重要的愛神，各自代表人類情感經驗中不同層面的愛情，了解這三個愛神的象徵，有助於人去更深刻地體會自己情感的複雜與奧妙。這三種愛神象徵，分別是莎孚（Sappho）的「性慾」、愛蘿斯（Eros）的「激情」、以及愛摩（Amor）的「親愛」。</p>
<h4>莎孚的性慾</h4>
<p>莎孚是古希臘的女詩人，她的詩可能是人類現存最古老描述情慾的詩，讓現代讀者能夠跨越時空差距，體會詩中描寫永恒的情慾經驗。韓良露指出莎孚的性是肉慾經驗，一種原始的生理本能，在受到突發的刺激，可能是一個眼神、笑聲、味道或觸覺等等而產生的。每個人誠實地面對自己深沉的慾望時，人一生中總有那麼些次（幾十次或是幾百次）突然而來，莫明其妙的慾望，但大多數人很少將這些付諸行動，我們每個人都根據自己的道德準則來掌控自己的慾望。</p>
<p>韓良露認為莎孚的慾望是火星的慾望，和金星沒有關係。她說當人突然對某人產生慾望時，根本沒有時間、也沒有機會發現你會不喜歡對方，只是導因為果以為有慾望就應該會喜歡對方。因為人會為純粹的慾望感到羞愧，因此人需要發明許多美麗的藉口來掩飾自己的慾望。因此莎孚的肉慾經驗和火星星座有關。</p>
<p>韓良露指出莎孚的慾望是超越個人的，不能從「一個特定的身體」得到滿足，因此當人與人之間的關係奠基於莎孚的慾望時，自然無法持久。莎孚的慾望是客觀的，而非主觀的，不管當事人願不願意，你的慾望就是轉向了。</p>
<h4>愛蘿斯的激情</h4>
<p>愛蘿斯是希臘神話愛神的代表，與維納斯（Venus）愛神所不同的前者的熱情非常強烈和活躍。韓良露引用史賓諾莎的名句說明愛蘿斯的激情其對象可以是任何事物。不像維納斯之柔美的愛不帶給男人威脅，愛蘿斯的愛會帶給男人威脅。愛蘿斯必須由「性」來發動激情，即使沒有真正行動也至少必須有性的想像，但愛蘿斯不像莎孚，只有性並不足夠，而是需要性的燃料來達到愛蘿斯的激情。</p>
<p>韓良露提到愛蘿斯的激情不像莎孚的性慾容易轉向，一旦對某個特定對象產生熱情，通常都會持續相當的時間。她表示有些人在換過好多情人之後，內心只會對他自己知道的人有熱情，其他的情人只是這個激情對象的代替品。然而激情的對象並不需要永遠在眼前，只需要曾在現實生活中出現過一段時間，然後激情「留住」了那個對象，並在記憶中專制的讓對象「死亡」與經歷激情的新生，因此愛蘿斯的激情常和冥王星結合在一起。</p>
<p>激情是愛情在生理和心理上的高潮，不像莎孚的性只能帶來生理的高潮，卻不能帶來心理的高潮。韓良露提到就像法國人稱呼性高潮是「小死亡」，愛蘿斯的激情讓人們經驗各種「小死亡」：和戀人靈肉合一的「小死亡」、分離的「小死亡」、相思的「小死亡」、重聚的「小死亡」。她認為本命盤金星或火星在天蠍座或落入八宮，或冥王星和月亮、金星形成相位，容易天生具備容易激情的特質。而當冥王星行運和金星產生相位或進入八宮會讓人突然經歷到激情的經驗。</p>
<p>不過，由於冥王星走得很慢，很多人在一生中都經歷不到重要的冥王星行運影響。韓良露表示有人在青春期經歷冥王星和金星的合相，或許會投射在父母身上，可能父母中有人經歷冥王星帶來的激情折磨。也可能投射到配偶身上，也有人並不直接和人經驗激情，而是轉移到權力、金錢和工作上。</p>
<p>韓良露指出對現實的人來說，激情永遠付出太多，得到太少；激情是有方向的旅程，卻很少能抵達目的地。但對於經驗過激情之旅的人而言，激情的咀咒中，有甜美的慰藉；至少它不會讓人活在愛的荒原中，也不會在純肉慾的生理發洩慾望之後，才發現靈魂無法滿足的空虛。</p>
<h4>愛摩的親愛</h4>
<p>愛摩（Amor）是羅馬的愛神，是神聖化了的愛蘿斯。愛摩的愛是無性的，是一種純淨的、神聖的、昇華的愛。韓良露提到有的人對父母、小孩、牧師、狗、貓或大自然有這種愛，一種最接近中文「親愛的」這樣的感覺。但她提醒 Amor、Dear、或「親愛的」在語言中大量重複濫用，早就失去了愛摩在神話中的象徵。別以為愛摩的親愛來得容易，我們並不像自己以為那麼地「親愛」我們聲稱親愛的對象，或許可能愛對方，但也可能愛的是對方提供的「其它事物」。</p>
<p>韓良露指出愛摩是一種純淨的愛，一定要有靈魂的參與和精神的溝通，以及亳無保留地欣賞、接納、包容對方靈魂的純淨及美麗才行。所以愛摩的最高境界通常反映在對大自然、對神的愛上。但這種神之愛並非一般世俗宗教中信徒要求神的保護、恩典、賜福，而是亳無保留的接受神性，即接受宇宙律。</p>
<p>假如配偶之間存在愛摩的親愛，代表美好卻不世俗化的關係，因為它自然解除了雙方對性的需要。韓良露提到不管是莎孚或是愛蘿斯的性，都必須有征服慾，體驗慾望的生與死。愛摩卻只有生而沒有死，只有光亮而沒有黑暗。愛摩配偶的結合也就是靈魂伴侶（Soulmate）結合來自輪迴的因果律，藉由世俗的伴侶關係，去體會宇宙的親愛與親密，因此這種伴侶關係最終一定以雙方靈性的提昇為目的。韓良露也提到當人際關係間存有愛摩的親愛，不管是父母、兄弟姐妹或朋友，靈性的提昇都將扮演重要的催化作用。</p>
<p>韓良露指出愛摩是天上之愛，落在人間自然常有其現實的限制。當愛摩以負面的維納斯方式表達時，就像我們日常生活常用的 Amor、Dear、「親愛的」，使這種純淨之愛有時變得像「虛情假意」、「造作假情」或「詞溢於情」。她認為愛摩的親愛和金星在天秤座或金星和月亮、海王星形成相位有關，金星未受尅或相位和諧代表正面的親愛；金星受尅則代表負面的親愛。</p>
<p>韓良露提到愛摩是人和人之間可以完成的最親愛的關係，莎孚結合了兩個身體，激情結合了身體和靈魂，但最終要分離，只有愛摩帶來的親愛是永恒的，也不受時空的阻絕。愛摩是永恒之愛，宗教中的涅盤、天堂就是回到愛摩之中。</p>
<h4>愛情的創造力</h4>
<p>從韓良露提到三個愛神的象徵，我們可以理解愛情的三種層面，分別是生理的性慾、心理的激情、靈性的親愛。性慾是來自人與身來存在的原始動物本能。激情則是為了尋找讓人可以激發熱情的人或事，以填補人生的缺憾。親愛則是藉由伴侶關係來體會人和宇宙的合一，藉由提昇靈性以發展圓熟的心靈。</p>
<p>愛情的三種層面可以從婚姻關係或是戀愛談感情所經驗，然而婚姻與戀愛在感情的體驗上卻是完全不同的課題。從占星的宮位安排可以理解這兩者在感情課題上的顯著差異。占星學以第五宮來代表戀愛，而以第七宮來代表婚姻，兩者宮位的不同可見占星對戀愛與婚姻並非等同視之。</p>
<p>第五宮象徵戀愛的創造力，而且它和一宮及九宮一樣是屬於生命之宮，代表愛情帶來激發生命活力的能量。它是為了讓人在他人的眼中創造自己的生命典範，盡情地揮灑生命熱力而發光發熱，因而從此走出和以往不同的生命格局。在五宮前面的一個宮位是四宮，是代表生理階段的結束之宮，象徵生理發展成熟的告一段落。因此接續在生理發展成熟之後，五宮代表的是發展成熟心理的生命階段。</p>
<p>因此，戀愛的課題在於生命的創造，戀愛的目的是為了讓我們能夠在戀人的面前做真正地自己，而不是成為戀人希望成為的自己。戀愛得以發生的關鍵在於創造，它吸引了來自不同家庭背景的對象，以創造讓雙方都能感到新鮮、以及激發熱情的新事物，並且共享創造過程的意義，使得人生變得更加不一樣。</p>
<p>就像新時代思想所提到的觀念，戀愛關係的失敗，多半是在關係建立的開始，就對戀愛抱持沒有用的期待所致。戀愛是為了讓我們在別人的面前更認清楚自己，然後真正地做自己。而非期望戀人改變來迎合我們的期待、或是改變自己來迎合戀人的期待，這些終必造成戀愛關係的失敗，當戀人不再選擇做自己，他和戀愛對象之間的關係，將會因為彼此缺乏新鮮感、或是不再激情而變得索然無味。</p>
<p>雖然戀愛可能很難不跟性扯上關係，而且實際上占星學的第八宮的性剛好是戀愛宮的基礎宮位（這或是才是以性為燃料，點燃激情的關鍵所在）。然而，戀愛所代表愛情的創造力，卻不必然來自於性的慾望，如同<a href="http://zh.wikipedia.org/wiki/%E5%8D%A1%E5%B0%94%C2%B7%E8%8D%A3%E6%A0%BC">榮格</a>認為<a href="http://en.wikipedia.org/wiki/Libido">力比多</a>的心靈能量並非如<a href="http://zh.wikipedia.org/wiki/%E5%BC%97%E6%B4%9B%E4%BE%9D%E5%BE%B7">弗洛依德</a>所認定來自性本能。</p>
<p>佛洛伊德認為靈魂基本上是由性來定義的。佛洛伊德相信性的驅動力潛藏在心靈生活的基底，而且是心靈活動的主要泉源，認為力比多是來自性的本能。相反地，榮格認為力比多不止包括特定物件的性欲，也不是透過固定物件的性執著，來釋放自己的內壓。關於心靈能量的轉化，榮格認為象徵吸收了大量的能量，並形塑心靈能量投注的方式。</p>
<p>五宮戀愛的創造力量來自於力比多的心靈能量，它的轉化吸收了言語的象徵力量而創造人們心中的世界。因此五宮愛情的創造力來自於愛的意念而非來自於對性慾的壓抑，也就是說愛情的力量並非佔有某個人或事物，而是讓彼此能量的相互交流來讓世界更美好。</p>
<h4>圓滿愛情的伴侶關係</h4>
<p>第七宮象徵婚姻的伴侶關係，相對於五宮的生命之宮，七宮是關係之宮，代表透過婚姻的對等關係來體驗愛情的美好，來達到身心和諧的狀態。五宮是心理發展成熟階段的開始，然後經驗六宮的工作，以得到社會歸屬及組織經濟基礎，接下來七宮則是在心理發展的結束之宮－八宮所代表人生轉折之前，所必須經歷的心理發展過程，使心理發展的成熟得以告一段落，以朝向下一階段的生命之宮－九宮開始心靈成長的探索。</p>
<p>從五宮看七宮，後者是前者的第三宮。這代表婚姻的關係除了夫妻雙方的相戀以外，更重要的是存在彼此之間的合約關係，也就是代表婚姻關係具有法律上的保障。當然，婚姻關係具有合約的法律效益並不表示兩人關係可以長久維持下去，而沒有法律合約保障的戀人關係，也不見得經不起考驗。因為兩人愛情關係的維持，關鍵並不在於法律或道德的約束，而在於真心的相愛。一旦有人變心，法律或道德根本不能保障或約束雙方的婚姻關係，這麼來說婚姻關係到底對雙方的愛情有何意義呢？</p>
<p>其實關於在婚姻關係的愛情，比起法律或是道德約束更重要的是對等關係的象徵意義。戀愛帶來愛情的創造力量是來自於個人心靈能量的創造，其關注的重點是個人實相的創造，來滿足愛與歸屬感的需求。婚姻則是透過互補個體的對立關係，在差異性的競爭和合作之間取得平衡與協調，其關注的重點是體驗完美的愛，無條件地包容和接納對方的缺點，如此對方也會回報相對的包容與尊重，來<a href="http://www.lifeparty.idv.tw/blog/archives/4008">滿足彼此在受人尊重的需求</a>。</p>
<p>因此，七宮代表婚姻關係的愛情體驗的是《<a href="http://zh.wikipedia.org/wiki/%E6%84%9B#.E5.9F.BA.E7.9D.A3.E6.95.99">愛的真諦</a>》－凡事相信、凡事包容、凡事盼望、凡事忍耐，愛是永不止息。婚姻的經驗讓我們體驗更為完整的愛情，學習更成熟表達我對對待「另一半」的關愛與付出。配偶之間除了需要愛戀的開始，更需要在生活上的相處經驗，也就是所謂審美觀、價值觀、以及生活觀的契合。婚姻不只代表相愛的兩人的結合，更是代表兩個家庭與雙方事業或對未來理想生涯的結合。</p>
<p>七宮代表夫妻關係正是對應榮格心靈結構的陰影，因此對比戀愛的經驗，婚姻「相愛容易相處難」只是透過他人來經驗內在的陰影，來整合更全面的自己。人沒有辦法意識到自己的陰影，因為它是無意識，是自我不能認同遭到意識排拒的自己。因此，若非經由他人的投射，我們不能意識到自己的陰影。占星五宮代表戀愛和七宮代表婚姻隱喻兩者愛情的不同，在前者的吸引是同質性產生感情上的吸引，而後者是基於互補性來相互扶持與共同成長。</p>
<p>因此<a href="http://www.lifeparty.idv.tw/blog/archives/355">以個性的差異或是用談戀愛的心態來經營婚姻，必然會使婚姻關係以失敗作終</a>。基本上，與七宮刑衝的宮位有命宮、四宮和十宮，分別代表自我個性的堅持、家族問題、以及事業的影響。和與五宮刑衝的二宮、八宮、十一宮所代表的價值觀、性慾或是意外事故、社交人際關係所代表的課題有所不同。而以七宮來看五宮，戀愛宮是婚姻關係的第十一宮，十一宮是較疏離的關係，因此以談戀愛的心態經營婚姻，將會將使夫妻之間的距離逐漸疏遠而使婚姻關係發生問題。</p>
<p>同人反對第三者介入他人婚姻關係的行為，其關鍵並不是愛情不能允許一對一以外的感情模式，而是它根本就沒有用－它們能夠體驗到的只有喜歡的事物而排拒了不喜歡的事物，然而後者卻是發展更完整個體之不可或缺的另一半，缺少了面對它的體驗，我們的人生將有所缺憾。</p>
<br /><div class="googlePlusOneButton"><g:plusone href="http://www.lifeparty.idv.tw/blog/archives/6401"  size="standard"   ></g:plusone></div><br />]]></content:encoded>
			<wfw:commentRss>http://www.lifeparty.idv.tw/blog/archives/6401/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>軟體開發團隊的官僚特性</title>
		<link>http://www.lifeparty.idv.tw/blog/archives/5589</link>
		<comments>http://www.lifeparty.idv.tw/blog/archives/5589#comments</comments>
		<pubDate>Mon, 11 Jul 2011 11:10:05 +0000</pubDate>
		<dc:creator>jim yeh</dc:creator>
				<category><![CDATA[品質文化]]></category>
		<category><![CDATA[問題解決]]></category>
		<category><![CDATA[寫作]]></category>
		<category><![CDATA[專案團隊]]></category>
		<category><![CDATA[溝通]]></category>
		<category><![CDATA[生活感觸]]></category>
		<category><![CDATA[系統思考]]></category>
		<category><![CDATA[職場]]></category>
		<category><![CDATA[閱讀]]></category>
		<category><![CDATA[領導]]></category>

		<guid isPermaLink="false">http://www.lifeparty.idv.tw/blog/?p=5589</guid>
		<description><![CDATA[在今年過農曆年前，看到以前閱讀《溫伯格的軟體管理學（第二卷）：第一級評量》所做的筆記，引發同人想要寫一篇文章探討軟體開發團隊的官僚特性。但由於工作轉換及其它寫作計劃的原因，直到現在才有時間分享我對軟體開發團隊的官僚特性之心得。]]></description>
			<content:encoded><![CDATA[<p>在今年過農曆年前，看到以前閱讀《<a href="http://www.books.com.tw/exep/prod/booksfile.php?item=0010411034">溫伯格的軟體管理學（第二卷）：第一級評量</a>》所做的筆記，引發同人想要寫一篇文章探討軟體開發團隊的官僚特性。但由於工作轉換及其它寫作計劃的原因，直到現在才有時間分享我對軟體開發團隊的官僚特性之心得。</p>
<p>溫伯格說官僚是<strong>每件事都在掌控中，但是一切全都失控了</strong>。他提到：</p>
<blockquote><p>當專案規模變得相當龐大，通常就會因為專案成員對整體狀況缺乏掌控，不了解本身工作與整個專案的相關性，而導致官僚作風出現。</p>
<p>在這種情況下，大家一定會在不知不覺中做出危害品質的事，甚至會阻礙到專案的完成。這就是官僚－人們不明究裏地在做事。</p></blockquote>
<p>要評量軟體開發組織的「官僚特性」（bureaucratic nature），溫伯格認為可以藉由有多少事情在不明究裏的情況下完成。他指出在不明究裏的情況下完成事項，占完成事項的百分比就是評量官僚的一種方式。</p>
<p>想要減少團隊的官僚特性，管理者應該要讓團隊成員充分了解專案計劃。溫伯格提醒管理者有計劃還是不夠，應該要讓參與專案的團隊成員了解計劃，並且透過傳達與溝通讓每一個人都了解計劃。他強調只有高層了解的秘密計劃（而且就連高層自己也不太清楚這些計劃），勢必會在大型專案中引發官僚之災。</p>
<p>溫伯格的觀點解釋了在軟體開發團隊常見的官僚特性。在軟體開發過程中，人們不知不覺犯下危害軟體的品質或阻礙專案的進行的錯誤，通常並不是因為計劃不夠完整，而是因為團隊成員缺乏對專案計劃的整體了解。專案成員從專案計劃知道他的任務，但卻不知道他的任務和整體專案的關係。</p>
<p>換句話說，團隊成員知道他應該做什麼、和如何做，可是卻不知道為什麼要這樣做，工作只是由上面丟下來交辦，他只是奉命行事而已。比如說：</p>
<ul>
<li>程式開發者按照系統設計規格開發程式，可是卻不知道為什麼系統要這樣設計。</li>
<li>系統設計者按照系統分析規格設計系統，可是卻不知道為什麼系統要這樣分析。</li>
<li>系統分析者按照客戶提出的需求來分析系統，可是卻不知道為什麼系統會有這個需求。</li>
<li>管理者覺得開發者沒有把事情做對，可是卻總是不早點告訴開發者什麼叫做把事情做對。</li>
</ul>
<p>為什麼團隊成員在他們不知道為什麼的時候，不先溝通把事情的來龍去脈弄清楚才開始執行任務呢？可能是團隊成員的能力只能知其然，而不能知其所以然；也有可能是因為團隊成員的態度並不想多花心力去了解事情的根源。同人認為不管是成員能力或態度的因素，管理者都應該要為開發團隊的官僚特性負起最大的責任。</p>
<p>因為<strong>軟體開發團隊的官僚特性本質上是品質文化的問題，基本上和管理者的態度及核心價值觀有關</strong>。如果程式的開發者不能了解程式和設計、需求、乃至於其所要解決的問題，就很難確定他能夠在正確的問題方向上思考，以發展在正確問題下的有效解決方案。也許他做不到的原因是因為尚未培養面對問題獨立思考的技能和習慣，但如果管理者不能在團隊中建立<a href="http://www.lifeparty.idv.tw/blog/archives/128">共享語意庫</a>或增進<a href="http://www.lifeparty.idv.tw/blog/?s=%E6%B7%B1%E5%BA%A6%E5%8C%AF%E8%AB%87">共享意義</a>暢通的管道，要求開發者要有能力知其所以然只是緣木求魚罷了。</p>
<p>從另一種角度來看，團隊成員在態度上不想多花心力去了解事情的根源之真相，很可能是管理者在態度上並沒有鼔勵團隊成員多多參與討論、以及提供成員表達個人意見的管道。即使管理者在言語上聲稱他們願意接受不同的建言，但實際上面對團隊成員提出不同意見的質疑，卻是表現出不能接納建言的行為。慢慢地，團隊當中自然愈來愈沒有人願意表達他們的異議，成員傾向聽命辦事來規避把事情攬在自己身上，於是讓這樣的心態更加深團隊的官僚特性。</p>
<p>當然，管理者因為態度而加深開發團隊的官僚特性，最後必然會「個人造業個人擔」。最後團隊有想法、有抱負的「年輕人」會愈來愈少，只知道制度和規範而忽略思考創新的「老人」愈來愈多；這裡指的年輕人和老人不是基於年齡，而是基於成員面對問題的心態。當團隊的大部份成員都已經心態老化，思考僵化是軟體品質不良的根本原因，不論管理者加深團隊的官僚特性是有意或無意，他都必須為此承擔相對的代價。</p>
<p>「年輕人」比「老人」對事情的「理所當然」更不以為然，因此前者可以透過思考和創意來創造更多的可能性，這正是後者限於官僚特性所看不到的世界。</p>
<p>同人記得聽過某個長官曾經對下屬提的意見表示：「不要只提出問題，要有 solution！」不過接下來聽到另人激賞的反駁：「如果要有 solution 才​能提問題，那誰敢提呀？」表現對官僚特性的反抗，當然反抗的結束是最後反駁者終於離開那位長官的團隊。</p>
<p>同人不知道那位長官心中到底有沒有意識到「如果這麼快就可以有 solution，那根本就不成問題」的真相，但我知道他的管理風格無法適應會對「理所當然」質疑的思考者，他只能「管理」聽命辦事的工作者，也許只有加深團隊的官僚特性才能減輕他對管理彈性不足所反應的焦慮吧！</p>
<br /><div class="googlePlusOneButton"><g:plusone href="http://www.lifeparty.idv.tw/blog/archives/5589"  size="standard"   ></g:plusone></div><br />]]></content:encoded>
			<wfw:commentRss>http://www.lifeparty.idv.tw/blog/archives/5589/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>不要把 TDD 和做測試混為一談</title>
		<link>http://www.lifeparty.idv.tw/blog/archives/6126</link>
		<comments>http://www.lifeparty.idv.tw/blog/archives/6126#comments</comments>
		<pubDate>Tue, 05 Jul 2011 11:22:29 +0000</pubDate>
		<dc:creator>jim yeh</dc:creator>
				<category><![CDATA[利害關係人]]></category>
		<category><![CDATA[品質文化]]></category>
		<category><![CDATA[問題解決]]></category>
		<category><![CDATA[專案團隊]]></category>
		<category><![CDATA[思考]]></category>
		<category><![CDATA[溝通]]></category>
		<category><![CDATA[生活感觸]]></category>
		<category><![CDATA[職場]]></category>
		<category><![CDATA[開發流程]]></category>

		<guid isPermaLink="false">http://www.lifeparty.idv.tw/blog/?p=6126</guid>
		<description><![CDATA[最近讀到一篇文章〈不要盲目的 BDD / TDD，我對寫測試的看法〉，看完作者 XDite 反對不論如何都要導入 TDD 的理由，讓同人想提出我對這篇文章的看法。]]></description>
			<content:encoded><![CDATA[<p>最近讀到一篇文章〈<a href="http://blog.xdite.net/?p=2478">不要盲目的 BDD / TDD，我對寫測試的看法</a>〉，看完作者 <a href="http://blog.xdite.net/">XDite</a> 反對不論如何都要導入 <a href="http://en.wikipedia.org/wiki/Test-driven_development">TDD</a> 的理由，讓同人想提出我對這篇文章的看法。</p>
<p>XDite 在文章中前半段，提到他對做測試的看法：</p>
<blockquote><p>我個人的看法是認為在大多數的情形下，你需要對你的「軟體」寫 "Test"，而且是要先寫 "Test" 再行撰寫程式，也就是  Test-Driven Development。因為程式碼會逐漸龐雜，沒有人可以 write code without bug，也不可能每次都有辦法用手測出來，加上有時候寫錯程式時的損失不是事後修理就有辦法彌補的，所以我們必須要寫 Test  Case，及早抓出問題。</p></blockquote>
<p>XDite 說這是所謂寫<a href="http://en.wikipedia.org/wiki/Test_case">測試</a>的重要性。但他強調這卻不是程式設計師「可以」不合時宜的盲目在「任何類型」的專案強行導入 <a href="http://en.wikipedia.org/wiki/Behavior_driven_development">BDD</a> / TDD 的藉口。XDite 指出寫測試程式來確保程式正確性的解決方案，存在著額外多付成本的代價，亦即：</p>
<ol>
<li>「 寫測試 + 寫程式」 所花的時間，大概是純寫程式的 1.5 -2 倍時間。</li>
<li>「會寫 Test」、「正確的測到該測的部份」、「寫出好的測試」，都需要學習時間以及功力。</li>
</ol>
<p>於是 XDite 提出了四點原因，用來當成反對盲目 BDD/TDD 的理由。即使是程式設計師因為厭倦了維護在之前的專案後期的維護，因為修改程式碼而一再發生的問題（無論是小問題，大問題），而決定在下個專案，無論什麼專案類型都要導入 TDD / BDD，XDite 認為這在他眼中認為這是相當不正確的事情。</p>
<blockquote><p>1. 每個專案類型不盡相同，有的是要求高正確性且牽扯到金流問題且開發時間充裕。有的純粹只是 event，用過極丟。有的是幫人外包，只要求規格正確，開發時間不寬裕。有些則是混合型。有些部分的程式碼則是相當難以寫測試（如 View），C/P 值極低。應該考慮每個專案的類型甚至是 component 去決定哪部分該嚴厲的規定寫測試，而哪些部分可有可無。</p>
<p>2. Startup 前期應不應該導入 TDD/BDD ? 我認為不應該。為什麼，很多人都認為 TDD / BDD 是為了確保「程式的正確性」，所以無論如何我們都應該執行。卻忽略了 Startup 的成功要素是「快速驗證你的 Idea 的正確性」、「快速應付市場變化調整的速度」、「在市場廝殺中節省成本存活下來」。</p>
<p>3. 寫測試只是為了要能自動驗證「程式的正確性」、降低「程式出錯的機率」，但團隊合作開發程式最重要的是團隊中的「溝通」，大家對 function 和架構要有一定程度以上的理解，共同撰寫程式要有一定程度以上的 convention。變更任何重大架構（如 core function, db schema, 底層設計前）都要提醒大家。</p>
<p>如果每個人都只寫自己的，然後想改什麼東西照自己心情，沒有人想舉手之勞通知大家、跟隊友溝通。坦白說，那寫測試有個屁用，可能只是不會爆 production code，development 拉下來還是爛光光，還是要修到死。</p>
<p>完全不溝通、不制定規範，卻期待寫測試能夠解決一切，這樣的想法不是很奇怪嗎？</p>
<p>4. 無論如何，就算寫了再完美的測試，再完美的程式碼。程式還是可能在你完全預期不到的狀況爆掉，所以應該做的是要接受無論如何就是要修 bug 的這件事，然後想辦法把修 bug 的成本儘量壓低，也把因為 bug 會產生的損失也儘量壓低。</p>
<p>不要期待測試是萬靈丹。否則期待越大，失望也大。</p></blockquote>
<h4>到底是評論 TDD、還是做測試？</h4>
<p>同人覺得 XDite 這篇文章的論點令人混淆；他到底是在評論盲目導入 TDD 的行為、還是在探討開發者該不該多花時間寫測試程式，以確保「程式的正確性」？這兩者完全是不能相提並論的事情，同人很不能理解在前面提到寫測試程式來確保「程式的正確性」需要花更大的代價，而下一段就拿寫測試程式必然會忽略其它開發活動（如溝通、修正程式 <a href="http://en.wikipedia.org/wiki/Computer_bug">bug</a> 等活動）來否定 TDD/BDD 的價值。</p>
<p>難道 XDite 以為 TDD 就只是在做確保「程式的正確性」之測試而已嗎？假如 XDite 真的是這樣認為，那麼顯然他把 TDD 誤解成是在<a href="http://en.wikipedia.org/wiki/Software_testing">做測試</a>。不過，對於同人在文章後面留言提出的質疑，XDite 回應否定他把 TDD 誤解成寫測試，而是不喜歡一些沒有把 TDD 搞清楚的人，強行要把「TDD」和「測試」混在一起，綁在一起要求無論如何都要「TDD」。他提出了一種典型把測試跟 TDD 混淆綁在一起的狀況，是遇到下面這種混蛋邏輯：</p>
<blockquote><p>因為程式會爆炸，或者是以後改來改去又會暴很麻煩 =&gt; 所以我們需要寫測試 =&gt; 既然要寫測試，也許我們不應該事後補寫 Test Case，而是應該來試著 TDD。</p></blockquote>
<p>另外，XDite 還提到理想狀況開發者可以用 TDD 來開發產品，先寫測試去制定出規格，然後寫出實際程式通過測試，達到 <a href="http://en.wikipedia.org/wiki/System_design">System Design</a>。接著藉由不斷的寫新測試、新規格，然後寫出更多的程式，邊修邊測到 boundary。但現實狀況是，就算是熟悉 TDD 的開發者，他卻不一定是「<a href="http://en.wikipedia.org/wiki/Software_specification">規格</a>」、「<a href="http://en.wikipedia.org/wiki/Software_design">設計</a>」的主導者。</p>
<p>XDite 說在這樣的「現實狀況」，很多時候， Team 裡面有開發者不能強迫導入 TDD 的環節。強行推動只是互相絆倒和拖垮彼此的時程。XDite 認為 TDD 只在某種「單純」（專案成員素質接近一致，沒有 highly dynamic factor，目標單純）的專案、環境、Component 下適用。</p>
<p>雖然 XDite 對他的觀點，似乎並沒有留下和同人繼續討論的空間；我發現我後來的留言被當成 spam 處理。同人猜想也許他的文章說歡迎指教，但我的留言讓他感到威脅、或是覺得再繼續討論壓力太大，於是想中止和我就這個議題繼續討論。同人不想責怪他對我留言的反應，即使他這樣做只是要表達內心情緒的不滿，但我仍然不會停止對 TDD 的這個討論主題的思辨，並且會透過網誌來表達我的觀點。</p>
<h4>評論 XDite 的四點理由</h4>
<p>XDite 提到他不喜歡把「測試」和「TDD」綁在一起的混蛋邏輯，但它反對不管怎樣都要導入 TDD/BDD 的原因，卻又以寫測試案例的「極端」現象來反駁 TDD 的價值，顯得不合邏輯。</p>
<p>在 XDite 寫的四點原因中，除了第二點有明白地表達不該在 startup 前期導入 TDD 之外，其它三點看起來都好像是在批評寫測試程式的問題（還不論是不是先寫測試程式）。因此，這樣看來就很令同人費解；如果真如 XDite 所說的他不喜歡人們把測試和 TDD 綁在一起，怎麼會把寫測試程式出的問題都算在盲目導入 TDD/BDD 的頭上？如果連自己在談 TDD 的時候，都會和寫測試程式的問題牽扯不清，那麼又怎麼能責怪別人把「測試」和「TDD」綁在一起呢？</p>
<p>同人認為在 XDite 所提到的四點原因，它們並非錯誤，而是並沒辦法當作反對不管如何都要導入 TDD/BDD 的原因。雖然在第一點原因中 XDite 並沒有說錯，有些程式像是使用者界面程式的測試程式就很難寫，因此的確不大適合強行對他們進行 TDD。然而，當遇到這種情況的時候，使用者還是可以選擇用 Mock Object 把那些沒辦法寫測試程式的物件區隔起來，然後針對最多部分可測試具有演算邏輯的程式來進行 TDD。</p>
<p>因此，使用者界面程式沒辦法建構 TDD 的測試程式對於 TDD 而言，並不是什麼太大的問題。因為基本上 TDD 不是用來當做測試的工具，而是用來設計可以驗證符合使用者真實需要的工具。所以開發者只要針對可測試、或該測試的部分建構測試案例就夠了。TDD 的目的是要確認花費最小的努力來滿足使用者的需求，測試案例所要求的不是全面的完整，而只是確認達到剛好達到滿足需求的邊界，這將會促使開發者先以界面的思維來整合系統各要件。對 TDD 測試案例比較重要的問題，是如何設計可測元件與非可測模組之間的界面。</p>
<p>至於 XDite 提到對於某些程式沒有必要寫 TDD 的測試程式，同人倒會很好奇有什麼客觀標準、或是有誰可以決定什麼程式沒有建構 TDD 測試案例的必要？在同人導入 TDD 的經驗中，就曾經有開發者要求 Business Object 不要寫 TDD 的測試案例，當時他們的理由是它們沒有什麼太複雜的邏輯、而且不大容易會變動，所以應該不需要為它們建構 TDD 的測試程式。</p>
<p>然而，事實證明，接受開發者這個要求的決定，是整個系統發生苦難的開始。因為所有的問題都從 Business Object 的瑕疵開始引爆，直到把 Business Object 也納入 TDD 測試案例的範圍，系統程式的品質才能達到令人接受的水準。</p>
<p>再來，對於 XDite 唯一有討論到導入 TDD 的第二點，他認為 startup 前期不應該導入 TDD，因為 startup 的成功要素是「快速驗證你的 Idea 的正確性」、「快速應付市場變化調整的速度」、「在市場廝殺中節省成本存活下來」。然而，同人對此卻認為恰好相反，TDD 正是「快速驗證你的 Idea 的正確性」、「快速應付市場變化調整的速度」、「在市場廝殺中節省成本存活下來」的利器。</p>
<p>為什麼？不用 TDD，人們多半傾向會以自己所相信的基本假設來解答問題，也就是以自己的經驗或熟悉的事物，從核心出發來發展解決方案，以期待把事情做正確。在這種情境下，人們通常會想得太多，而容易有過度設計（over engineering）的傾向，而 TDD 則可以讓人回歸到從問題來決定系統的邊界，再以最符合經濟效益的方式來解決問題。所以自然能夠以最省時及省力的方式來做正確的事情，更可以在市場上獲得致勝關鍵。</p>
<p>XDite 說他不同意「快速驗證你的 Idea 的正確性」、「快速應付市場變化調整的速度」、「在市場廝殺中節省成本存活下來」，是「對  TDD 再適合不過」。但同人很清楚這「對於熟悉 TDD 的開發者而言」是很自然的，顯然 XDite  是忽略了我認為這句話成立的前提，在於開發者是否能熟悉使用 TDD 的節奏。</p>
<p>如果開發者熟悉 TDD  的節奏，當他沒辦法寫出測試程式的時候，代表他對系統所要解決的具體問題還不夠清楚。為了要弄清楚他必須更清楚去溝通，而且 TDD  的習慣會促使他傾向以使用者的情境去溝通，而不是拿功能要使用者告訴他該做什麼。只有在開發者瞭解使用者的情境之後，開發者才能具體而正確地寫出驗證程式的測試案例，這說明<strong>在 TDD 寫的測試案例不是做測試而是在做設計，而且不可能因為寫 TDD 的測試案例而讓開發者不做溝通</strong>。</p>
<p>所以 XDite 提出的第三點和第四點原因，或許對於做測試是可能成立，但在 TDD 的情況下卻是可能性很低。因為除了建構 TDD 的測試案例需要了解使用者情境更需要溝通之外，TDD 的測試案例本身就是有用的溝通工具。TDD 的測試案例是能夠經過驗證的具體規格、同時它也是相關元件、API、或是模組的範例程式。</p>
<p>當然 TDD 更不會有太要求測試程式的完美，而忽略修正 bug 的問題，因為 TDD 的測試案例並不要求完美，而只是夠用就好。而且 TDD 在實際上可以用較低的成本來修正 bug，因為它能夠自動發現錯誤，再加上重構能夠逐漸改善程式碼的品質，TDD 沒辦法確保程式一定不會出現錯誤，但它總是能夠以較低的成本得到較高品質的程式碼。</p>
<h4>TDD 必須很「單純」？</h4>
<p>XDite 說 TDD 只在某種「單純」（專案成員素質接近一致，沒有 highly dynamic factor，目標單純）的專案、環境、元件下適用。但在同人導入 TDD 的成功經驗中，很不巧就有專案、環境、元件不單純的例子。</p>
<p>在一個國內知名金控公司的銀行外匯系統建置專案，表面上專案的目的是為了建置新一代的外匯系統，而不想受制於舊有系統和廠商的牽制，但實際上客戶高層的想望是要架構能夠整合機構其它系統的基礎建設平台。然而，當詢問客戶高層對系統目標的意見時，他們給的回答竟是「把系統做到令客戶咋舌」這種有說等於沒說的答案。</p>
<p>專案的成員並非來自開發組織的單一部門，而是從各個組織挑選各種經驗和背景的人，雖然有專業能力資深的人，但也有對相關技術不熟悉的成員。可以想見，在專業、技術、能力、背景如此懸殊的情況下，因為「人的問題」而發生團隊衝突是很難避免的，這個專案的團隊衝突的課題，正好提供我<a href="http://ndltd.ncl.edu.tw/cgi-bin/gs32/gsweb.cgi/login?o=dnclcdr&#038;s=id=%22095NTUS5396084%22.&#038;searchmode=basic">碩士論文</a>的研究動機。</p>
<p>當時開發團隊過去沒有接觸過相關問題領域的經驗（事實上是客戶指定不希望找對有金融經驗的人來開發，公司沒有開發過相關領域的專案，而有不錯的系統建置專案，才是客戶會選擇我們的主要原因）、開發環境也是用開發團隊過去完全沒有經驗的技術。</p>
<p>客戶指名這個專案要使用 <a href="http://en.wikipedia.org/wiki/Service-oriented_architecture">SOA</a> 架構，由前端 <a href="http://en.wikipedia.org/wiki/JavaServer_Faces">JSF</a> 以 <a href="http://en.wikipedia.org/wiki/Webservice">Web service</a> 呼叫到 <a href="http://en.wikipedia.org/wiki/Application_service">Application Service</a>，呼叫後端直接存取 <a href="http://en.wikipedia.org/wiki/POJO">POJOs</a> 或是傳送訊息的服務、而中間物件的傳遞則透過 <a href="http://en.wikipedia.org/wiki/XStream">XStream</a> 的序列化以 <a href="http://en.wikipedia.org/wiki/JAX-RPC">JAX-RPC</a> 進行遠端傳送、至於元件包括軟體架構也都是從無到有按照系統需求逐漸演化成型。</p>
<p>專案團隊大部分的人都沒做過 TDD，加上這麼多「高度動態的因素」，而導入 TDD 竟然能夠成功，是因為我們運氣好嗎？這麼說必須忽略開發組織守舊勢力對新方法論、架構和技術的反撲，否則就很難解釋公司總經理的質疑和反對。實際的情況是我們不是運氣好，而是用對的方法讓我們做好準備。當公司高層開始質疑的時候，我們早就已經透過 TDD 快速驗證我們的方法沒問題，而讓總經理無法否決我們的設計成果。這讓人目睹 TDD 的真正價值所在，不是確認「程式的正確性」，而是讓人有勇氣並保持簡單的節奏。</p>
<p>同人認為 TDD 的成功並不在 TDD 自動確認「程式的正確性」，而在於TDD 讓人有勇氣把事情做好，讓人遵循良好解決問題的節奏和紀律。那就是：1.確認問題；2.依照問題情境，發展用來驗證方案的標準；3.設計方案並執行驗證，以達符合驗證標準；4.視組織需要改善方案，再次執行驗證以確認符合標準。</p>
<p>依照這樣的節奏和紀律，可以讓人在確認方案做正確之前，已經驗證方案是用來解決正確問題，以避免過度設計和設計不足的兩難。這正是傳統方法很難避免的問題；即使開發者擁有熟練的開發技術，但少了在事情做對之前先做正確事情的紀律，品質問題正是因此而叢生。</p>
<h4>現實的真相</h4>
<p>XDite 用「理想狀況」來反駁用 TDD 來瞄準、射擊、修正後再射擊的觀念，他說很多時候， Team 裡面有開發者不能強迫導入 TDD 的環節，強行推動只是互相絆倒和拖垮彼此的時程，這是所謂的「現實狀況」。這麼說似乎是意味了 XP 敏捷方法的 TDD 實務無法在「現實狀況」實行，而是「理想狀況」。這種說法對同人其實並不陌生，就像我在〈<a href="http://www.lifeparty.idv.tw/blog/archives/163">羅馬不是一天造成的</a>〉這篇文章所提到的情形：</p>
<blockquote><p>同人偶爾會與 X 君分享我的工作心得，他很羡慕我能夠堅持設計的理想，遵循好的設計原則及開發方法發展出軟體架構，像他就沒有這樣的機會。而和同學分享我的工作成果時，他則認為我堅持設計理念可以成功，是因為我們公司有足夠的資源可以讓我們玩，換成是小公司，就不會有這樣的成功條件。</p></blockquote>
<p>其實同人在那篇文章所提到的概念、架構和技術的驗證，所用的方法正是 TDD。但同人分享成功經驗看到人們的反應卻發現，除了羡慕和佩服之外，多半是認為我剛好遇到足夠的條件來支持我實踐理想，而他們的「現實狀況」一定不允許他們這樣做。</p>
<p>假如真的是「現實狀況」不允許開發者導入 TDD，那麼面對開發出來的軟體品質不彰，他們採取了什麼行動來面對現實呢？以同人在一家開發軟體產品的 startup 公司看到的「現實狀況」來看，他們只是試著更努力而辛苦地把過去的工作做得更好，可是彷彿都一直不能如願。</p>
<p>同人在那家公司分享過我的 TDD 的經驗，RD 經理認為或許應該要做 TDD，可是因為使用資料庫的關係，會讓 TDD 很難做到或是做了沒有太大的效益。同人並不太瞭解為什麼他會有這種顧慮，因為按照我過去的經驗，資料庫的部分可以用 Mock Object 或是 Hash Map 版本的實作來區隔開來，而且這樣做有優化設計的好處。不過，同人不便公開質疑主管對 TDD 的顧慮，而是選擇尊重他在「現實狀況」下的決定；等到適當的時機再導入 TDD，除了眼下的問題需要被克服之外，還要讓開發者們的步調都能一致。</p>
<p>直到同人離開那家公司之前，TDD 都是一直被人們掛在嘴巴上說，但從來未曾真正去做。然而，隨著需求愈來愈多，程式碼也愈來愈複雜。這時候，關於軟體品質愈來愈殷切的議題便是元件很難被獨立測試，而是必須整塊合在一起才能測試，但這在除錯上很沒有效率。於是各個元件要獨立測試變成一項非常重要的需求，但滿足此項需求最大的問題便是軟體架構需要動大刀，而更緊急的嚴重問題便是有一大堆在客戶端的 P1 和 P2 的 bug 需要解決。</p>
<p>於是在龐大的時程和品質壓力下，常讓 RD 和 QA 沒辦法在時限內產出符合品質要求的軟體。我們用的方法，就是一次又一次的讓 RD 以<a href="http://en.wikipedia.org/wiki/BDUF">大規模前置設計</a>（BDUF），然後等程式開發完成之後再 handover 給 QA。雖然表面上公司採用敏捷的開發流程，每天在固定時間召開 <a href="http://en.wikipedia.org/wiki/Stand-up_meeting">Daily Stand-Up Meeting</a>，但是看起來專案管理者的腦袋並沒有換成敏捷的思維，仍然是期待以更精確的預測來改善專案的進展，即使是他們對專案狀況的預估從來沒有準確過。</p>
<p>在這種「現實狀況」下，雖然同人已經提醒 <a href="http://en.wikipedia.org/wiki/Scrum_%28development%29">Scrum</a> 偏重管理面而非工程面，但由於 RD 經理對 TDD 仍然有疑慮而不敢貿然採用它來提昇程式的品質。整個開發團隊只是一遍又一遍地用和昨天用過的方法，來試圖解決今天相同的問題，但我發現專案管理者好像不合邏輯地希望得到不一樣的結果。它正符合愛因斯坦對精神錯亂所下的定義：</p>
<blockquote><p>一遍又一遍做同樣的事，卻期待不同的結果。</p></blockquote>
<p>同人看到專案管理者對「現實狀況」的理解是，因為開發者在事前（不用心而）想得不夠多，所以不能在一開始就把事情做對，而導致軟體運行發生錯誤。但同人認為「現實狀況」的真相卻是，關鍵在於開發者沒有辦法做正確的事情，在很多時候設想了太多無謂的問題，而把心力分散在處理瑣碎的事情，而無法專注在關鍵問題上思考。</p>
<p>這是因為無法快速驗證方案對解決問題的效果，往往在開發者花費大量心力脫離「<a href="http://zh.wikipedia.org/zh-tw/%E4%BA%BA%E6%9C%88%E7%A5%9E%E8%AF%9D#.E7.84.A6.E6.B2.B9.E5.9D.91">焦油坑</a>」之後，才發現真實情況有很多地方是無先無法預料到的。換句話說，這不是開發者做的東西不對或是不好，而是面對適應變化，沒有把握「動作要快、行動要小」<sup>[<a href="http://www.lifeparty.idv.tw/blog/archives/6126#footnote_0_6126" id="identifier_0_6126" class="footnote-link footnote-identifier-link" title="曾昭屏譯（2006年），《溫伯格的系統管理學：系統化思考（第一卷）》，經濟新潮社。">1</a>]</sup>的原則。</p>
<p>當然在「現實狀況」下，導入 TDD 的實務不見得真的能夠有效地解決問題，對於任何一種開發方法論，我們都不應該盲目導入，而是要弄清楚它的適用範圍和限制，TDD 當然也不例子。然而，對於把 TDD 和做測試混為一談，然後藉此推測團隊中「一定」有 TDD 不能強迫導入的環節，強制推行只會互相絆倒和拖垮彼此時程，同人認為這是扭曲 TDD 當成做測試的繆誤。</p>
<p>使用 TDD 來開發軟體，開發者實際花費在測試案例的時間並不會很長。因為程式開發者不可能只寫程式而不驗證自己的程式碼，否則無法確認程式符合規格，就不能認定他已經寫完程式了。既然驗證程式碼是他的責任，那麼測試先行只是確認程式碼符合規格的一種方式，這樣只是把後面應該執行的工作先做好，並不會增加開發者額外的工作量。</p>
<p>因此建構 TDD 的測試案例並不需要額外的工作量、也不大可能會因為執迷於測試而沒有花時間溝通共通架構、或是程式的 <a href="http://en.wikipedia.org/wiki/Debug">debug</a> 時間。又能節省開發者因為想太多而多花費過度設計的時間，而且可以支持驗證程式的重構來加強程式的結構，不會因為增加功能而影響程式碼的品質。</p>
<p>TDD 在開發程式之前先寫測試案例的用意，並不是為了及早自動抓出問題。雖然這通常是採用 TDD 能夠產生的附加價值，但 TDD 先寫測試程式的精神是為了驗證未來方案能夠符合需求，以確認方案是在正確的命題方向上發展。開發者發展解決方案，每前進一小步，都能夠知道這一步離他的目標更接近或是遠離，這讓他可以馬上採取行動來調整方向以減少偏差。於是開發者可以做到真正的面對現實，這正是掌握適應改變行動要快、動作要小的原則。</p>
<h4>不理究理者的未嘗知義</h4>
<p>採用 TDD 來開發軟體，並不能做到確保程式的正確性、或是降低程式出錯的機率。因為要做到這個目的你就必須「預測」程式會發生問題的一切可能性，並且預先把它們都放到測試案例中，才有可能達到這些目的。然而，事先做預測已經違反了敏捷開發的基本原則，也違反了 TDD 的基本精神，認為 TDD 的目的是為了確保程式的正確性、或是降低程式出錯的機率而把它和做測試混為一談，這只是不明究理的人未嘗知義的偏見。</p>
<p>就像在網路社群中，<a href="http://www.artima.com/weblogs/viewpost.jsp?thread=216434">James O. Coplien 以「宗教信仰」形容 TDD 的迷思</a>算是最典型的代表，它以 TDD 不可能達到測試良好的涵蓋率來批評它的效率不如傳統的軟體工程方法。同人曾經<a href="http://www.lifeparty.idv.tw/blog/archives/266">評論過這種觀點的繆誤</a>：</p>
<blockquote><p>品質的問題並不是測試效率太低；而是開始測試的時間拖得太久，使得分析設計階段的缺陷不斷地擴散而使開發人員窮於應付。例如開發者在設計的過程中有沒有去思考設計驗證的問題，還是把這個責任推給後續的品管作業，例如 code inspection，或是各種形式的審查作業？</p>
<p>這個答案無關乎方法論本身的優劣，而是關乎開發者面對問題的態度，這對品質有著直接而深遠的影響。沒錯，我們需要專注於思考，但思考的重點並不在用那一種檢驗方式比較有效率，因為那樣我們將會落入品質是檢驗出來的迷惘當中。而是應該思考，對這個問題為什麼我會這樣設計？我如何驗證它是可行的？有沒有可能它會無法解決問題或造成其它我沒有想到的問題？</p></blockquote>
<p>把做測試和 TDD 混為一談的觀點，忽略了 TDD 的價值不在檢驗程式的正確性，而是找出足以解決問題的系統邊界的設計過程、以及面對目標採用有效的節奏把事情做好。對於 TDD 而言，測試不是用來確認程式沒有錯誤的目的，而是定義系統邊界的手段與過程，因為品質的關鍵不在於確認沒有錯誤的程式，而是從程式接口之間發現軟體自然演化的脈絡；學習庖丁解牛的精神，以游刃有餘的技法來體會軟體開發之道。</p>
<p>至於 XDite 在意以「混蛋邏輯」把 TDD 和測試綁在一起，同人覺得根本就是沒有必要地在鑽牛角尖。當程式設計者說他想要寫測試程式來確認程式的品質，並不見得他真的是把測試和 TDD 綁在一起；而且就算是他真的把測試和 TDD 綁在一起，同人也認為無傷大雅。有時候，管理者不見得會瞭解程式開發者所表達 TDD 的正確的觀念，所以開發者必須學會用不太精確但表達到重點的說法對管理者提出需求。</p>
<p>這也就是說，對於程式設計者而言，他所需要的是擁有能夠提昇他程式品質的方案，而 TDD 是他想要可能可以符合需要的候選方案之一。提出測試的附加價值是讓管理者比較能夠接受的說法，當然程式開發者也有可能真的把測試和 TDD 綁在一起，但即使這樣也沒有關係。因為當他實際採用 TDD 開發程式後會發現程式品質的提昇不是測試，而是在<a href="http://en.wikipedia.org/wiki/Edge_of_chaos">系統邊界附近</a>發生<a href="http://en.wikipedia.org/wiki/Self-organization">自我組織</a>的演化過程。</p>
<p>很多時候，我們真的沒辦法期待人們觀念正確才開始動手執行，因為那樣等於你什麼都不用做，而且軟體開發的重點不是理論怎麼說，而是實務上怎麼做，程式開發者從實務上的執行才能真正瞭解，TDD 不能跟做測試混為一談。</p>
<br /><div class="googlePlusOneButton"><g:plusone href="http://www.lifeparty.idv.tw/blog/archives/6126"  size="standard"   ></g:plusone></div><br />附註
&nbsp;<hr/><ol class="footnotes"><li id="footnote_0_6126" class="footnote">曾昭屏譯（2006年），《<a href="http://www.books.com.tw/exep/prod/booksfile.php?item=0010341309">溫伯格的系統管理學：系統化思考（第一卷）</a>》，經濟新潮社。</li></ol>]]></content:encoded>
			<wfw:commentRss>http://www.lifeparty.idv.tw/blog/archives/6126/feed</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>從公共建設的系統失常看系統開發的複雜性</title>
		<link>http://www.lifeparty.idv.tw/blog/archives/6092</link>
		<comments>http://www.lifeparty.idv.tw/blog/archives/6092#comments</comments>
		<pubDate>Fri, 24 Jun 2011 05:31:29 +0000</pubDate>
		<dc:creator>jim yeh</dc:creator>
				<category><![CDATA[CNet/ZDNet]]></category>
		<category><![CDATA[利害關係人]]></category>
		<category><![CDATA[問題解決]]></category>
		<category><![CDATA[寫作]]></category>
		<category><![CDATA[專案監控]]></category>
		<category><![CDATA[思考]]></category>
		<category><![CDATA[溝通]]></category>
		<category><![CDATA[生活感觸]]></category>
		<category><![CDATA[職場]]></category>
		<category><![CDATA[開發流程]]></category>

		<guid isPermaLink="false">http://www.lifeparty.idv.tw/blog/?p=6092</guid>
		<description><![CDATA[要認識系統開發的複雜性，這並不是一件很容易的事。不過，忽略它會讓我們和湊熱鬧的外行人一樣，從他人系統失敗的經驗中只能看得到表相；以為這只是犯了離譜的技術或方法論的錯誤。]]></description>
			<content:encoded><![CDATA[<p>談到系統開發，很多人都不反對它具有複雜性，至少不會認為它是很容易的一件事。然而，當聽到公共建設的系統失常的消息之後，人們似乎又會忘了系統開發存在的複雜性。我們經常會看到許多相關的評論，認為系統會發生錯誤是因為方法或是技術的問題，卻甚少探討有關系統開發的複雜性問題。</p>
<p>當然，系統發生錯誤的原因，也許真的很可能和方法或技術有關。但是否所謂的方法或是技術，就是一般對系統發生錯誤的評論中經常提到的方法或技術；不是開發者的技術觀念有問題，就是沒有遵照正確的流程及方法來做事？筆者覺得這樣的假設似乎把系統開發看的太容易了。</p>
<p>如果系統失敗的真相，真的是技術觀念、流程、或方法論的問題，那麼只要在系統開發過程中，加強這些因素就可以確保系統開發的成功。但從筆者系統開發的經驗顯示，這些因素雖然很重要，但它們並不是系統開發能得以成功的關鍵，而是要等到逐漸適應系統開發的複雜性之後，才能逐漸地改善增加系統成功的機會。</p>
<p>要認識系統開發的複雜性，這並不是一件很容易的事。不過，忽略它會讓我們和湊熱鬧的外行人一樣，從他人系統失敗的經驗中只能看得到表相；以為這只是犯了離譜的技術或方法論的錯誤。我們應該學習像內行人一樣，<a href="http://www.lifeparty.idv.tw/blog/archives/58">從系統失敗的教訓中看到成功的門道</a>，了解到系統開發複雜性本質的真相；不天真地以為技術或方法論可以解決系統失敗，而是深入省思系統開發的複雜性。基於筆者過去對系統失常的觀察及體會，想以這篇文章從公共建設的系統失常看系統開發的複雜性。</p>
<h4>從文湖線的系統品質談起</h4>
<p>自從捷運文湖線通車之後，筆者就常聽到有人對它的系統品質提出批評的意見。筆者記得以前在上班的途中，在路上遇到同事就曾和他討論到捷運文湖線的系統品質。這位同事林君的看法是以工程技術觀點看待系統失敗的典型，雖然他的觀點並不能夠讓我們看到系統失敗的全貎，但對系統開發的複雜性本質，倒是不失為一個不錯的思考起點。</p>
<p>林君知道筆者平常上下班都是搭捷運文湖線，然後再轉乘公車接駁。當時他問筆者搭乘捷運文湖線的人潮，筆者回答和過去文湖線未通車前搭乘捷運新店線相比，文湖線的人潮似乎並沒有新店線的人那麼多，雖然不見得會有位置坐，但文湖線的擁擠程度確實比不上新店線。林技術長猜測也許是人們對文湖線沒有什麼信心，所以搭乘的人比較少。</p>
<p>林君長年在國外定居和工作，因此以歸國華人的身份看待捷運文湖線的系統品質，會認為人們對捷運文湖線的系統沒信心是很自然的。文湖線在開始營運之初，發生過很多次嚴重的當機事件，因而讓人們覺得系統的品質不佳，這的確是不爭的事實。不過文湖線現在的狀況，確實已經比剛上線的時候要穩定許多。</p>
<p>依據<a href="http://www.google.com/url?q=http%3A%2F%2Fwww.trtc.com.tw%2Fct.asp%3FxItem%3D1129326%26ctNode%3D24508%26mp%3D122031&amp;sa=D&amp;sntz=1&amp;usg=AFQjCNFmHJfUYIIJjNdy24H8906j3-XYtg">台北捷運公司所提供的資料</a>，文湖線系統可用度與國際穩定度指標 MKBF 的兩項指標，可以客觀地證明，文湖線已是一條符合國際水準的捷運線。以筆者每天親身搭乘的實際體驗，我認為文湖線現在的狀況，其實並沒有像林君說得那麼糟糕。</p>
<p>筆者以過去參與的大型公共建設的系統開發經驗，讓我比較能夠理解文湖線剛開始上線的系統失常，直到後來才逐漸穩定的狀況。以筆者過去的系統開發經驗顯示，很多系統在剛開始上線的時候，總是會碰到一些偶然的意外，讓系統功能無法正常運作。直到專案團隊耗費足夠的時間與心力，找到系統異常的根本原因，才能針對問題對系統改善或調整使其趨於穩定。</p>
<p>因此筆者認為系統從剛開始上線到逐漸穩定，需要足夠的時間。剛開始是由於開發人員經驗不足，以致於不夠了解狀況而難以掌控系統以因應問題。等到開發人員從系統失敗中得到寶貴的經驗及教訓，並努力費心解決問題並改善系統，系統自然就會開始漸入佳境。很多系統並不像捷運文湖線或是高鐵售票系統那樣受到大家的注意，但其實每個系統在上線後，會出現問題的機率都是一樣的。</p>
<p>不過，林君倒是不這樣認為，而是認為由於開發者的觀念錯誤，才導致捷運文湖線的品質不良。以林君長期在國外開發系統的經驗，他很推崇老美做事的方法，按步就班地照著正確的方法來進行開發的工作，不求速成只求「把事情做正確」。反觀在台灣，他認為人人都是為了趕進度而求快速，經常省略了一些不應該省略的作業，為了節省時間，卻得到系統品質不穩定、甚至是系統失敗的代價。</p>
<h4>品質就是沒有錯誤？</h4>
<p>林君認為開發者為了讓捷運文湖線提早上線，沒有確實地把開發工作做正確，因而使系統品質變得不穩定而不斷發生系統異常的事故，所以應該歸咎於開發過程的觀念錯誤。林君的論點似乎是認為「品質就是沒有錯誤」，但這種觀念必須把系統開發的錯誤當成道德問題，否則它將會造成邏輯推論上的繆誤。</p>
<p>「品質就是沒有錯誤」會造成什麼邏輯推論上的繆誤呢？的確，當系統出現大量的錯誤時，毫無疑問地，不管系統功能如何，人們還是會因為品質缺失而認為它沒有價值可言。但反過來說，即使系統沒有發生任何的錯誤，我們也無法確認它的價值為何。<sup>[<a href="http://www.lifeparty.idv.tw/blog/archives/6092#footnote_0_6092" id="identifier_0_6092" class="footnote-link footnote-identifier-link" title="曾昭屏譯（2006），《溫伯格的軟體管理學：第一卷（系統化思考）》，p.294，經濟新潮社">1</a>]</sup></p>
<p>事實上，在追求系統不會出錯的完美之外，要讓系統有價值還需要對特定的人有用處。開發者致力於工程技術的完善，開發出不會發生任何錯誤的系統，即使盡到開發沒有瑕疵系統的道德責任，但這並不代表系統能夠為客戶或是使用者產生價值，而能夠贏得他們讚揚的肯定。</p>
<p><img alt="客戶真正的需要" src="http://andinspired.files.wordpress.com/2008/02/analogy.jpg" title="what the customer really needed" class="alignnone" width="449" height="336" /></p>
<p>這是因為追求系統在工程技術的完美、和系統符合客戶及使用者在問題領域真正的需要，根本就是兩回事。就像系統開發者常會碰到幾種導出使用者需求的障礙。尤其對於大型規模或複雜的系統，客戶和使用者通常要等待較久的時間，才能接觸到實際的系統。經過長時間對環境所產生的變化，加上他們在想法上的蘊釀，讓系統在認知和實際上的差距變大，於是便出現「是的，但是&#8230;」症候群的現象。開發者照著客戶或使用者提出的需求來開發系統，但等到系統開發出來之後，他們反而表示「是的，系統功能看起來很酷，但是它不是我想要的功能」。</p>
<p>「是的，但是&#8230;」症候群顯示系統開發在導出使用者需求的一種常見障礙；由於系統在被開發出來之前的不可見和不可觸摸性，客戶和使用者在還沒看到和接觸系統之前，根本很難說清楚他們需要什麼，而且有時候連他們都不知道自己要什麼。</p>
<p>除此之外，系開開發在導出系統需求還有兩種常見的障礙，一種是在系統範圍內存在「未發現的廢墟」，當開發者愈深入認識系統，愈會發現很多原來沒有被發現的系統問題；另一種是開發者和客戶或使用者的語言不同，因為彼此背景、專業知識、技能、以及關注的焦點不同，使雙方在溝通上採用不同的方式，增加彼此誤解和衝突的機會。<sup>[<a href="http://www.lifeparty.idv.tw/blog/archives/6092#footnote_1_6092" id="identifier_1_6092" class="footnote-link footnote-identifier-link" title="Dean Leffingwell &amp;#038; Don Widrig (2003), 《Managing Software Requirements: A Use Case Approach》, Second Edition, Addison Wesley Professional.">2</a>]</sup></p>
<p>由上面幾種導出使用者需求的障礙，我們可以了解僅僅系統開發要把需求弄清楚，就是一項艱鉅的任務。很多時候系統發生錯誤，問題的關鍵並不是開發者開發的系統有錯誤，而是沒有開發客戶或使用者真正需要的系統。因為在具備規模和體制的系統開發專案中，系統不大可能在層層工程驗證和確認過程把關之下，還會發生沒有把事情做正確的繆誤。但倒是很有可能因為系統開發在各種因素交互作用下產生的複雜性，讓人無法在混亂和秩序之間適當地調適而讓情況失去控制。</p>
<h4>系統開發的模糊地帶</h4>
<p>從工程技術的觀點來看，系統開發應該需要客觀及明確，其中不應該有模稜兩可和高度的不確定因素存在。但實際上在系統開發的過程中，卻讓我們發現要開發被嚴謹定義的系統，處處出現無法具體而明確清楚定義的難題。系統開發顯然存在模糊地帶，只是假設它不存在，更加容易讓人忽略系統的複雜性，而在系統出現混亂的時候無所適從。</p>
<p>系統開發為什麼會存在模糊地帶呢？理論上，只要能夠發展出足夠具體的需求規格，系統應該就不存在任何的模糊地帶才是。然而，即使沒有前面提到導出使用者需求的三大障礙，人也沒辦法藉由發展嚴密的系統規格，讓系統開發過程的模糊地帶因此而消失。</p>
<p>因為雖然定義具體的規格可以用來規範系統的一致性，減少系統發生模稜兩可情況發生的機會，然而，規格所規範的一致性愈高，也就代表系統的完備性愈容易受到限制；在系統規格沒有錯誤的情況下，不可能不出現任何邏輯上的矛盾。</p>
<p><a href="http://zh.wikipedia.org/wiki/%E5%93%A5%E5%BE%B7%E5%B0%94%E4%B8%8D%E5%AE%8C%E5%A4%87%E5%AE%9A%E7%90%86">歌德不完備定理</a>已經證明在理性的世界中，沒有任何的公理系統可以表現它的正確性，而在它所涵蓋的範圍中不發生任何的矛盾。只要公理系統所涵蓋的範圍足夠廣大，可以蘊含自然數所定義的成員，那就必然可以找到沒辦法證明也不能夠證否的命題。此外，也沒有任何的公理系統可以證明自己的正確性。</p>
<p>從歌德不完備定理可以讓我們理解系統開發的模糊地帶是必然存在的。對系統運作可能會碰到各種問題，如果開發者對問題領域沒有足夠的經驗，藉由數理公式及邏輯推演，沒有人可以定義出沒有模糊地帶的完備具體系統規格。當規格具有相當的涵蓋範圍，就代表系統存在更多的模糊空間，不然就代表了規格一定存在邏輯上的矛盾。</p>
<p>歌德不完備定理並不是說沒有系統的規格是完備的，而是指只要規格的涵蓋範圍夠廣，就沒辦法透過計算或是推論來證明它的完備性，否則將會以破壞規格的一致性作為代價。當然對於系統運作將來會面臨的某些情境，開發者可以增加規格的細節來擴大規格的完備性，但通常這樣做會影響到系統其它部分的功能，於是還是無法提昇規格整體的完備性，或是因此喪失規格的一致性。</p>
<p>因此，系統開發的模糊地帶是因為人們經驗的侷限，它們讓我們不可能用規格的正確無誤來證明系統對人的用處，也就無法確保系統的價值為何。因為單單要定義什麼是「完全正確無誤」就是個大問題，很多時候人不是不知道應該把事情做對，而是缺乏可以減少或避免犯錯的經驗。</p>
<p>一般而言，系統開發的錯誤包括缺少兩種典型的經驗；第一種錯誤是缺乏問題領域的經驗，使人沒辦法在規格中清楚定義系統，因為不清楚系統未來將面對的情境，沒辦法問正確的問題以做正確的事、第二種經驗則是缺乏工程技術的經驗，使人不了解系統可以採用的技術及方法，沒辦法回答正確的解答來把事情做正確。</p>
<h4>工程技術的對策</h4>
<p>在工程實務上，面對系統開發的模糊地帶，開發者並非無技可施。要避免沒有問對問題和沒有提供正確解答的缺失，開發者可以透過驗證（Validation）流程來做正確的事情，然後再運用確認（Verification）流程把事情做正確。這是面對系統開發的模糊地帶，工程技術所提供的對策，只是運用<a href="http://en.wikipedia.org/wiki/Validation_and_verification">工程實務的驗證和確認流程</a>，是否真能有效降低或避免系統開發的模糊空間？</p>
<p>從筆者實際參與系統開發的經驗來看，在系統開發過程中，開發者經常花費很多的心力在系統的驗證和確認上，但實際上它們對降低或避免系統開發的模糊地帶其實非常有限。主要的原因並非開發者的能力或是他們的使用的流程或方法不對，而是開發者終究會發現他們沒辦法完全忽略、或是排除工程技術以外有關人的因素。</p>
<p>筆者再舉另一個著名公共建設發生系統失常的例子。就像在幾年前，通過 CMMI ML3 的神通電腦開發高鐵售票系統，被人們詬病像登機的售票系統是忽視真正的使用者需求。以通過 CMMI ML3 的公司水準來看，人們很難能夠接受他們會開發出這樣的系統，不敢相信他們具有相當的軟體開發能力成熟度。</p>
<p>CMMI 工程領域中的驗證過程，它的目的是為了證實未來的系統，在預期中的環境中運作可以滿足預期的使用者需求，因此如果系統沒有滿足實際使用者真正的需求，很可能是因為開發者並沒有做好需求的驗證，並且以「用廣泛的方式驗證需求」來發展需求。</p>
<p>然而，高鐵售票系統沒有辦法滿足使用者真實需求，原因不盡然是需求驗證的問題。相信有參與過大型軟體系統開發專案經驗的人都會非常清楚，在開發過程中，開發者能夠主導需求方向的能力是很有限的。面對系統的真實情況，開發者並不如其他的利害關係人更能了解需求，可能很難分辨什麼樣的系統擺在預計的環境，才能滿足使用者需求。</p>
<p>當然，開發者可以用各種方法來探索各個候選的系統解決方案，然後運用各種廣泛的方式來確認需求；諸如用展示、雛型、模擬、或概念驗證等技術來驗證使用者需求。然而，除了筆者在前面提到的三大導出使用者需求的三大障礙之外，系統開發還會常碰到其它原因，讓「用廣泛的方式確認需求」也不能獲得使用者的真實需求。</p>
<p>例如負責需求確認的人員，並不是實際操作系統的使用者。他們可能會誤解使用者的需求、或是因為利害關係而忽略使用者的需要，等到系統開發完成後，系統使用者才發現系統不符合他們的需求。</p>
<p>上面的情況在大型的系統開發專案中很常見，開發者經常會碰到提出需求和使用系統並非同一個人的困擾。跟開發者談需求和確認需求的是資訊部門，當開發者把系統開發出來之後，交付使用單位操作以後，使用者卻又表示系統並不符合他們的需求。</p>
<p>為什麼客戶不讓開發者面對使用者直接溝通需求，而要透過資訊部門的中間人的角色？這個問題其實很複雜，很多時候客戶很難找到確切的使用者來讓開發者訪談需求。即使排除像高鐵售票系統的使用者是一般的民眾的狀況，其它企業內部的系統的使用單位，很經常會橫跨多個部門，要找到所有的利害關係人一齊開會，其實是非常不容易的。</p>
<p>其實還有更主要的原因是客戶在策略觀點、和使用者作業觀點的不同調。客戶的決策高層可能不只是希望系統將現行作業自動化提昇效率，他更希望系統能夠運用資訊科技的優勢來改進作業流程，並改變使用者習慣來創造效益。所以並不希望開發者對系統需求的認知，被使用者的作業習慣框住。客戶端高層對系統的看法，經常會與實際操作系統的使用者的需求南轅北轍，很難能夠從當中找到讓每個人都滿意的系統需求，而只能從當中做出某種程度的取捨。</p>
<p>雖然系統開發在驗證和確認流程並不是對人而是應該針對事，可是忽略人的因素就很難能夠得到執行它們應有的成效。記得筆者曾經經歷過系統經過客戶的 Power User 測試需求的系統，最後在系統驗收之前，卻還是被客戶要求變更需求。這對開發者也許是難以理解並接受的情境，但其實這正是系統開發複雜性本質的展現。即使對企業需求更了解的資深使用者也很難發現自己提出的需求是有問題的，更何況有時候需求的變化是來自人力所不能抗力的環境因素所造成的，開發者很難能夠對他們來多加以責難。</p>
<h4>社會技術的關鍵因素</h4>
<p>因此，從上面工程技術經常碰到的困難我們可以清楚知道，系統開發即使透過嚴謹的工程技術，也不可能忽略人的因素，因為即使工程技術沒有出現錯誤，也不能證明它是對人有用處而展現價值。這正說明了系統開發的複雜性並不是單獨以工程技術的觀點就可以理解，而是更需要正視有關於社會技術的觀點。</p>
<p>社會技術觀點和工程技術觀點最顯著的差異，正是前者並不如後者的客觀，這也代表是非對錯沒有固定不變的標準，常常同一件事在不同的專案或基於人的不同立場而會有不同的結論。其實系統開發的複雜性正是因為無法限定在單一的觀點，而是必須考量各種不同面向的多重觀點。</p>
<p>因此，系統開發需要考量多重觀點，要先從取捨系統需求出發，這代表系統開發者必須做好利害關係人管理，它對系統的成敗具有積極的決定因素。利害關係人管理需要識別出專案的利害關係人，然後挖掘、管理、以及影響他們的需要及期望。專案的利害關係人包括主動參與專案的人員、或是他們所感興趣的事情，會對專案的產出或成敗有影響的個人或組織。</p>
<p>系統開發應該要儘可能地滿足每一位利害關係人的期望和需要，然而，一旦利害關係人之間，彼此意見衝突而且無法協調共識時，那系統就必須要以滿足專案的客戶為主。也就是說要把客戶當成是關鍵的利害關係人，為了滿足他的需要和期望，其他人的需要及期望都可以被放棄。</p>
<p>然而，有些時候系統開發者眼前直接面對的客戶、或是專案的贊助者，他們的意見不見得會讓系統變得更有用處，而且經常還會讓系統變得更不容易使用，反而讓人們沒辦法接受系統。因此，在這種情況下，可能會促使<a href="http://jonathanspeaking.blogspot.com/2007/02/stakeholder-management.html">開發者認為應該思考使用者實際的需要</a>，因為可能他們才是最重要的利害關係人，而不以滿足客戶或專案的贊助者的需要和期望為目標。</p>
<p>不過，這種想法的問題是開發者通常沒有能力判斷誰的期望和需要比較重要。當然使用者是直接使用系統的人，他們的期望和需要或許應該優先考慮。但客戶和專案贊助者是真正出錢的人，當他們和使用者的意見不一致、甚至是發生衝突的時候，考量現實的因素，開發者真的很難為了符合使用者的期望和需要，而違逆客戶或專案贊助者的要求。</p>
<p>其實開發者運用他所熟悉的工程技術，通常是不能分辨誰才是真的利害關係人，因為對於客戶所關心的問題領域，有太多他不清楚的事情。有時候，開發者基於工程技術感覺應該是對的事情，往往最後才會發現它可能是錯的。當然，其它像客戶、或專案管理的單方向觀點，可能會受到對解決方案領域的認識有限，也沒辦法分辨誰才是真的利害關係人。當我們聽到有人主張「客戶永遠是對的，所以你應該照我說的這樣做」就會知道這絕對不是真理而是偏見，忽略了系統開發的複雜性來自多重面向。</p>
<h4>在混亂中找秩序</h4>
<p>既然系統開發的複雜性不能忽略多重面向，那麼我們就不可能在問題領域和解決方案領域之間選擇一邊來強調系統開發的核心思想是什麼，而是應該在各種不同面向觀點的交界之處，去找到適應系統開發複雜性的關鍵所在。換句話說，系統開發必須調合各種陰陽面，從未知和已知之間、混亂和秩序之間、結構和非結構之間，去尋找可以融合各種觀點的最大可能性。</p>
<p>要調合系統開發的各種陰陽面，以融合各種觀點最大的可能性，依複雜適應性系統（complex Adaptive System）的觀念來說，停留在會發生自我組織的混沌邊緣以適應變化，可以從三個方向著手。首先必須要把廣大而無所不包的可能性，限制在一小部分、其次是必須保持允許輕微改變的穩定性、最後是必須要在靜止不動的死寂和過度活動的混亂之間維持平衡。</p>
<p>這三個方向讓我們看到了適應系統開發複雜性的三大重點，那就是系統必須是可測試的、擁有允許改變的彈性、以及必須能夠持續的整合以維持動態的平衡。測試是為了知道系統的邊界在那裡、彈性是為了容納更多需要的變化、整合則是讓演進系統的火光能夠迸現。</p>
<p>於是，面對環境變化的無常，開發者需要自我組織來演化出適應複雜性的能力。筆者認為這種能力才是系統開發品質的關鍵，以工程技術和社會技術之間的調適，來尋求不同領域觀念之間的融合。這樣就能夠使系統在變化的環境中，能夠保持穩定的動態平衡。</p>
<p>就好像《太極拳論》提到「偏沉則隨，雙重則滯」的觀念一樣。工程技術重視規律和秩序，而社會技術則強調適應變化和彈性，兩者各有所長而無法偏廢。在開發過程採用（adopt）、調適（adapt）、並熟練（adept）不同著重點的轉移，是讓人學習在混亂中找秩序的法門與修煉。當然筆者承認這實際做起來真的不大容易，但至少它不會讓人用簡化的思維來看待系統開發。</p>
<h4>後記</h4>
<p>這篇文章本來是準備投稿 <a href="http://www.zdnet.com.tw/">ZDNet Taiwan</a> 的文章，從去年八月和同事的對話引發同人的寫作動機開始，到最近才把整篇文章完成，歷經了將近一年的時間。在寫作過程中，文章經過無數次的修改，希望能夠寫出不同以往談論系統開發複雜性的文章，沒有深澀的術語、也能用非技術專業的觀點來看到我對複雜適應性系統的領會。</p>
<p>這正是同人想突顯和另一篇有關系統開發複雜性的文章〈<a href="http://www.lifeparty.idv.tw/blog/archives/175">軟體開發是工藝還是工程</a>〉最大的不同，也算是對我最近兩年在系統開發所行、所思、所得，做一個比較全面的整體論述。系統開發真的需的有效的方法，但沒有任何一套方法可以忽略人的因素而能夠正確無誤地運作。</p>
<p>很多時候，讓人們沒辦法流程把事情做好的原因其實很簡單，但人的情緒卻通常把它變得很複雜。尤其是高階主管的情緒，不去觀察現象來瞭解執行和計劃的落差，以調整計劃來做正確的事情，卻以批評與責難來反應自己的情緒，這正是顯示高階主管在系統開發管理的無能為力。這種無能代表他們除了只會讓人「聽命辦事」之外，其它對管理其實是一無所悉。儘管他們能夠一直用口號來「教育」員工，並藉此檢查工作者的工作態度對不對，但他們的管理能力只能讓他們「簡化」系統開發的複雜性。</p>
<p>這篇文章比〈軟體開發是工藝還是工程〉更擴展它的詮釋領域，系統開發不應該只限制在軟體開發上。雖然軟體的抽象性會增加系統開發的困難度，但系統開發複雜性的本質所在，在於技術和業務觀點相互撞擊而產生各種變化，它不只是存在於軟體開發的系統中，對其它非軟體的系統開發也是相同的狀況。</p>
<p>同人並不想讓這篇淪為整理過去文章的新瓶舊酒，而是以這兩年系統開發實務得到的經驗，融合複雜適應性系統的觀念，內化成系統開發調適變化與紀律的動態平衡之道。雖然這篇文章也許寫了太久，以致於錯過了投稿 <a href="http://www.zdnet.com.tw/enterprise/column/softwaredev/">ZDNet Taiwan 專欄</a>的時機，但發表在網誌也算是對自己有交待和對喜歡《<a href="http://www.lifeparty.idv.tw/blog">同人的生活派對</a>》<a href="http://www.lifeparty.idv.tw/blog/archives/category/%e8%bb%9f%e9%ab%94%e9%96%8b%e7%99%bc">軟體開發</a>和<a href="http://www.lifeparty.idv.tw/blog/archives/category/%e7%ae%a1%e7%90%86/%e5%b0%88%e6%a1%88%e7%ae%a1%e7%90%86">專案管理</a>文章讀者的回饋。讀者的支持是作者寫作最大的動力，不管是在網路專欄或是個人網誌，同人將會持續寫作來分享我在軟體開發和專案管理領域所體會的點點滴滴。</p>
<br /><div class="googlePlusOneButton"><g:plusone href="http://www.lifeparty.idv.tw/blog/archives/6092"  size="standard"   ></g:plusone></div><br />附註
&nbsp;<hr/><ol class="footnotes"><li id="footnote_0_6092" class="footnote">曾昭屏譯（2006），《<a href="http://www.anobii.com/books/013ad41f7a862e80dd/">溫伯格的軟體管理學：第一卷（系統化思考）</a>》，p.294，經濟新潮社</li><li id="footnote_1_6092" class="footnote">Dean Leffingwell &#038; Don Widrig (2003), 《<a href="http://safari.oreilly.com/032112247X">Managing Software Requirements: A Use Case Approach</a>》, Second Edition, Addison Wesley Professional.</li></ol>]]></content:encoded>
			<wfw:commentRss>http://www.lifeparty.idv.tw/blog/archives/6092/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

