這篇只是閒聊文 :P 我是一個 PC / Mac switcher,家裡有 PC 組裝桌機以及兩台 Mac,我不像某些使用者有很多五花八門的配備,比如說好的音響啦、耳機啦、不只一台的超大螢幕啦、多功能的昂貴鍵盤滑鼠啦、NAS 啦,記憶卡或 ATM 讀卡機啦,或是種種五花八門的 USB 小玩意 [1]。
這篇文章裡我想提一下我使用的兩個便宜又泛用的小玩意。
1. 多功能讀卡機 + 隨身碟
讀卡機百百種,我一直不願意買是因為我覺得讀卡機很醜,體積不小,還要牽一條線出來,又不是外接硬碟,搞這麼複雜幹嘛 ? 直到我看到我朋友買了一個跟隨身碟沒兩樣的讀卡機,才整個讓我改觀,該週末就去光華商場買了一支類似的產品回來,我找到的是下圖這個 :
很不錯吧,支援多種記憶卡,價格非常便宜,印象中是兩三百塊,使用到現在一兩年了還是非常滿意。現在越來越多類似的產品,價格更低,甚至一百塊有找,不過只能支援 SD 卡,我的 Sony 相機用 MS 卡,所以還是用 Rowa 這種多功能的比較好,反正沒貴多少。
2. 噴霧罐電腦清潔器
這是我在實驗室看到的,因為老闆要省錢所以用這個,讓我想到我的組裝桌機很久沒清灰塵了,風扇噪音越來越大,想當初我的桌機可是噪音很小的。打定主意後又跑光華去買了一罐,非常好買,隨便找一家堆滿電腦配件的店就有,而且很便宜,我花了 199 吧,大約像下圖 :
牌子是 Wind,其實看起來蠻像殺蟲劑的 XD 裡面是液化的高壓氣體,噴出來有一點臭 [2],建議邊開窗邊開電扇使用。噴的時候由於氣體吸熱氣化,會讓瓶子變得冰冰的,是正常現象。我把機殼內的風扇吹一吹,現在噪音小很多,相當推薦這類產品。不要再省錢用紙或布去擦了,浪費時間又效果不好,花個兩百塊可以用很久,甚至也能清別的東西,何樂而不為 ?
附註
1. OK.... 我知道 accessory 這個字不應該亂用,比如說螢幕、鍵盤、滑鼠都應該稱為 peripheral 才對,只是這裡把這些東西都比喻成額外的配備,沒有也不影響基本的使用,所以用 accessory 這個字。
2. 這類噴霧劑都會加入一些苦劑,這是安全措施,避免有小白亂噴在身上或嘴裡。
2010年5月30日 星期日
2010年5月29日 星期六
物理化學 (光譜) 組的未來
昨天從 YMC Lab 離職之後 [1],開始要為下一步做打算,我目前申請的工作八月才起聘,如果錄取了,勢必有兩個月的空檔;但若沒錄取,我也不打算再待在學校,直接進入業界。
現在的重點是,去業界要找什麼工作 ? 一般人對於化學系畢業的人,大多會說 "阿~ 你可以去化妝品公司阿!"、"化工廠還不錯阿,傳統產業很安定!" 或 "可以去當化驗師阿,好像很厲害".....等等。我想說的是,上述的工作我通通不能做 [2]。
為什麼? 原因在於我的研究領域,化工廠裡的那些工作,要求的是合成的能力;化驗師檢測師之類的工作,要求的是操作很多種不同的分析儀器的經驗及能力,以上是有機、無機、生化、分析化學組的人的專長,物化組的人根本插不上邊。
我來說一下物化組是怎麼樣的一個組,其實物化組又分成幾組,一是材料化學組、二是計算化學組、三就是光譜實驗組,當然以上的名稱是我隨便取的,並沒有實際這樣分,可是領域差很多,不太可能跨組,頂多是合作,但那沒有多大作用,理論跟實作是差很多的。
材料化學組其實跟有機無機蠻類似,基本上也是在合成,只是他們必須懂更多材料的性質,修的課也會偏材料系一點,雖然是少很多;計算化學組是完全在電腦上跑計算程式的一組,有些實驗室會偏向開發新的理論,但有些是偏向使用已知的軟體工具來算不同的分子系統。他們一般來說都會學習 Unix-like 的 Shell Script 的寫法,因為遠端的電腦 cluster 都是架在 Unix-like 系統上面。如果是偏理論的實驗室甚至要求學生及研究員能自己開發新程式,以應付新理論的計算工作;光譜實驗組主要是跟雷射打交道,利用雷射光源照射在分子上,觀察時間解析或頻率解析的光譜,至於怎麼訓練就是看該實驗室的慣例,因為會差很多。以我的實驗室來說,學生必須要會自己架設一套光譜系統,不管是不是無中生有,總之一定要會這種技術,不是只會使用商業儀器測光譜而已。下圖是我從無到有架設的光學系統 :
之後利用程式控制儀器偵測光譜。由於實驗有失敗的風險 (如果你是該實驗室做的新實驗的 pioneer,失敗一年都是很常見的事),因此也不見得會學程式 [3],重點還是放在實驗及內部的化學原理,光譜組在某些部分跟計算化學組類似,就是我們都沒有生產力,只是對於已知的系統,研究內部的原理,包含隨時間變化的關係,或是分子內部的轉動振動等等的定性定量分析。也因此為了研究需要,必須要修量子化學、動力學等等的課 [4],光學的基本知識也要有,另外也要會處理一些基本的電子電路或冷卻系統的管線 (這是為了保養雷射),如果是像我這種曾經想走學術界的人,還可能去外系修其他關於光學、量子的課。
看出癥結在哪裡了嗎? 就是光譜組的人頂著化學系學生的名號,卻一點都不像化學系的學生,化學系的強項我們都不行,不會合成、不會操作 NMR、不會操作 SEM、不會操作 Mass [5],計算化學組的好歹會寫程式,我們也不會 [6]。你要跟 interviewer 說 "我會看光譜" 或 "我量化很強" 這種鬼話嗎? 上司頂多回一句 "喔? Sowhat?" 然後就下一位了,誰管你是不是台清交。去找光學儀器的工作 ? 很好,你贏得了物理系或光電所的人嗎 ? 這時候你以前另外學的化學底子完全沒有用。我個人還是想找這方面的工作,畢竟我只會這個,而且我自認我比同樣光譜實驗室出來的人強一些,但還沒試過不知道結果如何。
我寫這篇文章的用意是,勸想進光譜實驗室的化學系學生,除非你要走學術界,不然不要去 ! 不然你就等著做跟所學無關的工作,比如說台積電爆肝工程師,根本只要求你是化學系畢業就可以,那你以前修量化測光譜搞到天亮是為了什麼 ? [7] 或是考公職,那你大學畢業就可以去考了,多浪費兩年幹嘛 ?
沒錯,一般進到光譜實驗室的人,除了要混文憑的,大多是化學系裡程度比較好的人,因為實驗及修課的內容都比較難,一天到晚面對不知道哪裡出現的問題又要自己 debug,跟那些管線或扳手打交道簡直又像水電工 .... 但我現在回頭一想,我是學到很多沒錯,但那是不是我的自我滿足 ? 如果再讓我選一次,我還是會選同樣的實驗室,因為這是我的興趣,但是我不會再選擇去 YMC suck Lab 當助理浪費時間,而且我會趁年輕時多玩一些,不要那麼辛苦,因為我極度有可能沒辦法用我的所學去養活我自己。
這篇的確很對不起我在清大的老闆 PYC,我認為沒有更好的老闆了,但是我看了幾個相關實驗室的學長的 "下場",除了走學術界之外幾乎都是作完全無關的工作,而且還不是很好找。加上我進入 YMC Lab 之後沒發生過好事,有感而發,如果不認同我的看法也沒關係,這篇只是提供我個人的經驗而已。
附註
1. 我真的沒辦法忍受這個老頭,反正薪水也很低,我的朋友聽到碩士級 RA 居然只有兩萬多的月薪都說離職也無仿,何況學不到東西又很難相處,還沒見過這種實驗室,YMC 這老頭只是想招聽話的技工而已,根本不該招研究人員。
2. 當然啦,要去應徵還是可能會錄取,只是幾乎全部都要重學,會比其他人辛苦。
3. 如果是要待很久的博班學生就沒得挑,一定要學,碩班只會待兩年左右,第一年還得修課,時間太趕了,況且連光學系統的架設跟樣品的製備都不見得順利。
4. 話雖這樣說,可是還是有人不修這些課,也糊里糊塗地畢業了。
5. TOF (Time Of Flight) 那個只是 Mass 的一小部分,大部分配合雷射,去沒雷射的地方誰在跟你用這個 .....
6. 不要告訴我 LabVIEW,那種程式語言效率之低,介面又很醜,我實在不想拿這種東西給客戶,即使很多實驗室的客戶不在意。
7. 好啦....我承認這有些是我自己造成的 = = 老闆並沒有這樣操我 .....
現在的重點是,去業界要找什麼工作 ? 一般人對於化學系畢業的人,大多會說 "阿~ 你可以去化妝品公司阿!"、"化工廠還不錯阿,傳統產業很安定!" 或 "可以去當化驗師阿,好像很厲害".....等等。我想說的是,上述的工作我通通不能做 [2]。
為什麼? 原因在於我的研究領域,化工廠裡的那些工作,要求的是合成的能力;化驗師檢測師之類的工作,要求的是操作很多種不同的分析儀器的經驗及能力,以上是有機、無機、生化、分析化學組的人的專長,物化組的人根本插不上邊。
我來說一下物化組是怎麼樣的一個組,其實物化組又分成幾組,一是材料化學組、二是計算化學組、三就是光譜實驗組,當然以上的名稱是我隨便取的,並沒有實際這樣分,可是領域差很多,不太可能跨組,頂多是合作,但那沒有多大作用,理論跟實作是差很多的。
材料化學組其實跟有機無機蠻類似,基本上也是在合成,只是他們必須懂更多材料的性質,修的課也會偏材料系一點,雖然是少很多;計算化學組是完全在電腦上跑計算程式的一組,有些實驗室會偏向開發新的理論,但有些是偏向使用已知的軟體工具來算不同的分子系統。他們一般來說都會學習 Unix-like 的 Shell Script 的寫法,因為遠端的電腦 cluster 都是架在 Unix-like 系統上面。如果是偏理論的實驗室甚至要求學生及研究員能自己開發新程式,以應付新理論的計算工作;光譜實驗組主要是跟雷射打交道,利用雷射光源照射在分子上,觀察時間解析或頻率解析的光譜,至於怎麼訓練就是看該實驗室的慣例,因為會差很多。以我的實驗室來說,學生必須要會自己架設一套光譜系統,不管是不是無中生有,總之一定要會這種技術,不是只會使用商業儀器測光譜而已。下圖是我從無到有架設的光學系統 :
之後利用程式控制儀器偵測光譜。由於實驗有失敗的風險 (如果你是該實驗室做的新實驗的 pioneer,失敗一年都是很常見的事),因此也不見得會學程式 [3],重點還是放在實驗及內部的化學原理,光譜組在某些部分跟計算化學組類似,就是我們都沒有生產力,只是對於已知的系統,研究內部的原理,包含隨時間變化的關係,或是分子內部的轉動振動等等的定性定量分析。也因此為了研究需要,必須要修量子化學、動力學等等的課 [4],光學的基本知識也要有,另外也要會處理一些基本的電子電路或冷卻系統的管線 (這是為了保養雷射),如果是像我這種曾經想走學術界的人,還可能去外系修其他關於光學、量子的課。
看出癥結在哪裡了嗎? 就是光譜組的人頂著化學系學生的名號,卻一點都不像化學系的學生,化學系的強項我們都不行,不會合成、不會操作 NMR、不會操作 SEM、不會操作 Mass [5],計算化學組的好歹會寫程式,我們也不會 [6]。你要跟 interviewer 說 "我會看光譜" 或 "我量化很強" 這種鬼話嗎? 上司頂多回一句 "喔? Sowhat?" 然後就下一位了,誰管你是不是台清交。去找光學儀器的工作 ? 很好,你贏得了物理系或光電所的人嗎 ? 這時候你以前另外學的化學底子完全沒有用。我個人還是想找這方面的工作,畢竟我只會這個,而且我自認我比同樣光譜實驗室出來的人強一些,但還沒試過不知道結果如何。
我寫這篇文章的用意是,勸想進光譜實驗室的化學系學生,除非你要走學術界,不然不要去 ! 不然你就等著做跟所學無關的工作,比如說台積電爆肝工程師,根本只要求你是化學系畢業就可以,那你以前修量化測光譜搞到天亮是為了什麼 ? [7] 或是考公職,那你大學畢業就可以去考了,多浪費兩年幹嘛 ?
沒錯,一般進到光譜實驗室的人,除了要混文憑的,大多是化學系裡程度比較好的人,因為實驗及修課的內容都比較難,一天到晚面對不知道哪裡出現的問題又要自己 debug,跟那些管線或扳手打交道簡直又像水電工 .... 但我現在回頭一想,我是學到很多沒錯,但那是不是我的自我滿足 ? 如果再讓我選一次,我還是會選同樣的實驗室,因為這是我的興趣,但是我不會再選擇去 YMC suck Lab 當助理浪費時間,而且我會趁年輕時多玩一些,不要那麼辛苦,因為我極度有可能沒辦法用我的所學去養活我自己。
這篇的確很對不起我在清大的老闆 PYC,我認為沒有更好的老闆了,但是我看了幾個相關實驗室的學長的 "下場",除了走學術界之外幾乎都是作完全無關的工作,而且還不是很好找。加上我進入 YMC Lab 之後沒發生過好事,有感而發,如果不認同我的看法也沒關係,這篇只是提供我個人的經驗而已。
附註
1. 我真的沒辦法忍受這個老頭,反正薪水也很低,我的朋友聽到碩士級 RA 居然只有兩萬多的月薪都說離職也無仿,何況學不到東西又很難相處,還沒見過這種實驗室,YMC 這老頭只是想招聽話的技工而已,根本不該招研究人員。
2. 當然啦,要去應徵還是可能會錄取,只是幾乎全部都要重學,會比其他人辛苦。
3. 如果是要待很久的博班學生就沒得挑,一定要學,碩班只會待兩年左右,第一年還得修課,時間太趕了,況且連光學系統的架設跟樣品的製備都不見得順利。
4. 話雖這樣說,可是還是有人不修這些課,也糊里糊塗地畢業了。
5. TOF (Time Of Flight) 那個只是 Mass 的一小部分,大部分配合雷射,去沒雷射的地方誰在跟你用這個 .....
6. 不要告訴我 LabVIEW,那種程式語言效率之低,介面又很醜,我實在不想拿這種東西給客戶,即使很多實驗室的客戶不在意。
7. 好啦....我承認這有些是我自己造成的 = = 老闆並沒有這樣操我 .....
2010年5月22日 星期六
MacTalks -- Apple 日報
MacTalks http://funtalks.com/mac/
這是一個非常有趣的網站 :P 我忘記我在何時發現它的,它其實不是一個單一作者群的網誌,而是採用聯播的方式,將有參與聯播的網誌的新文章公佈出來,所以每天都有不同的新內容,因為這麼多聯播的網誌裡,總會有作者寫新文章吧 ? [1] 也因為這樣的特性,它就像每天的 Mac 報紙一樣,但又不像 RSS,要自己去該網頁訂閱,而且追著你跑 [2],報紙想幾天沒看都沒差,我比較喜歡這種輕鬆的感覺。
我曾經有想過要不要把自己的網誌也去申請聯播,但是後來想說 .... 這個網誌的文章也不是全部都跟 Mac 有關,而且只有週末有新文章,更新速度有點慢 .... 所以還是不要去丟人現眼好了 XD
在此要感謝每天不辭辛勞寫新聞文章的網誌作者,多虧你們我才能方便取得最新的科技資訊。
附註
1. MacTalks 跟 Frosty (老地方冰果室) 有很大的差異,老地方冰果室的新聞文章來源非常單純,而且會把所有文章保留,所以你可以翻到一週之前的新聞,但是 MacTalks 僅僅會保留該網頁一頁的量,真的就像一份報紙。
2. 事實上我就是討厭這種無形的壓力,所以才不用 RSS 的,寧可自己連上該網頁去看。
2010年5月16日 星期日
用 Xcode 編譯程式的幾個基本要點
由於事情很多,沒什麼時間花在 debug 上面,拖了一兩個月,才總算把之前寫的 Energy Converter 修好 (事實上才開 Xcode 不到三次吧...),中間出現一大堆靈異現象,一些最基礎的問題反而在網路上找不到解法。修好 Energy Converter 非常重要,因為那是我第一個用 Xcode 編譯的 GUI 程式,這個起頭若沒有做好,以後不管寫什麼都沒有用,在別人的電腦不能執行的程式根本就是沒有意義的垃圾。
一開始是我的另一台 PPC G4 Mac mini 的 Xcode 有問題,不管是多簡單的程式,怎麼編譯都會失敗;再來就是我用 Intel MacBook 編譯的程式到了別台 Mac 上居然會 crash.. 我很晚才發現這件事,所以我才後知後覺地拖了很久才在 Energy Converter 的主頁上放上 "注意 ! 內有 Bug 尚未修復 !!" 的字樣。這篇文章就是要講一些在打包程式時要注意的瑣事,因為教學的書或網路文章幾乎不會寫這個,大多是把焦點放在程式碼的撰寫或圖形介面的美化,但是這一步失敗,你的作品也是發表不出去。我不清楚 Apple 官方的開發者文件有沒有把這些寫清楚,可是我沒有時間看了,所以依照個人經驗在網路上留個底吧。
先從第一點來好了,我在 mini 上編譯程式從來沒有成功過,每次都出現以下的錯誤訊息 :
看起來是 WebKit 的問題 .... 有趣的是,我看不出我的程式哪裡跟 WebKit 有關,或是這麼說吧,最好是我的功力有辦法寫網路相關的程式啦 ! Xcode 是在玩什麼把戲 ? 網路上完全找不到解法,有人問一樣的,可是沒人回答。我去 PTT 上尋求高手解答,得到的只是把 WebKit.framework 加進去,當然是沒有用,所以現在我 mini 上的 Xcode 完全葛屁了,我已經放棄去修它了,反正 Script Editor 還能用,而且這台老 mini 還有別的用途。
第二點就是軟體包裝的問題,Mac 上的程式比 Win 的程式麻煩的地方在於,Mac 曾經換過 CPU 心臟,也就是 PowerPC -> Intel,而兩者的程式當然不能共用 (先不提 Rosetta 技術),也因此 Apple 提出 "Universal Binary" (簡稱 UB) 的概念,也就是在一個程式內包含兩種 CPU 所需的程式碼,以應付這個過渡時期。但是 Xcode 預設是將程式編譯成該 Mac 上 CPU 的應用程式,而不是 UB 程式,所以要手動修改一下,點選左側 Groups & Files 裡的 Project 選項,然後按下 Info :
選擇第一個選項 "Architectures" 並點選 "Edit" 即可勾選你的程式要支援的 CPU。
第三點是程式內部的任何檔案,比如說圖片檔、音效檔,甚至是圖示檔,都一定要複製到 Resource 類別裡,不然這個程式在別的電腦上都抓不到這些附屬的檔案。一般的圖片檔放到 Resource 裡之後,會被貼到程式的視窗中,或是用程式碼讀取載入,應該是不會有人弄錯 (應該啦),但是圖示檔要貼到哪去呢 ? 答案是在 Target 類別下的程式 *.app 裡,點選它並按下 Info,就可得到下面的示範圖 :
將 Resource 裡的圖示檔拖拉到 Icon File 的欄位裡即可,這樣編譯出來的程式就會直接有自定的圖示。
最後是 ZeroLink 的問題,一般的 GUI 程式都會連接很多不同的 library 或 framework,那些東西很多是作業系統提供的,程式執行時再去抓取所需的資源來用,而 ZeroLink 就是去除這個步驟,把要連結的資源都包在程式裡,理論上執行會比較快。但是相對地,如果少包了什麼東西,就會發生程式不能在其他電腦跑的窘境。之前的 Energy Converter 就是發生這種事情,下面是 crash report 的截圖 :
好像是少了一個圖檔,然後 ZeroLink 的步驟炸掉。所以我才意識到要把圖示檔加進去,可是還是 crash ... 於是我使用一個消極的方法 -- 不要用 ZeroLink 不就好了 ? 在工具列上的 Build 選單裡選擇 Build Result,會看到 "Active Build Configuration",預設是 "Debug",這是有使用 ZeroLink 的編譯型態,要關掉這種討厭的東西,就用下拉式選單選 "Release" 即可 :
於是編譯出來的程式 app 檔不再存在於 Build/Debug 的資料夾裡,而是 Build/Release 裡,兩個 App 檔看起來都一樣,可是 Release 的 App 測試起來就沒問題。我不清楚其他用 Xcode 編譯程式的人是怎麼把軟體打包起來的,這只是我的經驗,經過這段痛苦的過程,也是學到了一些東西,希望這篇文章能給遇到同樣問題的初學者一點幫助。
2010年5月15日 星期六
iWork 09 檔案 v.s. 內建封存工具
這是最近才發現的一個有趣現象。由於我碩士畢業已經將近兩年,很久沒有使用 iWork 去寫正式的文件 (當助理的日子裡在實驗室用 M$ Office 寫那些很醜的文件就先不提了)。最近自己在進行一個 project,為了該 project 的需要,再次開啟 iWork 09 的 Pages 來用 (話說我升級之後,只使用過 Keynote 畫圖,Pages 跟 Numbers 完全沒動過 ....)。
應該很多人知道 iWork 的檔案其實是一個檔案夾,從右鍵選單就可以看得出來:

