發現日本用的系統
竟然都是日文介面的
不會像某國家
很自作聰明的用英文介面然後美其名叫作專業化
(學期末)桶泥:怎麼不寫英文,投到國外還要中翻英
(學期末)桶泥:怎麼不寫英文,投到國外還要中翻英
分析來源是線上遊戲的聊天封包對象紀錄。
分析結果可以找出哪些人的網路維度及此種人在伺服器中的數目。結果與一些網路社群如Cyword與MySpace的分布相類似。
分析結果也發現網路社群的聯接也與遊戲週期與生活事件有相關,假期來臨時網路社群活動力就較低,遊戲更新後社群活動力就上升,人口上升時社群就跟著下降,不同性別種族的角色有不同的社群活動力。
特別的是觀察 "遊玩三天時的朋友數目" 就可以知道此玩家是否會長期遊玩。
面試官入門注意事項整理
PTT電子佈告欄Salary板有人問了"如何面試別人"這個問題。
讓我回想起我去年曾經為我們部門面試過3DS Max plugin工讀生。
過程中也是趕鴨子上架,
但是事先有參考過Joel on software(約耳談軟體)的經驗談,
最後的結果我自認為還算滿意。
聲明:以下內容專門是給從來沒有面試別人經驗的朋友的guideline.
聲明:以下內容以Joel on software(約耳談軟體)文章為主幹.
並依照個人經驗及台灣的習慣修正.
The Joel on Software Translation Project:軟體人員面試教戰守則
http://local.joelonsoftware.com/wiki/The_Joel_on_Software_Translation_Project:%E8%BB%9F%E9%AB%94%E4%BA%BA%E5%93%A1%E9%9D%A2%E8%A9%A6%E6%95%99%E6%88%B0%E5%AE%88%E5%89%87
零.了解目的
面試官第一件要注意的事項,就是要了解這次面試的目的。
我所知道的目的至少有兩種
有任務型的徵人,救火隊型的徵人,就是一定要找到人來執行任務。
另一種是職位型的徵人,人力上有缺少,需要找個適合的人。
差別在於,前者是寧爛勿缺,不完美沒關係,但是一定要有;
後者是寧缺勿濫,以完美為優先。
這兩個的不同的地方要分的清楚。
一.行程
再來是確定行程,以時間為順序列如以下:
1發布徵才訊息
2收件整理並回覆必要訊息
3安排及通知面試時間(含其他面試官)
4面試
5任用審查
6通知結果
7新人報到
1通常是將徵才條件交給人資會幫單位來發佈,但有時候也可以由徵才單位主動出擊。
2如1人資可以將資料彙整作第一步的過濾,如果應徵者有什麼問題再這一步面試之前可以回應。
3依照應徵者的特殊條件,及面試預估的時間來安排,這部份也可以由人資代勞。
如果徵人單位很大牌的話,就是一個時間,誰先到誰先面試,
相反如果是不要耽誤應徵者的時間,
就會排個次序半小時或一小時間隔請應徵者分批前來。
如果面試是多面試官對一應徵者的方式,也比需將此行程通知所有的面試官。
4面試時分為
a迎接:見到應徵者之後簡單的寒暄,請他繳交或填寫必要的資料(看公司規定)。
b就座:請應徵者到面談地點,必要時附上茶水。
c面談:看面試內容長短不等。
d送客:簡短的感謝詞,握手,送應徵者出門或到電梯,公司有規定的話附上車馬費,有必要時交換名片。
e整理資料:請面試官馬上就應徵者整理出簡易結論或分數,整理收集。
5所有的應徵者都整理完後,面試官依照數據做最後討論,決定任用
6通知應徵者任用與否
7準備新人報到事宜
二.面試事前準備
面試官確定面試的目的後,來決定要問哪些制式的問題。評分表中要有哪幾項評分的量度。
面試官在面試之前(至少在面試開始五分鐘前)看過應徵者的資料,
將審查結果(如評分表)的文件格式準備好,
除了一般問題外,依照應徵者的資料註記寫下重要的問題及其他問題。
三.面試注意事項
根據不同的公司及職位,面試會有各種不同的形式,或測驗。
但是只有一個重點:找出適合的人才。"怎樣是適合?"是面試之前就該決定的。
不同的公司可能著重在不同的地方,
譬如說有些公司偏好人格特質,
某些職位偏好表達能力,某些主管偏好技術強度。
約耳在他的文章中認為-聰明且能完成任務-是共通的目的。
約耳也提到一個面談的流程,其中大致可以包含:
1請應徵者自我介紹
2應徵者的經歷,做過的案子,面試官說明公司說明以及應徵的職務主要的工作內容
3技術的討論
4有沒有其他問題?
5面試官試情況補充其他問題或說明。
以我的經驗,其中12項會比較制式;
3主要是為了要測試應徵者是否真的符合他履歷上的內容(測試對方是不是真的會什麼);
4是給應徵者一些緩和的空間,但是並非真的以這部份來做評分;
5是一定要有一些口袋問題,來避免太快結束。
再來是要問什麼問題,這可能是新手面試官最不清楚的地方。
除了制式的問題之外,列問題通常會從使用者的履歷開始,
對方寫他會C++語言,你就出程式的問題問他,
對方說精通英語,就請他口述或閱讀,
對方有設計經驗,就請他展示他的作品,以此類推。
約耳也有提到,有些問題是用來做開場或是緩和氣氛的,譬如說對方怎麼來公司的,早餐吃了沒等等。
有些問題則是沒有必要問的,像是提到種族相關,宗教相關,之前工作細節;
私生活相關的問題都是沒有必要或是不適合的問題。
可以提到但是不適合當作一個問題。
註:在美國有關種族,宗教,性別,出生國,年齡,服役記錄,是否老兵,性傾向,生理障礙的問題都是不合法的。
問題通常是以申論的方式來進行,避免是非對錯這種簡單的回答。
腦筋急轉彎或是機智問答也是沒有必要,
因為這些問題大多是看過題型的人答的比較好。
沒答出來只能證明通常只是你給他時間不夠多,或是在面試的環境過於緊張而已。
這種問題沒辦法測試出應徵者能不能做好一般的工作,以及適不適合當同事。
問題也不用很規矩不用有答案,視應徵者的反應來修改,因為主要的目的是要了解應徵者的表達能力。
很多約耳提到的重點,在台灣並沒有人這樣進行,所以我並沒有列出來,
即便我認為那些測試應徵者特質的問題如勇氣,熱情是很重要的。
四.審查及結果彙整
這部份是約耳特別討論的地方,
簡單來講,面試官的結論就是YES與NO,
沒有所謂"錄取,但不要在我的部門。"
不予置評,不清楚這種意見就是NO。
如果面試官無法找出該職位需要的人格特質或是技術能力,答案就是NO。
如果有其中一個面試官認為不錄取,那彙整結果就是不錄取。
(因此應徵的類型如果是寧濫勿缺,那評分表最好是分數制,
相反寧缺勿濫得評分表就是要或不要)
就我的經驗,
我會以
1是否符合職位需求
2有無在技術或經歷上誇大
3表達與溝通能力
4對解決問題的熱情
這幾個方向去設定問題,及評量應徵者的標準。
五.通知
最後是結果通知。
就我個人的經驗,不論錄取與否,我都會在
面試結束時,告知結果大約會在什麼時候之前以電子郵件通知。
審查結束之後先對錄取者以電話確定對方是否可以就職,確定後寄發錄取通知或Offer。
對不錄取的應徵者發出感謝函(雖然是表面功夫),其內容大致為
---------------------------------
X先生您好
感謝您撥冗前來面試YYY職位,此次前來應徵的面試者都非常優秀,
礙於部門預算有限,必須在其中選擇。
對於此職位不能與您合作,十分惋惜。
X先生的資料我們會留在資料庫中,
希望未來本ZZZ部門有其他地方能借重X先生的長才。
如有任何疑問請與KKK連絡。。。。
---------------------------------
其中注意每封感謝函都要獨立發出,最好不要用群組寄信,
X先生要依照對象改為O小姐。我認為是這是對應徵者的尊重。
其中內容並無說死,如果第一應徵者不能如願到職,
往後詢問其他應徵者也不傷雙方的顏面。
Fallout 3 中"可能"的愛情戲
本文同時發於PTT,巴哈姆特電子佈告欄
Fallout3是2008年一款XBOX360,PS3,PC跨平台十分優秀的RPG遊戲.
硬挑毛病就是同伴這塊.
Fallout3的同伴除了拿來扛裝備,然後送他去當肉盾送死.好像就沒有其他價值了.
以致於我還是比較喜歡獨立行動.
同伴?你就在入口處抽根菸把個風吧.
不過我想探討的是另一塊.就是比較親密的NPC互動.
也許是遊戲的其他部分已經很豐富了
也許是Bethesda恨透了灑狗血的愛情戲
Bethesda並沒有經營這一塊.
因此我覺得不能收集後宮(誤),實在很可惜.
註:站在男性的角度比較難收集男角玩偶.請有興趣的人自行補完
註:包含部份的遊戲劇情,以及不適合未成年的內容,有疑慮者請勿觀看.
主線攻略角色
青梅竹馬愛瑪達(Amata Almodovar) 難度◎◎◎
Vault 101的Overseer之女,從10歲的慶生會開始就對玩家很友善.
GOAT測驗之前,玩家可以幫忙驅散正在騷擾Amata的隧道之蛇幫.
老爸逃跑的時候來通知玩家快離開的也是她.
可惜不管玩家怎麼做,最後離開Vault 101的時候,Amata依然認為那才是她的家
本以為再也見不到這個青梅竹馬,
在荒野闖蕩了一陣子,回百萬鎮的時候竟然接到愛瑪達發出的求救訊號.及進門密碼.
果然還是思念玩家嘛,說盡好話才不費一彈解決Vault 101裡的難題.
竟然只收到好人卡一張:
"你必須離開,你在這只會破壞河蟹."
玩家可是在百萬鎮有一間樓中樓,各方豪傑都帶著我名片(追殺令)的大戶啊.
最惡行為:這妮子只是在利用你爬上Overseer的位子而已,你還在當好人,快醒醒!
當時離開Vault 101的時候就應該趁他被審問來個先X後X,再X再X.
回去解決難題的時候能拿多少好處就拿多少好處,
最好把Valut 101的人都殺光,留個空城給你校長兼摃鐘.
鐵之友指揮官莎拉里昂(Sarah Lyons) 難度◎◎◎
前往GNR電台找三狗的時候中途碰到穿著盔甲英姿煥發的這位指揮官.
雖然急切的詢問鐵之友裡面還有沒有掃地缺,最後還是被指揮官回絕了.
莎拉的身邊都是穿著盔甲的鐵之友士兵.要靠近他還真不容易.
在GNR途中不小心轟殺掉他.旁邊小兵竟然當做沒看到.
最後還自動會活過來.讓我不禁懷疑鐵之友這組織是不是練神功的.
總之.要把握被鐵之友委託後閑晃的空間多多了解這個冰山美人.
如果是走犧牲路線.最後闖進淨化計畫後.還得要選擇要犧牲玩家還是這可人兒.
不過既然遊戲一定會結束,不如雙雙殉情也應該是一個選擇才對.
最惡行為:讓莎拉偏離正義之道而入魔,也許是兩人都存活的方法.
但是莎拉能不能承受這個打擊.就要看玩家嘴砲的功力了.
熱衷科學研究的變態茉伊拉(Moira Brown) 難度◎◎◎
這變態以寫書為名,要玩家去試他變態的想法,我忍他很久了.
要玩家輻射中毒,踩地雷,自殘還只是小case.
拿藥水樹枝去打老鼠回來的時候跟他很認真的進行科學討論:
"效果不錯,你有沒有想過把子彈浸到藥水來進行人體實驗?"
"這真是太可怕的想法了~你怎麼會有這麼可怕的念頭呢~"
最可怕的就是你吧!!等一下.怎麼你嘴角在上揚.
要走進Moira的內心.當然要先以寫書的任務來成為他最忠實有用的研究助理.
慢慢的跟他討論為什麼Moira會有這個神聖的想法.是否之前的戀人死在荒野等等.
當荒野指南完成的時候兩人在慶祝之餘,一不小心兩眼相對.
Moira發覺有時科學研究的路會略嫌空虛寂寞.
而眼前的男人又這麼能契合自己的興趣….(?)
最惡行為:騙到手之後隔天把這充滿回憶的模麗亞補給站燒了,
當然要先搜刮他的研究設備.最後把模麗亞丟到魔力亞提沙龍店去工作.
風騷的酒店紅牌新星(Nova) 難度◎
Nova總是用挑逗的話術來跟客人調情,跟他聊深一點就會發現它其實也很想離開
魔力亞提沙龍(Moriarty’s Saloon),但是他似乎欠Moriarty一點錢.身世也很可憐.
付了120到樓上雅房休息,Nova就很直接的給你躺在床的另一邊.這是暗示什麼嗎?
最惡行為:跟Nova休息完把Gob叫進來再敲一筆.
支線攻略角色
流鶯小銀(Silver) 難度◎
酒店老闆Moriarty要你去幫他處理一個以前幫他工作的流鶯Silver.
到他家之後看要利用話術聽他傾訴老闆的種種惡行.還是用武力逼他重操舊業.
最惡行為:跟他拿了錢辦完事之後還是轉頭把他轟爆搜括他家.
蘿莉控專用:小燈國的公主(Princess) 難度◎
公主在小燈國的警長爭奪戰中飲恨輸給MacCready之後就心懷怨恨.
其實內心很害怕沒人喜歡他.
公主把守的區域是小燈國的後門.多去跟他聊天吧.
或許我們可以助他重返警長的寶座.
其他我沒培養感情所以寫不出來的角色:
冒險不歸路奪寶獵人席妮(Sydney)
碎碎念正義鐵之友星星直屬聖騎士克露絲(Cross)
Nuka-Cola俱樂部團長席拉(Sierra)
註:我實在沒辦法找到一個夠吸引我的ghoul跟mutant.
請具備另類審美觀的殭屍控跟獸人控自行補全.
給我麵包,創意無"現"
寫程式快寫到起肖,微軟在VS2003創造一個NET Framework,然後VS2005又說2003只是個實驗品,因此歡迎來到NET2.0。全部的code都得用managed方式來改寫,結果竟然不支援STL,自己搞了一個System::Collection的容器總類,這總類又不能吃非managed的類別物件。最後在VS2008終於打造出一個STL\CLR讓程式設計員可以在NET平台上,managed的程式碼中,使用STL。
anyway,在思考的間隔中,我終於想出為什麼易特力讓我在作研究之路如此困擾。最近所級進行了一個活動叫DR. I,希望大家以電子公布欄的方式,暢所欲言無限制的對一些日常問題及點子來做創意發想及討論。他的原意及最終結果我就不去詳述跟預測了。曾經有一個說法是:台灣的經濟成長是來自於當年的人認真的把事情作對,而現在台灣的產業人應該慢慢改變為做對的事(Do thing right , or do right thing )。打比方說,就是以前台塑集團的石化產業污染了很多地方,但是基本上它把賺錢這件事情做對了,現在則希望不僅要賺錢,還要選擇做相對正確的事。>
我曾經思考這個問題,那就是我們或是前人真的有把事情做對嗎?也許有人把事情做對了,因此創造出很多經濟奇蹟。但是之後的人就會承襲以往的榮光,也把事情做對嗎?在不確定我們能不能把事情作對的情況下,我們要往做對的事情移動嗎?做對事跟做事對的關係是A+B<1還是A+B<1+1?
回到易特力,我發現研究人員(最起碼我有這種想法)與創意之間產生了一個隔閡。公司會希望每個人的產出都是創意。但易特力的研究人員要讓一個發想成真,
a.會先跟同事初步討論同意這個發想的價值:恩,這技術上可行!!。
b.然後再跟計畫主持人討論:沒問題,我這裡會另外找人,你去追你的夢吧!!
c.然後去找部門主管或是院內所內組內的計畫:這裡有一筆錢給你好好幹!!!
d.找到一批能夠滿足a與b的一批人:讓我們航向未來的夢。
e.實現發想:解決技術問題。
我想不僅是易特力有這種情境,在其他公司情況一定更困難:技術人員為了實現發想或創意,必須花超過一半的時間與精力在處理”非技術的問題”=”人的問題”+”錢的問題”,當通通滿足條件了,而且技術人員的熱情還沒被磨滅的情況下,才有辦法在不確定的情況下實現一個新的創意(至少是沒人實現過的點子),在錢被抽走的期限之前。
而這個流程可見最大的疑問就是:
誰來決定這個創意發想值不值得我們投入人力工時(錢)?
通常是在上位的人,握有權力握有錢力的人。在這群人的角度來看,緊握銀根是一件重要的事情。這我絕對同意,因為這群人身負公司經營的成敗,身負數百到數千人的家計,這是他們的責任。不過我想知道的事情是,有多少有趣的創意,在這個流程中死亡了?亦或是連出生都來不及,就在技術人員的腦海中被遺腹了(畢竟技術人員還是要吃工時的,眼前的事情先作完才能保住工作啊)。
陳祖翰(CMU的教授)說過一段話大致上是:有很多先進的研究單位,如貝爾實驗室,做出很多有創意的研究,但是通常這些研究都是其中百分之十或是更少的員工做出來的,其他百分之九十的員工,大概上都是在作瑣碎重複支援型的工作。而所謂的先進的研究技術就充當招牌吸引著外面的莘莘學子進入這個單位:進入貝爾,就站在技術的尖端。
上位者的一言一行,甚至只用眼神,有時候就會改變公司的氣氛。一個領導者保守牌打久了,旗下的員工自然就會學會打保守牌。當這個氣氛一旦造成。這個組織幾乎就很難重生。任何行為,甚至思想都畏首畏尾,綁手綁腳。即便是新血進來,都會被慢慢同化。
Computer Graphics from my "humble" point of view
電腦圖學之我[淺]見
在正文開始之前,我必須先說明幾點。首先,就我的經歷跟視野,寫這篇標題也許尚早,如果十年後我還在這行的話有機會會再寫一遍。
第二是我的資歷。某退休總裁這樣描述他的一本著作:若不能在開頭就先說明我的下場,那這本書的其餘部分就無法取信於人。我研究所是學電腦圖學,當然起因是因為希望一個作出名滿天下的遊戲。不論這個願望最後發展是如何,進了這行,我還算認命。畢業之後目前是服國防役,在國內開出圖學這個規格的職位中因為種種因素找到了一個易特力這個作數位相機影像處理的部門(當時進公司我還不是很清楚他們為什麼開這個規格)。不知道幸運還是不幸的是,之後部門經過幾番改組,我還能繼續使用OpenGL這個工具,因此最近兩年能繼續發揮我的專業。
第三我並非自大,但也不會假裝自卑。我可以很自然的在賣英文學習書籍的推銷員面前說:我英文夠好了,我也曾經面對一位Walmart收銀員不知所措,而他只是要借我的護照一看。但我相信很多的事情都是相對的:我的程式能力(Programming)今年被小主管稱讚是部門屬一屬二時,我不會說您過獎了。但是事實上,如果在某幾位同學的面前,我不敢說自己會寫程式。我相信在金字塔的底層都有我可為的事,當老二有當老二的驕傲(誤)。
我在電子佈告欄PTT的遊戲設計版(GameDesign)回覆了一位正遲疑於選擇指導教授的準研究生的文章。他內心的疑問是否如此我無法知悉。但字面上的疑問是他猶豫於選擇一位電腦視覺或電腦圖學的指導教授。他的主要考量是工作好不好找。而我的回應簡而言之就是告訴他-現在在台灣-電腦視覺才是產業的需求。即使我後來思索我是否把一個優秀的人才從電腦圖學界推了出去。但只要命題沒改變,這題的答案我想是不會變。不過我會思量以我淺薄的智識,是否看的太少,了解太少?
很抱歉講了這麼多廢話,現在本文才剛開始,先用簡單的概念來描述Computer Graphics。與傳統圖學做分別,電腦圖學指的是一切有關3D的學問尤其是在電腦上運作的時候。受限於工具,傳統圖學在平面上創造出透視法讓我們看到平面時,能夠在腦海中組成立體的形狀。而數學中的圖論(Graph Theory)指的是概念上或結構上的元件組合在一起時產生交互各種作用的理論。(說起來很饒舌,但是如果你翻開圖論的教科書,看到那些示意圖的時候,即使不是很精準,大概會同意我的說法)。
我們也常常看到CG這個字眼,在藝術界指的是電腦製圖的結果,廣泛來說包含用Photoshop等製圖工具的作品,狹義來說是指用Maya等3D建模工具製作並利用該工具繪出來的作品(不管平面或是立體)。
電腦圖學所研究的學問就是建構於後者這樣的3D世界上,特別是離散的。(因為電腦是離散的,是0與1的組合。相反地數學所研究的圖學就可以是連續的,因為理論概念上我們可以理解連續的概念,但是電腦沒辦法)而最常拿來跟電腦圖學做類比的就是電腦視覺與影像處理這兩門學問-
題外話:我依然很困擾如何對人描述我的工作。最保守的說法,我可以說我是工程師,一個電腦(或資訊)工程師,特別是軟體的。比較精確的來說我是學電腦圖學的,比較擅長於modeling。
把這三個領域放在一起並非我首先這麼做的,台灣有個研討會就叫做CVGIP,全名是IPPR Conference on Computer Vision, Graphics, and Image Processing。而CMU的陳祖翰教授也認為這三個領域的研究者其實有很大成分都撈過界-意指這三個領域的之間界線其實很模糊。簡單來講影像處理(Image Processing)是機器人的視網膜,電腦視覺(Computer Vision)是機器人怎麼看這個世界,而電腦圖學是機器人怎麼把這個世界在它的腦海中具體出來。所以陳祖翰希望別人這樣描述:他是在視覺系統(Visual System)上做研究的一個教授。
視覺系統三大領域的工作機會
影像處理專門的人在台灣可以找到什麼樣的工作,主要是處理單張影像-數位相機與攝影機需要影像處理,列表機、顯示器跟投影機需要影像處理,更不用說影像編輯軟體,或是影片編輯工具(如訊連的威力導演,友立的繪聲繪影)。
電腦視覺的的人才主要出路是什麼,主要是有鏡頭的產品-監視器產業,自動機器產業,軍事與航太產業,圖資產業,工業管理。
而會開出電腦圖學這個規格的產業大致上跟娛樂脫不了關係-電腦遊戲與電影產業;顯示繪圖卡產業,如NVidia與ATI;3D建模動畫或電腦補助設計產業如作Maya與3DSMax的Autodesk公司,或是CAD這種軟體。科學視覺模擬、軍事教學模擬、虛擬實境。
我還沒有可以預測十年後的產業變動的這個眼界,但是台灣目前的產業大致上我們看的還是很清楚。台灣在硬體上需求比軟體高,顯示器,數位相機,手機零組件是台灣的重要產業,監視器鏡頭,機器人產業雖然不算十分優秀但是國人普遍認為這是個"有用"的產業,而且確實也有需求,所以也不乏投資。當然不能跟晶圓與IC設計產業來比。
但是如果說電腦圖學在台灣的相關產業,老實講我是十分絕望的。我們不會有需要高級特效的電影產業,我們現在沒有需要高深技術的電玩產業,國內自行研發的顯示卡公司已經收手不幹。所謂的科學模擬與軍事產業與教學模擬我們知道看起來會很炫,但不受到台灣民眾的重視(這跟民情有關),3D建模與動畫工具軟體只能惟幾家大公司馬首是瞻,不用期待美術人員會改變手上的工具。如果有人建議我們要國際化走出國外就能有工作機會,我會說連台南人都會先找南科離家近的公司了,學成出國找工作就是天方夜譚,更別說國外的競爭只會更激烈。
我不會在這邊怨天尤人,說政府不照顧娛樂產業。但點出現實目前的就業市場狀況就是如此。
視覺系統三大領域學習的難度
畢竟不是自己領域的東西,其實不太好拿出來分高下,但是就我自己的感覺來說,數學底子最深厚的是電腦視覺的論文(後述)。影像處理雖然也會有大量的數學,但是最多使用到頻率域跟Convolution,只要熟一次大概就可以讀通一半的論文,差別只在於複雜與否。電腦圖學的入門門檻反而是最低的。並非說電腦圖學不需要數學,而是你可以在不懂幾何學的狀況下作學問。(我想會叫非數學系的研究生去修數學系幾何學的教授應該不多吧)電腦圖學的數學入門門檻就是OpenGL的投影系統流程(比較精確的說是Graphics Pipeline),這套系統OpenGL也都幫你建好了,通常教授會花一學期把這個理論架構講解完,然後就把學生推到火線上了。大部分的學生學會用這套或是類似軟體後大概也可以應付絕大多數的圖學研究需求。大多數圖學研究就只是一套對應(Mapping)。從已知的、離散的3D世界對應到顯示器的平面,研究的內容就是看人怎麼在這個對應上變花樣。(有很大一部分的研究是在作如何用離散的架構來儲存對應前的資料-Modeling,另一部分的研究是把這套對應重複發生-Animation,最後一部份才是這套對應前後怎麼呈現才是正確、好看又有效率的研究-Rendering)
而電腦視覺我個人感覺就複雜的多,他的方向剛好跟圖學相反,從多張平面的圖片,反推出一個3D的架構。通常是多組未知的參數式一起對應到一個3D的空間。如果空間概念與投影熟晰度不足的學生如本人之流很容易被轉來轉去的參數化空間搞到頭昏腦脹。
電腦圖學在台灣的前景
雖然我已經說了,我無法說十年後電腦圖學會不會變的popular。但是因應遊戲電影產業的蓬勃發展,這十年來顯示卡或電腦圖學相關產業確實幫很多地球人賺了不少錢。若是說到台灣的電腦圖學產業的研究生畢業後有什麼希望。曾經有幾個議題被提出來:
一是Vista帶來電腦系統的3D化,因此個人電腦平台上的應用程式都會需要重新以3D的概念重作,台灣應用程式還算有需求不管是對客戶是一般消費者還是工程師。後來我發現Vista沒有帶來3D化,即便有微軟也如往常般的幫你把底層都架好了,你不懂圖學一點也沒有關係。反倒是Google與MS的競爭帶來了應用程式的Web化,兩家公司爭相發展Web平台應用程式的發展工具與架構。
二是台灣電腦遊戲產業的興起,說興起並非我對台灣遊戲產業的稱讚,只是這是某種事實。確實遊戲橘子與智冠網龍這兩家公司在財經報紙雜誌的見報率讓台灣的家長開始不排斥讓其子弟電腦遊戲產業工作,曾政承的世界冠軍也確實製造了不少話題,所謂打電動也能賺大錢是也。跟本人一樣因為想做遊戲而被騙進圖學的同志們一定不在少數。但是電腦圖學畢業的學生,扣掉教職學術界之外,真正投身遊戲界的似乎不多,或是說並沒有反應到台產遊戲產業的素質上,至少在台產遊戲的畫面上我們看不到電腦圖學的奧義。這有幾個可能,人力銀行的說法必定是:台灣遊戲產業認為學校畢業的學生質素不足,不能成為立即戰力。我想是的,因為早期的民情,以致於台灣還沒有人在教怎麼做電腦遊戲。所謂遊戲設計學系甚至研究所的興起也好像是這兩三年間發生的事情,當然,排名依然是遠遠在各校電機資工的後面。所以我們優秀的學子都跑去當醫生律師學著怎麼修電器了(誤),遊戲界當然吸不到人才。至於我對談灣遊戲產業的觀感都寫在之前的文章裡面,這裡就不再炒冷飯了。有幾個結論可以下,首先是台灣遊戲界因為前述的環境導致於徵才並非偏好本科系的人才。(此處的本科系狹義指的是電腦圖學,廣義指的是資工系),次之是遊戲製作與圖學之間依然有不小的差異,因為遊戲製作之中有好幾個部份包含美術,企劃,通訊,人工智慧,並非只有畫面顯示。因此在需求不足,供給又失調下,這議題我目前是認為沒有光明。不過未來的事情誰知道呢,也許一些新公司會帶來新氣象也說不定。
最後是還沒發生的行動電話顯示3D化-行動通訊的產品未來會跟桌上型電腦一樣走向3D的顯示。除了硬體的立體顯示器革新之外,軟體內容也會進步到3D。我個人認為這個走向是沒錯的,會發生的。但是我估計行動裝置上的3D顯示是一個已被解決的問題,所有的應用只是桌上型電腦的閹割版本,只是降規格到行動裝置上可以執行而已。既然是已經解決的問題,那麼工程師所做的事情就是重新把事情做一次。作這件事情的工程師被取代性過高。即便不是本科系的工程師也可以在網路上找到解法,差別只在於時間長短而已。
文末最後是個人的抒發,我認為一個工程師有兩層能力,一層是專業技術的能力,另一層是使用工具的能力。任何使用工具的專家都會擔心幾件事:工具的使用不過三道板斧,年輕人只會越來越容易超越自己,而工具會不斷更新,新人只會越來越有優勢。因此使用工具的能力當然也包含學習新工具的能力,這個能力競爭激烈的,除非不在第一線打仗了,否則工程師勢必逃不了這個戰場。相反的專業技術的能力就不似這樣。專業技術的更新比較沒有工具技術更新來的頻繁,大部份專業技術是循序漸進,自簡而繁,而且除非了解到一個程度,是沒辦法激發創意的。所謂的資深工程師的珍貴有時候會在於專業技術新舊進步下的融會貫通,當然,要這位工程師有與時並進才行。
我一直很質疑我自己這兩層能力到底比較喜歡發展或是受人借重的是哪一種,如果是後者那麼本人之所以還在這個位置上就是因為本部門只是缺少另一個電腦圖學的專家。因此有志於3D的工程師我相信我的主管會很歡迎你來取代我。畢竟在這一個艱苦的年代中,年輕學子總是有無止盡的熱情。但如果是因為前者的技術能力所以需要我,我卻真正憂心在台灣這個產業是不是往前走的太慢了。
What motivates programmers?
[譯]如何激勵程式設計師?
by Nick Halstead(2007/7/11)
http://blog.assembleron.com/2007/07/11/what-motivates-programmers/
在我上一篇文章"管理數學"(註)之後,我開始談另一個問題,假如你有400英鎊在部門預算中,你會A)全額獎勵你的高手程式設計師,還是B)買一個24吋解析度1920*1200的LCD電腦螢幕給他?
(註) http://blog.assembleron.com/2007/07/16/manager-mathematics/
假如答案是A)你最好往下讀,假如答案是B)我認為你已經懂得如何激勵你的程式設計師,但我建議你把這篇文章讀完後跟我討論你有什麼想法或建議。
其中一件不會教給非程式設計出身管理階層的事就是如何去激勵程式設計師。你可能會認為程式設計人員會被那些激勵其他員工相同的東西所鼓舞,但是完全不是這回事了。程式設計人員比較傾向被視為是一個高IQ的等級,因此不喜歡被質疑。
Tim Bryce(註)寫到:
不管他們希望扮演什麼角色,一般的程式設計人員並沒有比其他人更高的IQ,事實上有時候反而更低。
(註) http://blogs.ittoolbox.com/pm/irm/archives/theory-p-the-philosophy-of-managing-programmers-4993
這篇文章是給那些一點也不懂程式設計人員的人看的。尤其是想要知道如何管理程式設計人員,卻有著上面那個想法的人。
一般的程式設計人員可能投射一種比其他人優越的形象,但是非程式設計人員卻誤解了以為是在針對他們。事實上並非如此。你必須了解程式設計人員給自己打分數是拿其他程式設計人員作為基準,而非其他的同僚。
對於如何激勵程式設計人員這很重要。假如你買了一些新工具設備給你的業務員,你可能得不到任何回應。假如你買了新設備給你的程式設計人員他們可能會馬上開始觀察誰拿到那些新玩意兒,藉著獎勵的價值來衡量誰被看重的程度高多少。假如你認為這不重要,請三思。
工作環境的設備通常對一個程式設計人員比其他經濟上的獎勵(當然是一般額度內的)更重要。但是分配這些獎勵並非一件易事。
你可以單純地給每個人一樣好的工作環境與設備(假如你有足夠的預算的話)意思是每個人被標準化。事實上在一個部門環境中這從未發生,因為每個程式設計人員可能有不同需求的設備,但是如果沒有標準化的話。你就必須回到這個問題"誰拿到了什麼?"
硬體串
程式設計人員外在上試著給予一種印象,他們是一個[a loose nit bunch]完全不在意標準的商業流程,而且對常見的辦公室政治(那些誰是誰的小弟)絲毫沒有興趣。但是當新設備要發給員工的時候這些印象馬上拋於腦後。因為硬體設備是一個指標-"(抽象的)程式設計人員的長幼繼承"。
因此當更新員工新機器的時候,了解這個看不見的長幼繼承是非常重要的事情。我通常更新最優秀的員工的設備,然後將舊的設備依照順序往下遞移。雖然這可能導致很多軟體要重新安裝,但是每個人都換了(相對的)新機器。
問題的解決
程式設計人員的天職就是去解決問題:
假如你給一個程式設計人員一個工作是沒有問題要解決的,牠們會變的不高興。
解決問題的意思可能有很多,比較輕鬆的方式是去了解什麼是"沒有問題需要解決"的工作。譬如說叫一個程式設計人員去修理某項東西而其實修理方法已經知道了,意思是叫他們藉由重新看那些已經正常工作的程式碼來解決問題。
重點是把"沒有問題需要解決"的工作變成"有問題需要解決"的工作。一個很典型的例子就是"用手整理統計報告"變成"把報告依據日期透過某種自動化的系統整理好"
其他典型的"沒有問題需要解決"的工作:
.寫文件
.排行程
.寫報告
.客戶端的支援
沒有解決問題就沒有工作回饋是每個程式設計人員的天性,但有些人對於"沒有問題需要解決"的工作有較高的抗壓性。了解你的程式設計人員之中誰能應付那些"沒有問題需要解決"的工作對保持一個全面順暢的工作進度是重要的。
微控細節
假如你正在這樣做的話,希望你正走好運。前項提到的"解決問題"是一個最重要的核心,為什麼你不能嘗試對你的程式設計團隊事事插手。任何一個親手解決的問題意思就是那個問題沒有被程式設計人員解決。更糟糕的是你正在質疑你員工解決問題的能力。那是對程式設計人員最差的評價。
在任何有危機的情況下你的程式設計人員會變成一種比你更瘋狂的狀態,而且通常你第一個想要對事情有幫助的反應都是錯的。困難的部分是你需要給下屬一個你完全信任他能力的印象(不要試著直接去告訴他們他們的方法是錯的)然後放他們自己去解決問題。同時持續了解他們採取的方向直到危機被解決了。
開會
程式設計人員認為開會是浪費時間。大部分程式設計人員之間的溝通是透過e-mail或是直接跑到其他人的位子旁邊問清楚某件e-mail上的事。因此開會就與無聊劃上等號。這種不開心的情緒會隨著開會的時間變多。假如你真的需要把你的工作團隊拉進會議室開會的話,不是趕快開完就是給他們一些玩具(譬如說樂高)玩。
也許還有很多議題我可以在其他文章中討論,但是永遠記住:一個開心的程式設計人員才是一個有產出的程式設計人員。