<?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>JeffHung.Blog &#187; Work</title>
	<atom:link href="http://www.jeffhung.net/blog/categories/life/work/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jeffhung.net/blog</link>
	<description>(My smile insists of having nose. :-)</description>
	<lastBuildDate>Fri, 23 Jul 2010 02:15:10 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>生產力低落</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/2261/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/2261/#comments</comments>
		<pubDate>Wed, 16 Sep 2009 16:11:30 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Work]]></category>
		<category><![CDATA[mac]]></category>

		<guid isPermaLink="false">http://www.jeffhung.net/blog/?p=2261</guid>
		<description><![CDATA[隨著新的 Mac 的到來，我發覺我的生產力，又陷入了另一個低潮。]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/2261/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>轉職</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/2026/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/2026/#comments</comments>
		<pubDate>Thu, 25 Jun 2009 22:43:56 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[Murmuring]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.jeffhung.net/blog/?p=2026</guid>
		<description><![CDATA[在有些 RPG 的設定裡，角色在經過「轉職」後，能力可以突然提昇一大節…]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/2026/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Timecard, garbage data, and work overhead</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/1958/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/1958/#comments</comments>
		<pubDate>Wed, 13 May 2009 09:42:51 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Murmuring]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.jeffhung.net/blog/?p=1958</guid>
		<description><![CDATA[Some kind of time-card system must be introduced...]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/1958/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>650 行的 constructor</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/1838/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/1838/#comments</comments>
		<pubDate>Mon, 13 Apr 2009 06:51:04 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Devel]]></category>
		<category><![CDATA[Murmuring]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[database]]></category>

		<guid isPermaLink="false">http://www.jeffhung.net/blog/?p=1838</guid>
		<description><![CDATA[原來我也會寫出 650 行的 constructor。XD]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/1838/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Who&#039;s code caught the error, who deal with it?</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/1016/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/1016/#comments</comments>
		<pubDate>Sun, 05 Apr 2009 14:53:14 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Devel]]></category>
		<category><![CDATA[Murmuring]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.jeffhung.net/blog/?p=1016</guid>
		<description><![CDATA[這是一個很久很久以前就有的 murmur。在工作上，有時候會聽到這樣的怒吼：「吼～又是你的 assertion 把程式當掉。」可是…]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/1016/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Code Review 什麼時候沒有用？</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/1776/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/1776/#comments</comments>
		<pubDate>Mon, 23 Mar 2009 01:49:53 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Murmuring]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.jeffhung.net/blog/?p=1776</guid>
		<description><![CDATA[今天早上一上班，看到上禮拜下班前跑的測試，果然還是死掉了。
面對體無完膚，多個臟器破裂，到處都是還沒找到的破洞，在這個情況之下，這種內出血嚴重的程式模組，code review 已經沒有用了。
更別提原作者在會中，一直嚷嚷，看起來都沒問題啊。XD
2009-03-23 13:00 更新：補一下這篇《The only valid measurement of code quality: WTF/m》。
]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/1776/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>這是什麼英文？</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/1196/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/1196/#comments</comments>
		<pubDate>Thu, 02 Oct 2008 08:47:31 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Links]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.jeffhung.net/blog/?p=1196</guid>
		<description><![CDATA[這是什麼英文？

Do not call error handling function with new thread, that will cause chance dead lock after foo().

還有這句：

Call client RPC for tell stream initial done.

雖然說缺乏註解是常態，所以看到的機會不多，但每次一入眼，臉總還是會微微抽動。
]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/1196/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>面對秀才、面對兵</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/1046/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/1046/#comments</comments>
		<pubDate>Mon, 07 Jan 2008 05:03:25 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Murmuring]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.jeffhung.net/blog/articles/jeffhung/1046/</guid>
		<description><![CDATA[ 			  寧願跟秀才辯論三百回合，爭得面紅耳赤，也不要跟兵浪費任何一丁點時間。
與秀才辯論，敗了也沒關係，真理通常是可以辨得出來的，只要把持心中的那把尺，不放棄，即使不如初衷，但也更合道理。
但是面對兵，不值得花上一絲一毫的腦力。能夠直接忽略最好，但如果不行的話，千萬別傻到動手去證明自己是對的。
]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/1046/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>新同事</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/886/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/886/#comments</comments>
		<pubDate>Tue, 15 May 2007 09:05:03 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Feeling]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.jeffhung.net/blog/articles/jeffhung/886/</guid>
		<description><![CDATA[喔耶，爆炸吧～爆炸吧！
愛用 .lib 嘛... 爆炸吧！
愛亂用 global variable 嘛... 爆炸吧！
愛亂 call function 嘛... 爆炸吧！
愛 copy &#38; paste 嘛... 爆炸吧！
喔耶，我聽到 windiff 了，爆炸吧！爆炸吧～～～
2007-05-16 更正：不是「愛用」.lib，而是有原因的。雖然說那個原因在不知不覺中，已經消滅了。
]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/886/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>征服職場煉獄</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/671/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/671/#comments</comments>
		<pubDate>Mon, 06 Nov 2006 15:28:28 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Fun]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.jeffhung.net/blog/articles/jeffhung/671/</guid>
		<description><![CDATA[從 HemiDemi 看到了這個小遊戲《征服職場煉獄》，我玩跟寶貝玩都蠻準的。我玩的結果如下：  

煉獄指數：45
你覺得目前的工作有些貧乏，也似乎到了一個瓶頸。有時覺得這份工作不算太差，有時覺得自己真要這麼繼續過生活嗎？換工作跑道是心中一直猶豫的議題，不熟悉的職場領域和環境、擔憂自身能力不足、不知道未來會不會更好，這些都是心中拉扯的因素。建議你多和工作場合以外的人接觸，拓展你的生活領域，相信你會從這些人得到一些對未來的啟發和靈感，以及找到屬於自己的勇氣。  
你的職場瓶頸會發生在三種狀況：一、老闆沒有授予你足夠的權力，讓你好好發揮，使你心生鬱卒；二、工作上權力的鬥爭讓你窮於應付；三、老闆信任你的能力，賦予你過多的期望，導致工作量過大，身心難以負荷。
你具備強烈扭轉劣勢的能量，因為你是一個樂觀正向、不逃避問題、善於面對自我的人，因此當困在職場上時，你的韌性會為你贏得最後的勝利。

據說下一個案子我可能要和大陸的 RD 同事合作，忐忑不安中。:-p
]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/671/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>工程師的宿命</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/403/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/403/#comments</comments>
		<pubDate>Mon, 23 Jan 2006 17:33:22 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Feeling]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.jeffhung.idv.tw/blog/articles/jeffhung/403/</guid>
		<description><![CDATA[唉唉，看來我又被調降信用評等了。今天前輩跟我說，部門老大將原本由我負責的案子，轉畫在他底下。於是，我從一開始的同時擁有三個頭頭，到成為無兵之將，再到現在這樣，還沒正式公布，只屬一個頭頭。我知道，這其實不是壞事，我的未來，應該會好過一些。我也知道，這主要是因為專案性質改變的緣故，所以有所調整。但是，最後總歸是讓部門老大出了手，我的心裡，還是有些落寞。
確實，我是有很多「可是」的，但我也知道，這些都可以算是藉口...

文件上沒寫，誰知道 GetSystemTime() 在 WinCE 裡抓不出 milliseconds？配上 eVC 那超慢的 download 速度與超高的失敗率，以及 99% 會失效的 debugger，兩天的時間就這樣浪費掉了。
Porting 當然是要按照原本 function 的 behavior 改寫，按照原本程式的介面邏輯，在目標平台找尋對應 API 完整重寫。這當然是「正確」的事，可惜卻是屬於「政治不正確」的一種。Conceptual Integrity 在某些目標導向的情境下，常常是可以被犧牲的一項。以結果論英雄以證明抄捷徑才是正確的，我可以預見未來必定沒有機會補洞，但我沒有權力反對。
有時候碰到那種，說起來很簡單，但其實挺複雜，但對主管來說，又只需要知道很簡單的部分的東西時，還真的是挺讓人無奈只好硬吃黃連的。結果可想而知：「這不是很簡單嗎？不就是在那段 code 的前後記一下時間，相減取得所耗費的時間，為什麼會搞得這麼複雜，還花上半個星期的時間弄？」是啊，但是我必須為了 porting 找解法、測試，為了讓結果能夠印出來，思考良久以決定究竟該不該打洞抄捷徑，更別提中間還穿插為了與正因興起而被大整頓的 Visual SourceSafe repository 之間同步程式碼，而不得不斷地被打斷的開發過程，以及額外支援的抓網站小程式。
平心而論，對於同期或後期的同事，基本上其實我確實是沒有把來自他們的 coding request 放在心裡很重要的地位。但相對來說，雖然說看起來我未來暫時只會有一個頭頭，實際上的情形仍然將會是，來自前輩的交辦事項，還是得認真回應。單一擋箭牌的好處在單一，但缺點也在單一。讓我感到落寞的，正是在此。花了一年學懂了在三個頭頭下做事的方法，可惜又花了一年，才從錯誤中領悟到無兵之將的真正意涵：無兵之將還是兵。未來我有辦法在一個頭頭之下，用對方法態度行事嗎？我不確定，在必須將大部分精力以工程師性格的方式展現的情境下，能有多少心思保護自己不再吃暗虧。

工程師的宿命是，要不就 work longer (加班)，然後讓肝爆掉，要不就 work harder (拼命)，讓胃穿孔。Work smarter 真的是藝術啊，還是讓別人的肝爆掉，胃穿孔才是王道。怎麼說呢？好歹自己也念了兩年資管，算是和管理有沾到邊了，然後這幾年看著老爸念 EMBA，我漸漸地有了這樣的想法：因為學管理的比較懂做人，所以作管理時就拼命地教下面學做人。會這樣想當然是覺得這是不對的，怎麼做事，和怎麼做人，是一樣重要的。問題只是，做事的人多半不懂得做人，而會做人的人，則多半不懂得做事，如果只是讓專業的傲慢決定做事或做人何者重要的話，那的確是會變成裡外不是人。
其實，「政治正確」我也不是嗅不出來，對於自保用的心機，我也不是一無所知。但在個性與價值觀的雙重作用之下，我也許還得再經過多年的挫折，才能學懂如何在專業的堅持與工作的目的之間取得平衡，又或是學曉如何放棄。
]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/403/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>這才是真正的黑手工程師啊！</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/427/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/427/#comments</comments>
		<pubDate>Thu, 19 Jan 2006 04:33:56 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Devel]]></category>
		<category><![CDATA[Fun]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.jeffhung.idv.tw/blog/articles/jeffhung/427/</guid>
		<description><![CDATA[剛剛寫程式寫到一半，突然聽到一陣「嘰拐嘰拐」的聲音，探頭一望，原來是來自桃園廠的同事，拿著鋸子在鋸 PCB 板。這，這才是真正的黑手工程師啊！「機絲」一大車，常常要桃園內湖兩邊載來載去，連鋸子榔頭都準備得好好的，隨時可以派上用場。
]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/427/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Can&#039;t just say &quot;No&quot; to bad old programmers</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/424/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/424/#comments</comments>
		<pubDate>Mon, 16 Jan 2006 15:10:58 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Devel]]></category>
		<category><![CDATA[Feeling]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[cpp]]></category>

		<guid isPermaLink="false">http://www.jeffhung.idv.tw/blog/?p=424</guid>
		<description><![CDATA[最近一直很忙，工作環境裡的一些困境一直在困擾著我，並不是沒有技術可以滿足種種需要，而是這些技術都無法被使用，猶如「被綁縛了雙手的俠客」一般，頓時失去了練在雙手上的功夫，連三歲小孩也打不過。看來，要能武功大成，無論在何種境界皆能自在充裕，還有好大好大的一段距離要努力啊。
  拜讀 Jserv 的這篇《思索 C++》，裡面引的這句「just say &#34;No&#34; to bad old platforms」挺有意思的，可惜在軟體工程上，決定一切的通常不是技術因素，而是「錢」。「錢」最為優先，次之為「人」，最後才是「技術」。
  小弟我有幸身在一個比較沒有市場壓力的研究單位，因此不需要直接面對「錢」的問題。但相對地，「人」的問題，便首當其衝。這兩年來的整理思考，讓我明瞭了，在實務工作上，除了常要 cross platforms 外，還常常需要 cross programmers，不僅 platform 要跨，連 programmer 也要跨。期待所有會使用到你的程式的 programmers 都能具有某些基本能力，就跟期待碰到的 platforms 可以支援基本的 C99/C++98 一樣，緣木求魚。
  更慘的是，我們無法 just say &#34;No&#34; to bad old programmers，因為，不僅 team members 會碰觸到你的程式，你的 customer 也有可能會碰到你的程式。在客戶至上的大前提下，是沒有可能因為客戶不懂 template，就 just say &#34;No&#34; to dummy customers 的。最終，還是得弄出一套 pure C 版本朝聖才行。喔，客戶的問題可能還好解，大不了另外寫個 library [...]]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/424/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Calling VC-made DLL from VB</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/291/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/291/#comments</comments>
		<pubDate>Tue, 04 Oct 2005 16:11:36 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Devel]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[chinese]]></category>
		<category><![CDATA[cpp]]></category>
		<category><![CDATA[visualbasic]]></category>

		<guid isPermaLink="false">http://www.jeffhung.idv.tw/blog/?p=291</guid>
		<description><![CDATA[記錄一下從 VB 呼叫用 VC 製作的 DLL 的心得： 
1. 使用 __stdcall 搭配 .def 檔製作 DLL  VC 製作 DLL 的方法。
有兩種方法。
第一種方法是使用 __declspec(dllexport) 宣告要 export 的函式，讓 VC 幫忙製作 stub library，這時預設使用的 calling convension 是 __cdecl。這樣宣告後，VC 會產出 libFoo.dll 與 libFoo.lib 兩個檔案，其中後者就是所謂的 stub library，VC 會自動於 stub library 裡製作對應到 libFoo.dll 裡 _funcFoo 這個 symbol 的 __imp_funcFoo。
這個方法的好處是，在 VC 裡的 project 有 dependency 時，會自動 [...]]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/291/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Bugs: Error 53 when calling functions from custom DLL</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/290/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/290/#comments</comments>
		<pubDate>Tue, 04 Oct 2005 07:10:43 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[cpp]]></category>
		<category><![CDATA[visualbasic]]></category>

		<guid isPermaLink="false">http://www.jeffhung.idv.tw/blog/articles/jeffhung/290/</guid>
		<description><![CDATA[用 VB6 呼叫用 VC6 寫的 DLL，檔案確實有更新且擺放在 VB 的 project 目錄下了，函式也確實地用 __stdcall 與 def 檔宣告了，但就是會跑出
 Error 53: File not found libFoo.dll

 的訊息。
後來查到《Bugs: Error 53 when calling functions from custom DLL》這個網頁才知道，是 libFoo.dll 所需要的 libBar.dll 忘了複製過來的緣故。  不過，這什麼鳥蛋 error message 啊，一點提示效果都沒有，難怪查到的網頁要用 Bugs 開頭。
看了一下 MSDN 裡 VB6 的 error code 列表，少的可憐。寫 VB 真的要自求多福才行。
]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/290/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Fw: 在竹科上班嗎？</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/287/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/287/#comments</comments>
		<pubDate>Mon, 03 Oct 2005 14:17:57 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.jeffhung.idv.tw/blog/articles/jeffhung/287/</guid>
		<description><![CDATA[收到的轉寄文。
原作者的算法蠻有趣的......令人深思.....只不過大家都在等園區公司的分紅, 如果沒有分紅, 那麼, 真的可以考慮簡單一點...看到這,真是為這些園區上班的科技新貴感到悲哀,包括我自己在內..在來園區前,對園區有很大的憧憬,非園區的工作不作,來園區幾年後,卻恐懼的要逃離這個地方,商業周刊897期主題『新迴游主張─返鄉工作,可以簡單,也可以富足』,一個環境法碩士,到宜蘭當月薪三萬元的農夫。上個月我去當司機了,月薪三萬。電機碩士放下月薪六萬去幫人家開車,哈~我的同學都在笑我~在新竹,我買一間透天要貸600萬(200萬自備),在新屋,我買一間全新透天要貸150萬,在新竹,我負債600萬,每個月要繳房貸3萬7,在新屋,我負債150萬,每個月要繳房貸9仟3,在新竹,上班為了怕塞車,6:30起床,下雨天運氣不好,在塞車的車陣中塞1個小時,心裡也罵了一個小時,在新屋,我8:00起床,開車十分鐘到公司,在新竹每天7:00出門,22:00回到家,每天在外15個小時,為了那600萬負債,所以我用青春去拚那六萬的薪水,在新屋每天8:15出門,17:15到家,我可以在家吃飯,晚上做我想做的事,因為我負債只有150萬,同學問我薪水會不夠用,在新竹,繳完房貸,我只剩下2萬5,在新屋,繳完房貸,我只剩下2萬,只差五仟嘍,新竹的新貴因園區而發達,新竹房地產因新貴而發達,新貴的錢最後吐給房地產,自己卻要拚死拚活去工作,這樣的生活,真不知是錢的主人,還是被錢所奴役,房貸20年,人生有幾個20年,一生中若有10年在新竹園區工作生活,呵~不如歸去.........
但是，考慮到下一代的教育問題，處在刺激、新知較多的地方，可能會比較好，至少，會有更多選擇的權力。因此我寧願在都會區生活、扎根。
]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/287/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>libMMI 的第一千次 commit</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/256/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/256/#comments</comments>
		<pubDate>Fri, 12 Aug 2005 06:24:15 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Devel]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[asr]]></category>
		<category><![CDATA[cpp]]></category>

		<guid isPermaLink="false">http://www.jeffhung.idv.tw/blog/?p=256</guid>
		<description><![CDATA[libMMI 是我在工作上，順帶寫的一個程式庫。目的在累積 domain independent 的 know-how，以加速日後程式的建構。發展準則有：

Incremental construction - 有用到的 feature 再加，慢慢累積。

Homogeneous across languages - 橫跨若干 programming language，不同於 C# 的 CLI，只求用法、API 長相差不多就好。目前用到的有 C/C++、Perl、PHP、SH 等程式語言。

Cross-platform if possible - 盡可能地隱藏 cross-platform 的細節，目前可以橫跨 FreeBSD/Win32 以及 GCC3/MSVC6。不過因為 incremental construction 的發展準則，尚未 porting 的功能，會產生 pre-processor-time 或 run-time error。

Privode both C/C++ interface if possible - 盡可能地為 C/C++ 推出不同介面，對應功能的版本。


就在剛剛，我做了第一千次的 commit。因此趕緊來賽豬公一下：
SHELL&#62; svn log -r 1 [...]]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/256/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>是不是念電機的，都以為寫程式很簡單啊？</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/223/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/223/#comments</comments>
		<pubDate>Tue, 19 Jul 2005 16:05:15 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.jeffhung.idv.tw/blog/articles/jeffhung/223/</guid>
		<description><![CDATA[看似簡單的專案，原來並不簡單。
Core library 還真的只作核心的功能，幾乎毫無控制的機制，搞得我必須自己同時維護兩個 thread，各自有各自的 task queue 要持續不斷地進行任務，同時還要必須隨時能夠暫停、復行、終止、啟動、新增任務、插隊、任務重新排序，以及取得目前工作狀態。
另外還有永遠列不完，寫不完的內容修正規則要弄。而這一切，必須要在一個禮拜之內完成，而這一個禮拜裡，有一半的時間必須抽出來，去支援另外一個專案的文件撰寫，零零總總加起來共一天的時間要用來開會，一天颱風假放掉了。就算我有能力在這一年半裡，除了主要的專案之外，另外寫一個五萬行的多語言輔助程式庫，也沒有能力在不到兩天的時間內，寫完這所有的功能啊！
  不行，明天得先找老闆談談才行。不過想到要跟老闆解釋，這裡面的複雜性，好難。:-(
]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/223/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>能夠花錢解決的問題，就不要花力氣去ㄍㄧㄣ</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/217/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/217/#comments</comments>
		<pubDate>Sun, 17 Jul 2005 03:02:24 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Devel]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[cpp]]></category>

		<guid isPermaLink="false">http://www.jeffhung.idv.tw/blog/?p=217</guid>
		<description><![CDATA[抱歉，在標題裡用了注音符號了，沒辦法，這個台語不曉得怎麼用國語表達。
貓部大概是無意間逛到了我的 Blog，留了個言，提到：

而事實上, 花很多心思去榨出那5%, 10%的效能, 花的時間力氣可能遠超過說服老闆用好一點的hardware/software, 這是很悲哀的. 有時不如花這些時間去跟老闆social一下, 對前途還比較有幫助, 哈&#8230;.工作這麼多年有感.

 之前也有類似的經驗。因為我們的辨識引擎還不夠快，所以資深同事打算用 SIMD 靠硬體架構拼效能。我很不以為然，不是因為這樣就會與硬體相依，而是因為在現在的 CPU 架構裡，pipeline、prediction 一大堆，cache 機制、大小也各有巧妙，我才不相信自己搞可以搞的好。
  果不其然，在效能瓶頸處改用組語寫 SIMD，結果讓程式的整體速度更慢了。所以我就推薦改用 Intel C/C++ Compiler 試試，在網頁上申請之後，可以有一個月的試用期。如我所料，要靠硬體拼效能，手算是比不上 compiler 算的。換 compiler 帶來的，是 10% 的效能增進，執行速度比 MSVC++6 編譯出來的執行檔，還要少了 10% 的執行時間。
Intel C/C++ Compiler 才一、兩萬台幣，可以永久使用，加買 Support Services Renewal 的話，期限內還可以免費升級。比起 case-by-case 讓工程師花昂貴的時間ㄍㄧㄣ效能，還不一定能夠成功，要來得划算多了。
]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/217/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>一次看 15 天份的呆伯特</title>
		<link>http://www.jeffhung.net/blog/articles/jeffhung/208/</link>
		<comments>http://www.jeffhung.net/blog/articles/jeffhung/208/#comments</comments>
		<pubDate>Mon, 11 Jul 2005 15:03:38 +0000</pubDate>
		<dc:creator>jeffhung</dc:creator>
				<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://www.jeffhung.idv.tw/blog/articles/jeffhung/208/</guid>
		<description><![CDATA[積了好久，剛剛一次把 15 天份的呆伯特看完。當忙到沒時間看呆伯特的時候，這代表什麼呢？ 
]]></description>
		<wfw:commentRss>http://www.jeffhung.net/blog/articles/jeffhung/208/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