那個 "顯示套件內容",簡直讓 iWork 文件檔看起來像一個 Bundle 應用程式一樣,在 Windows 下看就是一個資料夾。事實上,如果有使用過 Xcode 寫 "Document-based" 程式 (意指這種程式可產生出一種自製的文件檔案) 的人,應該會知道製作出來的文件,在 Cocoa Framework 下根本就跟應用程式一樣,呈現出來給使用者看的介面也是由 Interface Builder 做的,如下圖:

但是 iWork 09 開始,情況大有不同,如下圖:

應該很多人知道 iWork 的檔案其實是一個檔案夾,從右鍵選單就可以看得出來:

那個 "顯示套件內容",簡直讓 iWork 文件檔看起來像一個 Bundle 應用程式一樣,在 Windows 下看就是一個資料夾。事實上,如果有使用過 Xcode 寫 "Document-based" 程式 (意指這種程式可產生出一種自製的文件檔案) 的人,應該會知道製作出來的文件,在 Cocoa Framework 下根本就跟應用程式一樣,呈現出來給使用者看的介面也是由 Interface Builder 做的,如下圖:

但是 iWork 09 開始,情況大有不同,如下圖:

可以看出 iWork 09 的檔案已經不再是資料夾,而是一個單一檔案。這樣的好處是當你要上傳至 FTP 或網路硬碟的時候,可以直接整個檔案上傳,避免有些伺服器或客戶端軟體只把這類檔案當成資料夾,上傳時把檔案拆開來上傳,爛掉的機率就很高。想當然爾,09 的檔案是不能被 08 以前的 iWork 打開的,不過這並不代表 Apple 改寫了整個檔案的內部,其實它們只是幫使用者做個打包的動作而已,就像我以前都會把 iWork 08 的檔案封裝成 zip 檔再攜帶是一樣的。
有趣的事情就在這裡發生了,當我把 iWork 09 的檔案打包成 zip 檔之後,使用系統內建的解壓縮工具去開,它很 "自動地" 把 iWork 09 的檔案也一起拆了,變成資料夾。 = =
這是怎麼回事呢 ? 這是因為系統內建的 BOMArchiveHelper 有一個特性,就是它會持續解壓縮解到它不支援的文件格式才停止。比如說解壓縮 test.txt.zip.zip.zip,它會直接解壓縮三次,到 test.txt 才停止,平常是很好用,可是在這種時候就顯得多管閒事。不過值得高興的是,在 10.5 之後,BOMArchiveHelper 改名成 "封存工具程式",而且修正這個功能了。
要怎麼解決這個問題呢 ? 其實很簡單,改用別的解壓縮軟體即可,我推薦支援格式最多的 The Unarchiver。
訂閱:
文章 (Atom)










